Text 如何在ImageMagick中绘制文本并对其进行阴影处理?

Text 如何在ImageMagick中绘制文本并对其进行阴影处理?,text,imagemagick,draw,shadow,imagemagick-convert,Text,Imagemagick,Draw,Shadow,Imagemagick Convert,我正在使用convert在图像上打印一些文本,我想用黑色阴影装饰文本,我尝试了-模糊或-高斯,但我无法应用于文本,它仅应用于背景图像。 我需要使用-draw命令而不是-annotate 这是我需要更新的阴影代码 -font "geometricslab703bt-bold-webfont.ttf" -fill White -pointsize 18 -draw "rotate -4 text 350,250 '---- mijn ideale ----'" 提前感谢使用文本阴影的更好、更灵活的

我正在使用convert在图像上打印一些文本,我想用黑色阴影装饰文本,我尝试了-模糊或-高斯,但我无法应用于文本,它仅应用于背景图像。 我需要使用-draw命令而不是-annotate

这是我需要更新的阴影代码

-font "geometricslab703bt-bold-webfont.ttf" -fill White -pointsize 18 -draw "rotate -4 text 350,250 '---- mijn ideale ----'"

提前感谢

使用文本阴影的更好、更灵活的方法是在新层上渲染阴影。此方法将允许您根据需要操纵阴影文本,而不会影响背景。最后,在调整任何几何偏移后,在阴影顶部绘制实际文本。下面是一个例子:

转换-尺寸280x100图案:小鱼鳞\ \xc:transparent-font-Menlo-pointsize 32-fill black-draw rotate-4 text 20,60'ImageMagick'-blur 0x1\\ -几何图形+2+2-合成\ -字体菜单-填充白色-点大小32-绘制旋转-4文本20,60“ImageMagick”\ example.png 转义大括号\\将创建新的子映像;将应用于带有-composite标志的背景


此解决方案需要更多的劳动,但可以隔离所有效果。

使用文本阴影的更好、更灵活的方法是在新层上渲染阴影。此方法将允许您根据需要操纵阴影文本,而不会影响背景。最后,在调整任何几何偏移后,在阴影顶部绘制实际文本。下面是一个例子:

转换-尺寸280x100图案:小鱼鳞\ \xc:transparent-font-Menlo-pointsize 32-fill black-draw rotate-4 text 20,60'ImageMagick'-blur 0x1\\ -几何图形+2+2-合成\ -字体菜单-填充白色-点大小32-绘制旋转-4文本20,60“ImageMagick”\ example.png 转义大括号\\将创建新的子映像;将应用于带有-composite标志的背景

这个解决方案需要更多的劳动,但可以隔离所有效果。

您可以使用标题绘制文本,并使用克隆制作阴影层,然后合并两层

convert logo: -resize 40%x40 \
    \( -size "80x40" -background none -gravity west  -fill green caption:"Caption text" \
    \( +clone -background navy -shadow 80x3+5+5  \) +swap -background none -layers merge +repage \) -composite \
    \( -size "80x40" -background none -gravity east  -fill green caption:"Caption text"  \
    \( +clone -background red -shadow 80x3+5+5  \) +swap -background none -layers merge +repage \) -composite \
    out.png

您可以使用标题绘制文本,并使用克隆创建阴影层,然后合并这两个层

convert logo: -resize 40%x40 \
    \( -size "80x40" -background none -gravity west  -fill green caption:"Caption text" \
    \( +clone -background navy -shadow 80x3+5+5  \) +swap -background none -layers merge +repage \) -composite \
    \( -size "80x40" -background none -gravity east  -fill green caption:"Caption text"  \
    \( +clone -background red -shadow 80x3+5+5  \) +swap -background none -layers merge +repage \) -composite \
    out.png