本節書摘來自異步社群《javascript高效圖形程式設計(修訂版)》一書中的第6章,第6.10節,作者:【美】raffaele cecco著,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視
在第2章中,我們開發了dhtml sprite動畫系統,并用它建立了各種圖形示範。在第5章中,我們用這個系統制作了一個dhtml視訊遊戲。我們盡量将繪制sprites的細節“隐藏”在dhtmlsprite對象中,使得應用程式可以很容易實作和使用一個不同的sprite系統。現在我們将在示範中使用一個新的canvassprite對象,它利用了性能更強的畫布元素。
6.10.1 新canvassprite對象
canvassprite是dhtmlsprite對象的一個直接替換。除了加了一個畫布環境參數(ctx)外,params對象的所有參數都和以前一樣被傳入:

警告:
注意我們使用移位運算符(x>>0,y>>0)確定渲染位置為整數。firefox和opera浏覽器在分數像素位置繪制時性能會有很大影響。這對普通繪圖影響不大,但對高速圖形應用,将非常影響性能。
6.10.2 其他的代碼更改
下面的代碼中粗體标注的是讓canvassprite工作所需做的其他修改。你可以參考第2章中dhtmlsprite的代碼進行比較。