计算在画布边界外绘制的区域

时间:2016-06-07 23:12:29

标签: html5 canvas html5-canvas

假设我有一个画布对象,每个画布对象的设置宽度和高度都是400,我在画布对象的边界之外绘制它的2d上下文。有没有办法计算在画布边界之外绘制的任何东西的大小?

示例说明:

enter image description here

1 个答案:

答案 0 :(得分:0)

所有地区的边界区域

计算所有矩形的极值:

var currentLeftmostX=10000000;
var currentTopmostY=10000000;
var currentRightmostX=-10000000;
var currentBottommostY=-10000000;

// do this for each rect
if( rect.x < currentLeftmostX) {currentLeftmostX=rect.x;}
if( rect.y < currentTopmostY) {currentTopmostY=rect.y;}
if( rect.x+rect.width > currentRightmostX) {currentRightmostX=rect.x;}
if( rect.y+rect.height > currentBottommostY){currentBottommostY=rect.y;}

var boundingArea=
    (currentRightmostX-currentLeftmostX)*(currentBottommostY - currentBottommostY);