zoukankan      html  css  js  c++  java
  • 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="100%;height:100%;">
        <div id="contain" style="position: absolute;top:0;right:0;left:0;bottom:0;margin:auto;100%;height:100%;background-color: #eee;">
            <canvas id="canvasid" width="4096" height="4096" style="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,有兴趣的朋友可以帮忙测一下,把数据补上。

    以上测试结果,只是根据上面的代码,如果测试不准确,或者其它原因请指正。

  • 相关阅读:
    ...
    抛砖引玉,说平台概念
    杂想
    相机镜头简易擦拭篇
    优秀软件体验2
    牛人就在我的身边
    对魔时网做了一下了解
    来了兴致,试试django吧,呵呵
    SD2.0大会
    从《首届中国优秀软件创新大赛 寻找中国软件新星 》预测互联网的未来趋势
  • 原文地址:https://www.cnblogs.com/shuchong/p/5948542.html
Copyright © 2011-2022 走看看