我有两张不同尺寸的画布。我的目标是将用户的绘图从主画布复制到第二个画布作为缩小版本。到目前为止,drawImage() 和 scale 似乎工作正常,但第二个画布保留了旧版本的主图和新副本。我每次在调用drawImage()之前都尝试清除它,但这似乎没有做任何事情。每次函数运行时,如何仅将当前图像复制到辅助画布?
$('#hand').dblclick(function(){
var canvas = document.getElementById('myCanvas');
var context = canvas.getContext('2d');
//var imageData = context.getImageData(0, 0, 100, 100);
var newCanvas = document.getElementById('scaledCanvas');
var destCtx = newCanvas.getContext('2d');
destCtx.clearRect(0, 0, newCanvas.width, newCanvas.height);
destCtx.scale(.5,.5);
destCtx.drawImage(canvas, 0, 0);
});
如有必要,我可以包含更多代码。我也刚刚意识到规模不断被调用;这解释了为什么新复制的图像每次都会变小,所以这可能是另一个问题。