试图将 Magick 转换为 .Bat 以进行拖放
Trying to convert Magick to a .Bat to drag and drop
所以我有一个名为 player0.bmp
的 320x320
像素文件。我想切割成 32x32
像素 .bmp
文件。我可以 运行 一个 cmd.exe
提示符,将目录更改为文件的目录,然后 运行 这个命令;
magick convert player0.bmp -size 320x320 -crop 32x32 player0-%02d.bmp
这个脚本有效,它将图像分解成我想要的样子。但是我想避免在命令中更改数百个文件的文件名。有什么方法可以创建一个 .bat
文件来执行此操作,而无需更改脚本文件名和输出文件名?
我希望能够将 Item0.bmp
拖放到 .bat
文件上并让它从 Item0-01.bmp
到 Item0-99.bmp
中输出,然后能够拖动并删除 Item1.bmp
并通过 Item1-99.bmp
.
以 Item1-01.bmp
的形式出现
如能帮助制作此 .bat
文件,我们将不胜感激!
我真的不使用 Windows,也没有办法对此进行测试,但是,据我所知,当您将文件拖放到 Windows 批处理文件时,它会接收文件名作为参数,所以你可能会想要这些东西:
magick "%~1" -size 320x320 -crop 32x32 "%~dpn1-%%02d.bmp"
因为我 "think" %~dpn1
扩展为没有扩展名的全名。请仅在非关键文件上尝试此操作,因为我根本无法对其进行测试。您可能还需要更多的错误检查和多个文件名的处理,这样您就可以在脚本中放置 2 个或更多文件...
这个Windows使用ImageMagick v7的BAT脚本将拖放文件作为输入图像,将其裁剪成32x32像素块,并使用输入文件名加上三位数字写入输出文件顺序编号,例如 "inputfile_000.bmp"、"inputfile_001.bmp"、"inputfile_002.bmp" 等
@echo off
pushd "%~dp1"
magick "%~1" ^
-set filename:0 "%%[t]" ^
-size 320x320 ^
-crop 32x32 ^
"%%[filename:0]_%%03d.bmp"
popd
exit /b
它首先切换到拖放输入图像的目录,然后将输出文件写入那里。您应该能够将输入文件放在实际的 BAT 文件上,甚至放在 BAT 脚本目录以外的某个快捷方式上 或 输入图像。
请注意,在 BAT 脚本中大多数 情况下需要加倍百分号。
在 Windows 10 上使用 IMv7.0.10 测试了这个,并且通过将 "magick" 更改为 "convert",它也适用于 IMv6.9.10。
所以我有一个名为 player0.bmp
的 320x320
像素文件。我想切割成 32x32
像素 .bmp
文件。我可以 运行 一个 cmd.exe
提示符,将目录更改为文件的目录,然后 运行 这个命令;
magick convert player0.bmp -size 320x320 -crop 32x32 player0-%02d.bmp
这个脚本有效,它将图像分解成我想要的样子。但是我想避免在命令中更改数百个文件的文件名。有什么方法可以创建一个 .bat
文件来执行此操作,而无需更改脚本文件名和输出文件名?
我希望能够将 Item0.bmp
拖放到 .bat
文件上并让它从 Item0-01.bmp
到 Item0-99.bmp
中输出,然后能够拖动并删除 Item1.bmp
并通过 Item1-99.bmp
.
Item1-01.bmp
的形式出现
如能帮助制作此 .bat
文件,我们将不胜感激!
我真的不使用 Windows,也没有办法对此进行测试,但是,据我所知,当您将文件拖放到 Windows 批处理文件时,它会接收文件名作为参数,所以你可能会想要这些东西:
magick "%~1" -size 320x320 -crop 32x32 "%~dpn1-%%02d.bmp"
因为我 "think" %~dpn1
扩展为没有扩展名的全名。请仅在非关键文件上尝试此操作,因为我根本无法对其进行测试。您可能还需要更多的错误检查和多个文件名的处理,这样您就可以在脚本中放置 2 个或更多文件...
这个Windows使用ImageMagick v7的BAT脚本将拖放文件作为输入图像,将其裁剪成32x32像素块,并使用输入文件名加上三位数字写入输出文件顺序编号,例如 "inputfile_000.bmp"、"inputfile_001.bmp"、"inputfile_002.bmp" 等
@echo off
pushd "%~dp1"
magick "%~1" ^
-set filename:0 "%%[t]" ^
-size 320x320 ^
-crop 32x32 ^
"%%[filename:0]_%%03d.bmp"
popd
exit /b
它首先切换到拖放输入图像的目录,然后将输出文件写入那里。您应该能够将输入文件放在实际的 BAT 文件上,甚至放在 BAT 脚本目录以外的某个快捷方式上 或 输入图像。
请注意,在 BAT 脚本中大多数 情况下需要加倍百分号。
在 Windows 10 上使用 IMv7.0.10 测试了这个,并且通过将 "magick" 更改为 "convert",它也适用于 IMv6.9.10。