使用 ImageMagick 进行多图像转换
Multiple Image conversion using ImageMagick
问题:我希望能够通过简单地将多个图像拖到我的批处理文件中来一次转换多个图像。
这是我的编程代码,因为我正在调整每个图像的大小:
convert "%1" -thumbnail 50x -unsharp 1.5x1.2+1.0+0.10 "%~p1%~n1"
convert "%1" -thumbnail 80x -unsharp 1.5x1.2+1.0+0.10 "%~p1%~n1"
convert "%1" -thumbnail 120x -unsharp 1.5x1.2+1.0+0.10 "%~p1%~n1"
上面的每一行都在一个单独的文件中,所以我制作了另一个文件来调用这些文件中的每一个。 (教育目的)
以下所有行都在一个文件中:
call ImageConvert120x.bat %*
call ImageConvert80x.bat %*
call ImageConvert50x.bat %*
现在,当我突出显示多个图像并将其拖放到调用每个图像的文件中时,它只会转换最上面的图像。我希望它能够在突出显示它们并将其拖放到批处理文件后一次转换多个图像。
这应该适用于所有文件类型。
编辑:
我添加了:
for %%i in (%*) do (
call ImageConvert120x.bat %*
call ImageConvert80x.bat %*
call ImageConvert50x.bat %*
)
但它会拍摄第一张图像,然后再次尝试并重新替换它。
for
将 %*
(文件列表)转换为 %%i
(单个文件),因此对 call ImageConvert120x.bat %*
(带有文件列表)没有用).使用 %%i
(一次一个文件):
for %%i in (%*) do (
call ImageConvert120x.bat %%i
...
)
问题:我希望能够通过简单地将多个图像拖到我的批处理文件中来一次转换多个图像。
这是我的编程代码,因为我正在调整每个图像的大小:
convert "%1" -thumbnail 50x -unsharp 1.5x1.2+1.0+0.10 "%~p1%~n1"
convert "%1" -thumbnail 80x -unsharp 1.5x1.2+1.0+0.10 "%~p1%~n1"
convert "%1" -thumbnail 120x -unsharp 1.5x1.2+1.0+0.10 "%~p1%~n1"
上面的每一行都在一个单独的文件中,所以我制作了另一个文件来调用这些文件中的每一个。 (教育目的)
以下所有行都在一个文件中:
call ImageConvert120x.bat %*
call ImageConvert80x.bat %*
call ImageConvert50x.bat %*
现在,当我突出显示多个图像并将其拖放到调用每个图像的文件中时,它只会转换最上面的图像。我希望它能够在突出显示它们并将其拖放到批处理文件后一次转换多个图像。
这应该适用于所有文件类型。
编辑:
我添加了:
for %%i in (%*) do (
call ImageConvert120x.bat %*
call ImageConvert80x.bat %*
call ImageConvert50x.bat %*
)
但它会拍摄第一张图像,然后再次尝试并重新替换它。
for
将 %*
(文件列表)转换为 %%i
(单个文件),因此对 call ImageConvert120x.bat %*
(带有文件列表)没有用).使用 %%i
(一次一个文件):
for %%i in (%*) do (
call ImageConvert120x.bat %%i
...
)