1

我正在尝试在 Windows 机器上调整一堆图像的大小,安装了 imagemagick 并且还安装了 git for windows。

图像需要调整为当前大小的 50%。

在根目录中,有可能包含图像的目录和其他带有图像的目录。我需要调整所有图像的大小。在我的特殊情况下,我共有 250 个文件夹(嵌套在不同级别),共有 4110 张图像。

示例根文件夹

RootFolder
   Folder A
      ImageA.png
      SubFolder A
          ImageB.png
          ImageC.png
   Folder B
      Subfolder B
          ImageC.png

我正在尝试这种方式,但如果无法获得正确的路径。

for /r /d %%a in (*) 
do 
    find . -name "*.png" -print0 | xargs -0 mogrify -resize 50%

错误信息

find . -name "\Default\*.png" -print0   | xargs -0 mogrify -resize 50
Access denied - .
File not found - -NAME
File not found - -PRINT0
4

1 回答 1

2

批处理文件中的这个命令行如何调整当前目录和除隐藏目录和文件之外的所有子目录中的所有 PNG 图像的宽度和高度为 50% 并使用IrfanView覆盖输入文件?

@for /R %%I in (*.png) do @"%ProgramFiles(x86)%\IrfanView\i_view32.exe" "%%I" /resize=(50p,50p) /convert="%%I"

直接从命令提示符窗口中执行相同的命令行,无需使用批处理文件:

for /R %I in (*.png) do @"%ProgramFiles(x86)%\IrfanView\i_view32.exe" "%I" /resize=(50p,50p) /convert="%I"

打开命令提示符窗口,运行for /?并阅读输出帮助。

对于IrfanView(私人使用的免费软件)的选项,请阅读已安装IrfanViewi_options.txt的程序文件夹中的文本文件。

我没有安装ImageMagick并且您没有发布ImageMagick命令行来调整 PNG 图像的大小,这就是我使用IrfanView发布命令行解决方案的原因。

还有一点需要注意:此任务不需要批处理文件。打开IrfanView ,在菜单项Batch Conversion/Rename上单击菜单File并使用此对话框单击几下即可选择目录树中的所有 *.png 图像文件,设置调整大小和 PNG 优化的选项并执行批量转换。

于 2018-03-10T21:30:29.200 回答