2

我有一个包含大约 20000 张图像的文件夹,我需要为它们生成拇指图像。

完成这项工作的最快方法是什么?

我知道我可以使用一些图像大小调整库来做到这一点。但我想知道也许已经有一个工具或代码片段可以完成这项工作。

4

1 回答 1

6

imagemagick 转换工具。它是一个命令行工具,在 Linux 和 Windows 中都能很好地工作。

用于转换单个图像:

convert dragon.gif    -resize 50%  half_dragon.gif

或者,如果您更喜欢固定大小(此处为 4096 像素)的缩略图:

convert dragon.gif    -resize 4096@  pixel_dragon.gif

或者最常见的用法 - 调整为给定大小:

convert dragon.gif    -resize 64x64  resize_dragon.gif

对于大量图像,可以使用快速调整大小:

调整大小运算符也可以在读取后立即应用于图像,然后将其添加到当前图像序列并读取下一个图像。

所以,

convert dragon.gif'[64x64]'    read_dragon.gif

可能是您问题的正确答案。

这些示例取自 imagemagick.org 网站的调整大小部分;您可以在那里找到许多其他示例。

为了转换图像库,您可以编写一个小的 shell 脚本,例如:

for file in `ls`;
do
    convert $file  -resize 4096@ thumb_$file
done

对于非常大量的文件,您可能希望使用 Linuxfind -exec来克服ls会产生的非常长的参数列表。

于 2010-01-06T10:23:51.110 回答