【问题标题】:imagemagick - run command on all files in folder and output results to their own sub-foldersimagemagick - 对文件夹中的所有文件运行命令并将结果输出到它们自己的子文件夹
【发布时间】:2022-01-18 17:07:14
【问题描述】:

我在 windows 上使用此命令将精灵表拆分为多个文件(帧)-

magick convert images\1.png -crop 1024x1024 images\1.png

效果很好,问题是我需要对 5k+ 精灵表执行此操作,并为每组帧创建一个子文件夹。我尝试寻找答案并发现了 mogrify,但我不确定如何针对我的情况使用它?

编辑: 输入图像均按 1 到 5000 顺序命名。输出文件夹将分别命名,输出文件也将按 1-30 顺序命名。

【问题讨论】:

  • 你没有说你使用的是什么操作系统,也没有真正解释你的输入文件是如何命名的,以及对应的输出文件应该被命名为什么。
  • Mogrify 旨在为每个输入图像创建一个输出图像。因此,您需要在每个输入图像上编写一个脚本循环,并将裁剪中的所有输出文件写入您想要放置它们的任何输出目录。附言在 ImageMagick 7 中,使用魔法,而不是魔法转换。 IM 7 中的识别和蒙太奇等其他工具变成了魔法识别和魔法蒙太奇。只是不转换。

标签: command-line imagemagick


【解决方案1】:

好的,所以我想出了如何处理一小批文件。还没有完整的测试。

我最终创建了一个 .bat 文件并在我的命令上运行了一个循环。通过使用计数器,我能够将名称设为数字和顺序。

@echo off 
set count=10
:loop
mkdir %count%
mkdir %count%\sequence-%count%
magick %count%.png -crop 1024x1024 %count%/sequence-%count%/%count%.png
set /a count=count-1 
if %count%==0 goto exitloop 
goto loop 
:exitloop 
pause

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-04
    • 2013-02-19
    • 2014-12-22
    相关资源
    最近更新 更多