未捕获错误:INDEX_SIZE_ERR [英] Uncaught Error: INDEX_SIZE_ERR

查看:439
本文介绍了未捕获错误:INDEX_SIZE_ERR的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在画布上绘制了以下行:



ctx.drawImage(compositeImage,0,0,image.width,image.height,这个代码在Safari,Chrome,Firefox(甚至使用谷歌的excanvas库的IE)上执行错误,没有执行错误。但是,Chrome的最新更新现在会引发以下错误:



未捕获错误:INDEX_SIZE_ERR:DOM异常1



这段代码经常将画布的部分或全部绘制图像放置在画布上,任何人都知道这里发生了什么。

解决方案

compositeImage 指向有效(完全加载)的图片吗?





例如

  img = new Image(); 
img.src ='/some/image.png';
ctx.drawImage(img,.....); //抛出错误

应该像

  img = new Image(); 
img.onload = function(){
ctx.drawImage(img,....);
};
img.src ='/some/image.png';

确保图片已加载。


I am drawing on a canvas with the following line:

ctx.drawImage(compositeImage, 0, 0, image.width, image.height, i, j, scaledCompositeImageWidth, scaledCompositeImageHeight);

This code has executed error free on Safari, Chrome, Firefox (and even IE using google's excanvas library). However, a recent update to Chrome now throws the following error:

Uncaught Error: INDEX_SIZE_ERR: DOM Exception 1

This code often positions part or all of the drawn image OFF the canvas, anyone got any idea what's going on here?

解决方案

Is compositeImage pointing at a valid (fully loaded) image?

I've seen this exception happen if you try to draw the image before it has loaded.

E.g.

img = new Image();
img.src = '/some/image.png';
ctx.drawImage( img, ..... ); // Throws error

Should be something like

img = new Image();
img.onload = function() {
  ctx.drawImage( img, .... );
};
img.src = '/some/image.png';

To ensure the image has loaded.

这篇关于未捕获错误:INDEX_SIZE_ERR的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆