使用 drawImage、最大宽度调整图像大小以适合 Canvas

Resize Image to Fit to Canvas using drawImage, Max Width

我正在处理一些大图像(宽但不高)并使用 drawImage 函数调整它们的大小以适应 canvas。

ctx.drawImage(img,0,0,IW,IH,0,0,CW,CH);

我注意到有些图片加载不正确。经过一些调查,它似乎只出现在 IW > 16384 的图像上。

如果没有调整大小,canvas 是图像的正确大小,那么它就可以工作。

有人知道这些参数的限制吗?

感谢您的帮助!

我通过一些基本的平铺解决了我的问题

if (IW > 16000) {
   ctx.drawImage(img, 0, 0, IW/2, IH, 0, 0, CW/2, CH);
   ctx.drawImage(img, IW/2, 0, IW/2, IH, CW/2, 0, CW/2, CH);
} else {
   ctx.drawImage(img, 0, 0, IW, IH, 0, 0, CW, CH);
}

虽然我仍然不知道 drawImage 大小的基本限制