【发布时间】:2016-12-28 22:55:06
【问题描述】:
是否可以有一个来源并从中获得两种具有不同配置的已处理图像? (而不是两次读取源图像)?
有点像
convert input.jpg -resize 300 output1.jpg -resize 600 output2.jpg
【问题讨论】:
标签: imagemagick imagemagick-convert graphicsmagick
是否可以有一个来源并从中获得两种具有不同配置的已处理图像? (而不是两次读取源图像)?
有点像
convert input.jpg -resize 300 output1.jpg -resize 600 output2.jpg
【问题讨论】:
标签: imagemagick imagemagick-convert graphicsmagick
当然,像这样使用中间的-write,然后先做大的:
convert input.jpg -resize 600 -write im600.jpg -resize 300 im300.jpg
或者,如果您想从每个操作重新开始:
convert input.png \
\( +clone -resize 300 -write result300.jpg \) \
\( +clone -resize 600 -write result600.jpg \) null:
如果使用 GraphicsMagick,我不确定是否有比以下更好的方法:
#!/bin/bash
{ echo convert input.png mpr:orig;
echo convert mpr:orig -resize 300 result300.jpg;
echo convert mpr:orig -resize 600 result600.jpg; } | gm batch -prompt off
这是一个稍微不同的版本,它只调用了两次convert:
#!/bin/bash
cat - <<EOF | gm batch -prompt off
convert input.png -write mpr:orig -resize 300 result300.jpg
convert mpr:orig -resize 600 result600.jpg
EOF
【讨论】:
source -> 600 -> 300 而不是 source -> 300 和 source -> 600
-write.
+clone 或括号,所以我能做的最好的事情是通过MPR 这是一个基于RAM的副本.