Rez*_*zen 1 javascript html5 canvas
对于这种复杂性/简单性的图像,创建png并导入画布或绘制路径并填充画布是否更好?
http://www.freeiconsdownload.com/site-images/Large/developer_icons_452x336.jpg
对于Canvas,一般来说,从PNG /内存中画布绘制几乎总是比构造和绘制路径更好.(见脚注)这是一些简单的数据.我们这里说的是10倍.对于简单的东西.
特别是如果你要反复绘制这些物体,每秒60次.
而且特别是当文本参与.
使用复杂的画布生成的形状,一些有表现意识的人已经开始在内存画布上预渲染它们,然后从画布绘制到画布(使用drawImage),而不是每次都重新创建路径.在很多情况下这是值得的,但当然没有什么能比你自己的特定情况更好地分析和计时.
不要偏离正轨,但我想提醒你,在你(几乎)完成你的Canvas应用程序之前,你可能不应该担心这类事情.
"我们应该忘记小的效率,大约97%的时间说:过早的优化是所有邪恶的根源"-Knuth
需要注意的一点很重要的是,对于很多应用程序来说,绘制这些按钮的性能可能都不重要(或者没有任何实质性的区别),你可能甚至不想担心哪种方式更快,直到你已经完成您的Canvas应用程序的第一次迭代,正在进行"抛光,抛光,抛光"更新.
有些人可能想知道什么时候渲染路径更好,对大多数人来说可能是显而易见的,但如果不是,我会提及它.有时会出现路径渲染即时情况:交互式路径,例如绘制程序和从路径生成的动画,其中下一帧不是另一个静止图像,而是路径的添加.这些以及更多 - 您希望用每个帧更新路径本身的任何地方 - 是您想要保留路径而不是尝试预渲染任何内容的地方.