Javascript 缩放画布,以便同时缩放base64 toDataURL()

Javascript 缩放画布,以便同时缩放base64 toDataURL(),javascript,html,canvas,Javascript,Html,Canvas,我正在构建一个chrome扩展来保存网页的截图。我已经把截图拼接成了一个HTML5画布元素 如果我随后使用canvas.toDataURL('image/jpeg',0.8)显示图像;它很好用 但是,如果我尝试首先通过获取上下文并使用以下内容来缩放图像: var context = canvas.getContext('2d'); context.scale(.75,.75); 然后输出canvas.toDataURL('image/jpeg',0.8)图像与未缩放的图像大小相同。我错过了什么

我正在构建一个chrome扩展来保存网页的截图。我已经把截图拼接成了一个HTML5画布元素

如果我随后使用canvas.toDataURL('image/jpeg',0.8)显示图像;它很好用

但是,如果我尝试首先通过获取上下文并使用以下内容来缩放图像:

var context = canvas.getContext('2d');
context.scale(.75,.75);

然后输出canvas.toDataURL('image/jpeg',0.8)图像与未缩放的图像大小相同。我错过了什么?如何缩放图像?

如果您想获得缩小的

  • 创建第二个
    宽度要捕获的所需宽度和高度

  • 使用(画布有效
    drawImage()
    源代码)将第一个
    绘制到第二个

  • 保存第二个


这很可能是由于事实
context.scale(.75,.75)不改变画布的宽度和高度。缩放后的图像是否产生完全相同的结果,或者是否有边框?您可能希望重新绘制,而不是使用此方法。