我正在尝试解决的情况。我正在将图像加载到画布上,然后对其进行一些编辑(调整大小、裁剪等)并将生成的图像保存到文件夹中。现在,如果原始图像大于画布尺寸,则会裁剪结果图像。因此,我尝试将图像缩放到适合画布的较小尺寸,应用效果,然后将其缩放回原始尺寸并保存。有没有办法做到这一点?
我的 JS 伪代码有点像这样:
//load the image using drawimage
//compare image dimensions with canvas dimensions, scale down the image if large
//apply the effects
(I have done till here)
//scale it back to original size
//save
如何使用画布scale
方法来回缩放它?我假设我必须像这样计算缩小和放大的宽度比:
scale_down_width = image_orig_width / canvas_width
scale_down_height = image_orig_height / canvas_height
//For scaling down
scale(1*scale_down_width, 1*scale_down_height)
//For scaling up
scale(1/scale_down_width, 1/scale_down_height)
我这样做对吗?按比例缩小可以正常工作,但按比例放大则不行,我该怎么做呢?