我的drawImage有问题。 我不明白为什么我有一个indexSizeError,因为我的所有值都不是负数或不是我的画布配置。 Senario: 我有一个画布,其中有一个带有正方形的图片来捕捉图片的一部分。 当我选择该部件时,我点击一个按钮并调用此功能:
this.reset();
firstDraw = false;
var fact = w / imgW; //facteur de l'image réelle à celle affiché pour rendre proportionnel le carré
var newC = Math.floor(c * fact);
canvasCrop = this.element.dom.firstChild;
this.canvasCrop = canvasCrop;
canvasCrop.setAttribute("width", 300);
canvasCrop.setAttribute("height", 300);
this.context = canvasCrop.getContext("2d");
this.context.fillStyle = this.brushColor;
this.context.drawImage(photo, Math.floor((x - xDecal) * fact), Math.floor((y - yDecal) * fact), newC, newC, 0, 0, newC, newC);
//assigne à imgCorp l'image capturée
imgCrop.setSrc(canvasCrop.toDataURL());
我的绘图大小错误与drawImage ...
查看变量值:
Math.floor((x - xDecal) * fact) : 183
Math.floor((y - yDecal) * fact) : 283
newC : 161
photo.naturalWidth : 372
photo.naturalHeight : 140
this.canvasCrop.width : 300
this.canvasCrop.height : 300
xDecal : 16.42296072507554
yDecal : 0
x : 187
y : 263