我有这样的图像,在特定坐标处有一个矩形:
(出于说明的目的,我将矩形的坐标及其大小和中心放在那里)
现在我想用 ImageMagick 渲染一些文本,使它完全适合矩形。
如果它是一个非常短(窄)的字符串,矩形的高度将是限制因素:
另一方面,对于长(宽)字符串,矩形的宽度将决定大小:
在任何一种情况下,无论文本有多短或多长,我都想在一行中打印它(即没有自动换行或多行),并让它完全适合矩形,并确保它居中(中心的文本位于矩形的中心)。
我的问题:
如何使用 ImageMagick 执行此“最适合”功能(我不知道如何动态确定所需
-pointsize
的)如何使文本居中,当我使用
-gravity center
它时,它似乎适用于整个图像中文本的位置,即文本坐标相对于整个图像的中心。但我想指定精确(绝对)坐标,那应该是文本的中心。
例如,如果我这样做:
convert test.jpg -font Arial -fill yellow \
-pointsize 65 -draw "text 398,90 'Hello'" test2.jpg
我越来越:
请注意我指定的坐标(矩形的中心)如何成为文本的左下角锚点!(这让我很惊讶)
如果我这样做:
convert test.jpg -font Arial -fill yellow \
-pointsize 65 -gravity center -draw "text 148,-94 'Hello'" test3.jpg
我得到:
这还不错,但请注意我必须使用奇怪的文本坐标来获得它。此外,我不知道如何自动计算点大小(通过反复试验完成上述操作)。