我想要将给定文件夹中的所有图片按相同的宽度进行缩放(但高度适当进行比例缩放)。我该如何使用基于图形用户界面(GUI)或命令行工具来实现这个目标?
如果可以的话,是否可以根据初始宽度限制哪些图片进行缩放(也就是只对宽度大于 x 和/或宽度小于 y 的图片进行缩放)?
我想要将给定文件夹中的所有图片按相同的宽度进行缩放(但高度适当进行比例缩放)。我该如何使用基于图形用户界面(GUI)或命令行工具来实现这个目标?
如果可以的话,是否可以根据初始宽度限制哪些图片进行缩放(也就是只对宽度大于 x 和/或宽度小于 y 的图片进行缩放)?
$ convert '*.jpg[200x]' resized%03d.png
convert "images/*.jpg[250x]" -set filename:base "%[basename]" "images/new_folder/%[filename:base].jpg"
find /folder -iname '*.JPG' -exec convert \{} -verbose -set filename:base "%[basename]" -resize 1920x1080\> "/folder/images/%[filename:base].JPG" \;
-resize
选项。$ convert '*.jpg[300x>]' thumb-300-%03d.png
或扩大:
$ convert '*.jpg[300x<]' thumb-300-%03d.png
设置一个属性;
%<one-character>和
%[<one-or-more-characters>]`会被Imagemagick扩展为它们的值;用于以编程方式确定输出文件名的属性需要以“filename:”开头,因此我们需要将包含图像路径的“base”属性复制到“filename:<something>”属性中。 - marcotamaw
和h
(宽度和高度),date:create
和date:modify
。 - marcotamasudo apt-get install phatch
试试这个:
sudo apt-get install gimp-plugin-registry
示例:
$ mogrify -path small/ -auto-orient -thumbnail 300x *.jpg
convert
会导致错误("缓存已满"或类似的错误),而通过 find
调用它(如接受的答案中所述)则慢了100倍。 - ack_incfind . -iname \*.jpg -exec convert -verbose -quality 80 -resize 1600\> "{}" "FOO_FOLDER/{}" \;
它将适当地缩放高度。
要使用convert
命令,您需要通过sudo apt-get install imagemagick
安装Imagemagick。
对于Windows,请参见:批处理脚本调整图像大小。