我有一张风景图片foo.png
,我想在这样的网页上展示:
+--------------+
| |
| title text |
| |
| +--------+ |
| |foo.png | |
| | | |
| +--------+ |
| |
| |
+--------------+
我已将图片正确放置在页面上:
convert -background white -page letter+20+300 -resize 572x572 foo.png -layers flatten laid-out.png
但是,我无法正确使用-annotate
,-draw text
或label:
来使title text
显示在正确的位置。< / p>
最终的目标是为大约100个图像编写脚本,因此我需要一个命令行解决方案。
答案 0 :(得分:1)
看起来你最好在这里利用ImageMagick的“-gravity”设置。这可能不是您正在寻找的,但请注意“-gravity”如何使用“-composite”定位叠加图像,并使用像这样的命令将文本定位为“-annotate”... < / p>
convert foo.png -resize 572x572 \
-size 612x792 xc:white +swap -gravity center -composite \
-gravity north -pointsize 24 -annotate +0+100 "Title Text" laid-out.png
首先阅读“foo.png”并调整其大小。然后它设置所需画布的大小,创建该大小的白色画布,将重力设置为中心,使用画布交换叠加图像以使其按正确顺序排列,并以画布为中心合成“foo.png”
然后将重力设置更改为北,设置文本的分数,并使用位于“+ 0 + 100”的文本注释图像。这是从左到右中心的零像素,从顶部向下100像素。
一些实验应该可以帮助您找到适合您需求的设置。
答案 1 :(得分:0)