EDGE无法使用JS将大图像复制到画布中?

时间:2016-09-02 04:19:35

标签: javascript html5 canvas

我有这个代码,复制部件从图像“smoothchartshowAnalisysCopy”(500px X 250px)到大的“analysisFullGraph1”(32172px X 250px)。

适用于 IE,firefox,chrome,safari e vivaldi,对于Edge来说还不错......

边缘,只能复制大图像的开头...也许是14000px的最大值......

var c   = document.getElementById('analysisFullGraph1'); 32172px X 250px
var ctx = c.getContext('2d');

var imageNow = document.querySelector('#smoothchartshowAnalisysCopy');
var ctxImageNow = imageNow.getContext('2d');


function copy(){
    var elmnt  = document.querySelector('#analysisFullGraphContainer1');
    var x = elmnt.scrollLeft;
    var y = elmnt.scrollTop;
    var imgData = ctx.getImageData(x, 0, 828, 270);
    ctxImageNow.putImageData(imgData, 0, 0);

}

我无法找到有关Microsoft DOC的信息,甚至在谷歌中也没有...

我感谢任何帮助ou提示!

1 个答案:

答案 0 :(得分:2)

  

无论画布的大小如何,画布上渲染区域的最大大小为0到8192 x 8192像素。例如,创建宽度和高度为8292像素的画布。然后将矩形填充应用为“ctx.fillRect(0,0,canvas.width,canvas.height)”。只能渲染坐标(0,0,8192,8192)内的区域,留下100像素边框在画布的右下角。 link

我搜索了微软边缘画布大小限制 - 这是第二个链接