一尘不染

<canvas>元素的最大限制

javascript

我正在使用一个高度为600to1000像素,宽度为数万或数十万像素的canvas元素。但是,经过一定数量的像素(显然是未知的)之后,画布不再显示我用JS绘制的形状。

有谁知道是否有限制?

在Chrome 12和Firefox 4中都进行了测试。


阅读 1574

收藏
2020-04-25

共1个答案

一尘不染

所有经过测试的浏览器都限制了canvas元素的高度/宽度,但是许多浏览器也限制了canvas元素的总面积。对于我可以测试的浏览器,限制如下:

Chrome:

最大高度/宽度:32,767像素
最大区域:268,435,456像素(例如16,384 x 16,384)

Firefox:

最大高度/宽度:32,767像素
最大区域:472,907,7​​76像素(例如22,528 x 20,992)

IE浏览器

最大高度/宽度:8,192像素
最大面积:不适用

IE Mobile

最大高度/宽度:4,096像素
最大面积:不适用

其他

我目前无法测试其他浏览器。有关其他限制,请参阅此页面上的其他答案。


在大多数浏览器中,超过最大长度/宽度/面积会使画布无法使用。(即使在可用区域中,它也会忽略任何绘制命令。)IE和IEMobile将遵守可用空间中的所有绘制命令。

2020-04-25