我正在使用一个高度为600to1000像素,宽度为数万或数十万像素的canvas元素。但是,经过一定数量的像素(显然是未知的)之后,画布不再显示我用JS绘制的形状。
600
1000
有谁知道是否有限制?
在Chrome 12和Firefox 4中都进行了测试。
所有经过测试的浏览器都限制了canvas元素的高度/宽度,但是许多浏览器也限制了canvas元素的总面积。对于我可以测试的浏览器,限制如下:
Chrome:
最大高度/宽度:32,767像素 最大区域:268,435,456像素(例如16,384 x 16,384)
Firefox:
最大高度/宽度:32,767像素 最大区域:472,907,776像素(例如22,528 x 20,992)
IE浏览器:
最大高度/宽度:8,192像素 最大面积:不适用
IE Mobile:
最大高度/宽度:4,096像素 最大面积:不适用
其他:
我目前无法测试其他浏览器。有关其他限制,请参阅此页面上的其他答案。
在大多数浏览器中,超过最大长度/宽度/面积会使画布无法使用。(即使在可用区域中,它也会忽略任何绘制命令。)IE和IEMobile将遵守可用空间中的所有绘制命令。