如何使用imagemagick为文本着色?

时间:2012-05-08 14:03:14

标签: imagemagick

我想知道如何在jpeg的底部添加带阴影的版权文本。目前我只是使用:

convert input.jpg  -font /usr/share/fonts/truetype/pointfree/pointfree.ttf -pointsize 15 -fill white -gravity SouthEast -strokewidth 3 -annotate +0+5 "  @blabla.com  " "output.jpg"

问题在于,当背景很浅时,文字会消失。 我知道我可以添加一个像

这样的标志
-undercolor '#00000080'

但我发现这相当突兀,所以寻找一个更好的解决方案,使文本的可见性更加独立于背景颜色。注意:图像大小不同,所以我不能硬编码文本的协调。

2 个答案:

答案 0 :(得分:1)

试试这个:

convert input.jpg  -font /usr/share/fonts/truetype/pointfree/pointfree.ttf -pointsize 15 -gravity SouthEast -strokewidth 3 -fill black -annotate +2+7 "  @blabla.com  "-fill white -annotate +0+5 "  @blabla.com  " "output.jpg"

在成员的imagemagick论坛上有一篇文章考虑了文本下的颜色,并产生了白色或黑色的水印。我前几天正在寻找它,却找不到它。这是一个来自内存的批处理脚本。

我不得不在这里添加评论,因为我在尝试添加评论时收到了一些我不了解通知的消息。

对不起,我错过了这里的空间“@ blabla.com” - 填写应该是“@ blabla.com” - 填写命令行很长,如果将它拆分到不同的行,将更容易使用。< / p>

答案 1 :(得分:0)

好的,最后我找到了一个很好的批处理解决方案:

for FILE in *.jpg; do convert $FILE -gravity southeast -stroke '#000C' -strokewidth 2 -annotate 0 'blabla.com' -stroke  none   -fill white    -annotate 0 'blabla.com' $FILE; done