ImageMagick多行文本和背景图像

5

我正在学习使用ImageMagick,但是当我尝试生成如下所示的图片时遇到了问题:

ImageMagick Example

为此,我使用了以下代码:

convert original.jpg -size 460x caption:'This is a multiline caption, This is a multiline caption, This is a multiline caption.' result.jpg

这条命令生成了两张不同的图片,一张只有标题。你能帮我吗?
PS: 我正在使用RubyOnRails和ImageMagick,但你可以提供使用MiniMagick或Rmagick的示例。谢谢。
1个回答

7
这个在php中可行,我不明白为什么在RubyOnRails中不能运行:
convert original.jpg -size 460x -background transparent -fill black -pointsize 40 caption:'This is a multiline caption, This is a multiline caption, This is a multiline caption.'  -gravity center -composite result.jpg

仅考虑文本不居中于标题;只有照片上的标题。我原本认为这样行不通,但是在标题中添加-gravity对我有效。将original.jpg转换为-size 460x -background transparent -fill black -pointsize 45 -gravity center caption:'This is a multiline caption, This is a multiline caption, This is a multiline caption.' -gravity center -composite result.jpg - Bonzo
谢谢@Bonzo,完美地解决了问题。你能告诉我如何将这个文本块定位在X:50和Y:80吗? :D - Caio Tarifa
Imagemagick存在一个问题(应在版本7中解决),即-text和图像放置的-geometry和-gravity相互干扰。使用此方法将很难说出文本居中,然后将文本放置在图像上的某个位置。对于您想要的内容,这应该可以工作,尽管现在文本是靠左对齐的。转换 original.jpg -size 460x -background transparent -fill black -pointsize 45 caption:'This is a multiline caption, This is a multiline caption, This is a multiline caption.' -geometry +50+80 -composite result1.jpg - Bonzo
很好。谢谢!为了生成带有文本的动态图像,我尝试生成PDF,将其转换为PNG并将其与我的图像合并。这样做会更容易。我需要的唯一补充是使用自定义字体。这可能吗?还是我必须继续使用我的PDF? - Yves
只需上传您的字体并使用“-font path/to/font/font.ttf”命令,即可在标题中使用该字体。 - Bonzo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接