我正在尝试使用Imagemagick命令创建单字母文本标签,给它一个阴影,将它放在固定大小的画布区域的左侧,然后将其附加到另一个固定高度的标签但是未知的宽度。因此,期望的结果是最终透明PNG左侧的单个字母,以及原点右侧约100px的另一个标签,例如,这个样机:
我在以下命令中使用了所有这些,除了,阴影文本标签不在固定大小的框中(应该是100px×25px)。结果如下:
我认为我需要做的是以某种方式关闭-trim选项,但我不知道该怎么做。 + trim不是一个有效的选项,+ repage不会这样做。
convert \
\( -background transparent \
\( -gravity west -fill lavender -font Constantia.ttf \
-pointsize 12 label:'x' -trim \
\( +clone -background black -shadow 100x3+0+0 -channel A -level 0,50% \
+channel \) \
+swap +repage -gravity center -composite \) \
-size 100x25 -gravity west \) \
\( -size x25 -fill black -background transparent -font MyriadPro-Semibold.otf \
-pointsize 15 label:'Long legend for x' -gravity west \) \
+append -strip legend_test.png
(需要使用修剪选项才能将高度降低到25px - 否则阴影操作会产生太大的垂直延伸。编辑:我猜我上面的错误 - 甚至没有任何地方的-trim命令,我希望的固定大小的图像不起作用。)
答案 0 :(得分:1)
这是最后的工作命令:
convert \
\( -background transparent -extent 100x25 -gravity west \
\( -fill lavender -font Constantia.ttf \
-pointsize 12 label:'x' -trim -extent 100x25 -gravity west \
\( +clone -background black -shadow 100x3+0+0 -channel A -level 0,50% \
+channel \) \
+swap +repage -gravity center -composite \) \
-background transparent -extent x25 \) \
\( -size x25 -fill black -background transparent -font MyriadPro- Semibold.otf \
-pointsize 15 label:'Long legend for x' -gravity west \) \
+append -strip legend_test.png