canvas 画布在主流浏览器中的尺寸限制详细介绍
程序员文章站
2023-11-15 12:32:58
canvas 画布在主流浏览器中的尺寸限制详细介绍
通过测试发现,canvas在不同浏览器下面有不同的最大尺寸限制。
大家都知道,canvas有自身的width,hei...
canvas 画布在主流浏览器中的尺寸限制详细介绍
通过测试发现,canvas在不同浏览器下面有不同的最大尺寸限制。
大家都知道,canvas有自身的width,height属性来控制尺寸,用css的width,height,控制显示的大小。可以理解为canvas就是一个img,属性的width,height就是这个img的原图像素大小。但在各浏览器下,设置canvas尺寸时发现有最大尺寸限制。测试一下与大家分享。
测试代码
<!doctype html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"> <title></title> </head> <body style="width:100%;height:100%;"> <div id="contain" style="position: absolute;top:0;right:0;left:0;bottom:0;margin:auto;width:100%;height:100%;background-color: #eee;"> <canvas id="canvasid" width="4096" height="4096" style="width:100%;height:100%"></canvas> </div> <script type="text/javascript"> var ctx=document.getelementbyid('canvasid').getcontext('2d'); ctx.fillstyle='#f00'; ctx.fillrect(0,0,2000,2000); </script> </body> </html>
在ios10下,自带浏览器和微信下,超过4096*4096像素则显示不了红色方块;
huawei nxt-tl00手机自带浏览器和uc浏览器下,不能超过8192*8192像素;
在pc,chrome浏览器,360浏览器,不能超过16384*16384像素;
搜狗浏览器,要比16384*16384稍微小一些;
firefox,最大数在11164*11164左右;
ie11、edge浏览器,没找到极限,只不过越大电脑越慢内存消耗严重;
从上面也可以看出,浏览器内核影响着这个数。手头上没有mac,有兴趣的朋友可以帮忙测一下,把数据补上。
以上测试结果,只是根据上面的代码,如果测试不准确,或者其它原因请指正。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!