我只想显示画布上绘制的一部分形状.我的基本上是这个,它工作正常:
ctx.fillRect( xPosition, rectHeight - offsetV , rectWidth, rectHeight);
Run Code Online (Sandbox Code Playgroud)
第二个变量将是负面的.所以,我的问题是:是不是很糟糕的做法(或者我是在设置自己的错误)来画一条从画布开始的路径(带负坐标),然后继续绘制到画布上.
完全没问题。如果你有大量的绘制对象,你可以(就像 GameAlchemist 所说的)阻止绘制该对象。如果你使用像地图这样的画布进行探索(缩小/放大 ctx,平移整个上下文),那么阻止绘制的成本可能会比剪辑成本更高。而且其复杂性...
我在画布上绘制对象时有些过期。如果您将计算和其他(无绘图)人员引入绘图功能,您可能会遇到问题。
重要的 :
- 明确canvas绘制函数代码(仅绘制canvas代码)。
-如果您的应用程序不需要常量更新,则仅在需要时才进行更新调用。
-仅在(0,0,canvas.w,canvas.h)中清除画布
-仅在需要时使用样式(描边、填充、字体等)