你好,如果有人想帮忙,那就太好了。 以下命令正在运行
mogrify -verbose -path / cygdrive / L / temp / og-rotate-logo -format jpg -draw'image over 0,0 0,0“/cygdrive/L/temp/logo.png”' - gravity southeast * .jpg -path / cygdrive / L / temp / 1200px -adaptive-resize 1200x1200 * .jpg
然而,它似乎有点难看,因为它首先制作所有徽标图像,然后处理这些图像的所有大小调整。我的问题是有更好或更快的方法吗? 我一次正在处理数千张照片。
非常感谢任何帮助
同样,我正在使用cygwin和imagemagick运行Windows 7
答案 0 :(得分:0)
您的-format jpg
是多余的,因为您的输入文件已经是JPEG
您在命令中重复*.jpg
,这是不正确的 - 您只需要一次
所以,尝试更像这样的东西:
mogrify -gravity southeast -path /cygdrive/L/temp/og-rotate-logo ^
-draw 'image over 0,0 0,0 "/cygdrive/L/temp/logo.png"' ^
-adaptive-resize 1200x1200 *.jpg
我不使用Windows,但我相信^
是上面的续行字符。
要回答您的实际问题,我建议您安装 GNU Parallel ,如果您有数千张图片需要处理,但我从未在Windows上使用它。
dir /b *.jpg | parallel -X mogrify -gravity southeast -path /cygdrive/L/temp/og-rotate-logo -draw 'image over 0,0 0,0 "/cygdrive/L/temp/logo.png"' -adaptive-resize 1200x1200
您还可以通过将logo.png
(仅一次)重新保存为MPC文件,然后在mogrify
中使用该文件来获得一些性能:
convert /cygdrive/L/temp/logo.png /cygdrive/L/temp/logo.mpc
然后使用:
mogrify -gravity southeast -path /cygdrive/L/temp/og-rotate-logo ^
-draw 'image over 0,0 0,0 "/cygdrive/L/temp/logo.mpc"' ^
-adaptive-resize 1200x1200 *.jpg
请在一个单独的测试目录中复制几个文件,然后继续处理它们,直到你对GNU Parallel和mogrify
有更多的经验 - 它可能会造成非常大的混乱,非常快,并行。