Chain 2 imagemagick命令

时间:2016-07-05 11:22:28

标签: imagemagick image-manipulation

我想在图片中添加徽标和一些文字。

我可以通过以下方式实现这一目标:

// Add logo
composite -geometry +10+20 logo.png input.jpg \
    output_with_logo.jpg

// Add text
convert output_with_logo.jpg  -font Arial -pointsize 20 \
    -draw "fill black  text 20,50 'Test'" \
    final.jpg

但是我想知道我是否可以将这两个命令链接在一起,这样我就可以同时使用相同的源文件,而不是保存图像的分阶段版本。

我试过了:

convert -font Arial -pointsize 20 \
    -draw "fill black  text 20,50 'Test'" \
    -composite -geometry +10+20 input.jpg logo.png \
    final.jpg

然而,这会在图像上创建2个“测试”字符串

1 个答案:

答案 0 :(得分:1)

像这样:

convert input.jpg logo.jpg -geometry +10+20 -composite -font Arial -pointsize 20 -draw "fill black  text 20,50 'Test'" final.jpg

使用composite命令及其执行相同操作的convert运算符,而不是使用不允许添加文本的-composite命令。所以,我说:

composite A.jpg B.jpg result.jpg = convert A.jpg B.jpg -composite result.jpg

然后,完成合成后,您可以在之后添加文本 - 就像您拥有的一样。