将负数传递给lineTo / strokeRect / fillRect

时间:2014-01-22 21:20:55

标签: javascript html5 canvas

主题说明了一切:你能否将负数传递给HMTL5画布中的绘图基元?

例如,如果我翻译为(100,100),我可以使用坐标(-25,-25)绘制矩形或线条吗?使用lineTo进行简单测试表明没有,但没有错误结果。

1 个答案:

答案 0 :(得分:1)

您可以传递负值。唯一会发生的事情是画布'位图外的图形将被剪裁。

翻译画布会移动其原点(0,0)。如果您例如向右和向下翻译并且想要向左和向上绘制(假设没有应用旋转),则 使用负值。

ctx.translate(100, 100);
ctx.beginPath();
ctx.moveTo(-100, -100);
ctx.lineTo(0, 0);
ctx.stroke();

从左上角画一条线到100,100。

<强> Online demo