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,有興趣的朋友可以幫忙測一下,把數據補上。

以上測試結果,只是根據上面的代碼,如果測試不准確,或者其它原因請指正。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM