我怎样才能制作这个 GIMP/ImageMagick 脚本?
How can I make this GIMP/ImageMagick script?
我正在使用 GIMP 对许多图像执行简单但繁琐的操作,所以我想知道如何制作一个脚本来为我完成这项操作,或者找到一些更简单的方法来执行此操作。
我导入了一个尺寸较大但大部分为方形的图像文件,有时像 550x564、580x596 等,可能是 jpg、bmp 或 png,我想导出一个 192x192 的 PNG 文件,调整大小和在较长尺寸的两端裁剪,通常是垂直的,但也可以是水平的。
我对垂直方向比水平方向长的图像执行以下步骤:
- Image->Scale Image->Set Width to 192 (Locked, so Height will automatically be set to something like 196)
- 单击缩放
- 图片->Canvas尺寸->设置高度为192
- 单击居中
- 单击调整大小
- File->Export As->same file name but extension changed to .png,从下拉列表中选择PNG图像(通常原始文件是jpg,但有时它们是 png,因此如有必要请覆盖)
- 单击导出(单击加载默认值)
- 再次单击导出
如何在 script-fu 或 python 中为 GIMP 执行此操作?或者在 ImageMagick 中?或者有没有更好的方法来为此制作一个宏?
我想我理解你了。尝试使用 ImageMagick 转换单个图像:
convert input.jpg -gravity center -resize 192x192^ -extent 192x192 -set filename:base "%[basename]" "%[filename:base].png"
您还可以潜在地利用 mogrify
的强大功能一次性完成整个目录中的图像,但要非常小心,并在远离主目录的某个位置对文件的 COPY 进行尝试工作。这实际上会更容易,因为你可以让 mogrify
自己计算出文件名,而不需要循环:
# Process all JPEGs in current directory
mogrify -format png -gravity center -resize 192x192^ -extent 192x192 *jpg
如果你在 Windows,你可能需要转义插入符号 (^
),我不使用 Windows,但我认为你要么需要添加在它之前添加一个插入符号,或者可能将整个 -resize
参数用双引号引起来:
mogrify ... -resize "192x192^" ...
请注意,如果您使用的是 ImageMagick v7+,mogrify ...
将变为 magick mogrify ...
我正在使用 GIMP 对许多图像执行简单但繁琐的操作,所以我想知道如何制作一个脚本来为我完成这项操作,或者找到一些更简单的方法来执行此操作。
我导入了一个尺寸较大但大部分为方形的图像文件,有时像 550x564、580x596 等,可能是 jpg、bmp 或 png,我想导出一个 192x192 的 PNG 文件,调整大小和在较长尺寸的两端裁剪,通常是垂直的,但也可以是水平的。
我对垂直方向比水平方向长的图像执行以下步骤:
- Image->Scale Image->Set Width to 192 (Locked, so Height will automatically be set to something like 196)
- 单击缩放
- 图片->Canvas尺寸->设置高度为192
- 单击居中
- 单击调整大小
- File->Export As->same file name but extension changed to .png,从下拉列表中选择PNG图像(通常原始文件是jpg,但有时它们是 png,因此如有必要请覆盖)
- 单击导出(单击加载默认值)
- 再次单击导出
如何在 script-fu 或 python 中为 GIMP 执行此操作?或者在 ImageMagick 中?或者有没有更好的方法来为此制作一个宏?
我想我理解你了。尝试使用 ImageMagick 转换单个图像:
convert input.jpg -gravity center -resize 192x192^ -extent 192x192 -set filename:base "%[basename]" "%[filename:base].png"
您还可以潜在地利用 mogrify
的强大功能一次性完成整个目录中的图像,但要非常小心,并在远离主目录的某个位置对文件的 COPY 进行尝试工作。这实际上会更容易,因为你可以让 mogrify
自己计算出文件名,而不需要循环:
# Process all JPEGs in current directory
mogrify -format png -gravity center -resize 192x192^ -extent 192x192 *jpg
如果你在 Windows,你可能需要转义插入符号 (^
),我不使用 Windows,但我认为你要么需要添加在它之前添加一个插入符号,或者可能将整个 -resize
参数用双引号引起来:
mogrify ... -resize "192x192^" ...
请注意,如果您使用的是 ImageMagick v7+,mogrify ...
将变为 magick mogrify ...