csb*_*er3 4 coldfusion image image-resizing
所以我有一个图像加载器,在将文件上传到Amazon S3之前,它使用以下代码优化图像:
<cfset ImageScaleToFit(myImage,1260,"")>
<cfset imageWrite(myimage,"newImagelocation", 0.9)>
Run Code Online (Sandbox Code Playgroud)
奇怪的是,如果我上传的图像已经是1260宽,24k大小,那么使用上面的代码对其进行优化,图像大小为34k.
为什么优化图像会使图像更大?
ColdFusion函数ImageScaleToFit()不做优化.它只是根据参数转换宽度/高度.执行此操作时highestQuality,默认情况下使用插值算法.由于底层机制,有时会增加文件的大小.即使您0.9在编写时使用的是质量,但只会从最初提取的ImageScaleToFit()调用大小减少一点.
如果您希望减小大小,请指定任何其他算法,其成本要低于highestQuality.
例如.mediumQuality,highestPerformance等等.