http://www.w3schools.com/tags/canvas_settransform.asp
context.setTransform(a,b,c,d,e,f);
W3C学校说"Skew the the drawings horizontally"
,但它使用哪个值?
似乎它不像 CSS skews 东西的度数,也没有使用 PI。解释?
http://www.w3schools.com/tags/canvas_settransform.asp
context.setTransform(a,b,c,d,e,f);
W3C学校说"Skew the the drawings horizontally"
,但它使用哪个值?
似乎它不像 CSS skews 东西的度数,也没有使用 PI。解释?
在您的示例变换中, b & c 将分别代表水平和垂直偏斜。
变换矩阵排列如下:
context.setTransform(scaleX, skewX, skewY, scaleY, translateX, translateY);
倾斜量是以弧度表示的切线角度。
所以这将水平倾斜 30 度:
var tan30degrees=Math.tan( 30*Math.PI/180 );
ctx.save();
ctx.setTransform(1,tan30degrees,0,1,0,0);
ctx.fillRect(100,100,50,50);
ctx.restore();
变换矩阵——一组九个数字,用于使用线性代数变换二维数组,例如位图。矩阵的最后一组总是 0 0 1 所以它需要六个不同的参数
请看看这个