主题说明了一切:你能否将负数传递给HMTL5画布中的绘图基元?
例如,如果我翻译为(100,100),我可以使用坐标(-25,-25)绘制矩形或线条吗?使用lineTo进行简单测试表明没有,但没有错误结果。
答案 0 :(得分:1)
您可以传递负值。唯一会发生的事情是画布'位图外的图形将被剪裁。
翻译画布会移动其原点(0,0)。如果您例如向右和向下翻译并且想要向左和向上绘制(假设没有应用旋转),则 使用负值。
ctx.translate(100, 100);
ctx.beginPath();
ctx.moveTo(-100, -100);
ctx.lineTo(0, 0);
ctx.stroke();
从左上角画一条线到100,100。
<强> Online demo 强>