比例图像在Coldfusion 9中调整大小

时间:2011-11-10 10:50:11

标签: performance image coldfusion resize coldfusion-9

我有一个功能应该调整给定文件夹中的所有图像(我不确切知道多少,但我猜2500+)并将它们保存到不同的文件夹中:

<CFSET base = expandpath("./images") />
<CFSET folders = listtoarray("folder1,folder2") />
<CFLOOP array="#folders#" index="folder">
  <CFDIRECTORY name="qImages" directory="#base#/#folder#/big/" action="list" listinfo="name" type="file" filter="*.jpg" />
  <CFLOOP query="qBilder">
    <CFIMAGE action="resize" height="" width="320" source="#base#/#folder#/big/#name#" destination="#base#/#folder#/#name#" overwrite="yes" />
  </CFLOOP>
</CFLOOP>

我想知道如何比我更有效率地做到这一点?!我在CF中读到了 17 different algorithms for resizing images 。哪个是性能最佳的,具有良好的图像质量和速度组合?

2 个答案:

答案 0 :(得分:1)

您可以先测试imageResize()的效果。正如jan所说,使用“插值参数”来获得你的质量与速度。如果证明它太慢/太难看,请使用ImageMagik

答案 1 :(得分:1)

为图像&lt; = 100x100像素设置插值为“highestPerformance”,其余为“highestQuality”或“lanczos”。如果要创建.jpgs,则默认质量为0.75,即75%。对于微小的图像,将其降至0.5或更低,以获得快速低质量的图像。

如果想要按比例调整大小,请提供宽度或高度的imageResize(),但不能同时提供两者。

http://cfquickdocs.com/cf9/#imageresize