Javascript IE11特定>;未在HTML5画布上绘制大图像

Javascript IE11特定>;未在HTML5画布上绘制大图像,javascript,html,canvas,html5-canvas,Javascript,Html,Canvas,Html5 Canvas,我有一个表,其中一个特定列由图像组成。单击这些图像中的任何一个,将打开一个弹出窗口,可以在其中查看完整的图像。我正在使用画布在弹出窗口中绘制图像,因为打开弹出窗口(对于非常大的图像)时,可以在IE中保存30秒 但是,有一个特定的图像非常大(宽度8386,高度2229),我有时会在IE中遇到错误“没有足够的存储空间来完成此操作。”与ctx.drawImage()行相对。它有时工作,但在其余时间失败。下面是一段代码片段 _paintImage: function(base64Value){

我有一个表,其中一个特定列由图像组成。单击这些图像中的任何一个,将打开一个弹出窗口,可以在其中查看完整的图像。我正在使用画布在弹出窗口中绘制图像,因为打开弹出窗口(对于非常大的图像)时,可以在IE中保存30秒

但是,有一个特定的图像非常大(宽度8386,高度2229),我有时会在IE中遇到错误“没有足够的存储空间来完成此操作。”与ctx.drawImage()行相对。它有时工作,但在其余时间失败。下面是一段代码片段

_paintImage: function(base64Value){
    var canvas = $(".image-measure-canvas")[0];
    var ctx = canvas.getContext("2d");
    var img = new Image();
    img.onload = function(){
        var width = this.width;
        var height = this.height;
        canvas.width = width;
        canvas.height = height;
        ctx.beginPath();
        ctx.drawImage(this, 0, 0,width, height);
    };
    img.src = imageValue;
}

“我正在使用画布在弹出窗口中绘制图像,因为打开弹出窗口(对于非常大的图像)时会在IE中保存30秒”嗯…这听起来像是前面代码的问题,而不是使用画布的原因。你真的是针对8000x2000px屏幕的用户吗?否则,生成要显示的缩小版本,如果您真的想提供全尺寸版本,则提供下载链接,但不要尝试在浏览器中显示,它是56MB原始像素数据(如果是RGB,则为74MB,如果有alpha)。你在IE上遇到了这个问题,但是很多低端设备也会对显示这个感到不好。也许IE的限制是:8192像素-请参见此处: