我是html5的新手并试图掌握基本面。
我想知道一旦画了一条线(比如黑色),我是否可以得到一个指针"使用画布的上下文到该行,然后更新该行的颜色?这个操作在html5土地上有意义吗?或者我是否必须使用新颜色在完全相同的位置重绘新线?
谢谢!
答案 0 :(得分:1)
无法重绘您的线条,因为画布/上下文不会记住"它画了你的线。
常见的设计模式是"记住" javascript对象中的行:
var myLine={x0:10,y1:20,x1:100,y1:50};
然后,您可以使用新颜色重新绘制记住的行:
context.strokeStyle=myNewColor;
context.beginPath();
context.moveTo(myLine.x0,myLine.y0);
context.lineTo(myLine.x1,myLine.y1);
context.stroke();
另一个可能的故障。
Canvas将自动对其所有路径图进行反锯齿。这意味着画布可能会在第一行添加抗锯齿像素,即使您覆盖第一行也会保留这些像素。
画布图纸的常见设计模式是“记住”#34;所有图纸然后完全擦除&将所有记住的对象重绘为画布。
一个有用的新功能正被添加到Html Canvas ...
在不久的将来版本的canvas中,将会有一个内置于上下文中的Path Object,它将记住"路径对象。