在缩放画布上,toDataURL仅返回画布的可见部分,而不返回超出画布大小的部分

时间:2018-08-28 10:22:05

标签: javascript angular html5 canvas html5-canvas

我正在尝试徒手在画布上绘制图像以及放大/缩小。

在图像上添加绘图更改我正在使用 getImageData() putImageData() 然后保存使用的图像 canvas.nativeElement.toDataURL();

它无需放大即可正常工作,但是当我使用 context.scale(x,x); 放大时 canvas.nativeElement.toDataURL(); 仅保存在画布区域中可见的图像,并且缩放后丢失了超出画布大小的图像部分。

我想获得具有图形更改的完整图像,将其缩小后,是否可以使用 toDataURL() 替代,它可以为我提供完整的图像数据。

1 个答案:

答案 0 :(得分:1)

您可以将图像绘制在屏幕画布上,也可以在缓冲区画布上(未附加到DOM上)缓冲区画布可能与缩放后的图像一样大,并且可以在缓冲区画布上使用toDataURL()