我正在使用以下命令生成优惠券图片。在我的开发环境中,我正在使用Ubuntu Server,在生产中我正在使用Centos 7.
convert
-font /some-path/Gotham-Ultra.ttf
-gravity center
-geometry +0-0
-background none
-gravity south
-fill #FC3B45
-size 330x90
caption:VIERNES
-font Helvetica-Bold
-gravity north
-background none
-pointsize 25
-fill #671646
-size 330x
caption:––––––––––––––––––––
-font /some-path/Gotham-Ultra.ttf
-gravity center
-background none
-fill #671646
-size 330x210
+pointsize
caption:4 EMPANADAS 2 PORCIONES DE ENSALADAS 2 REFRESCOS DE 355ML POR $195
-font Helvetica-Bold
-gravity north
-background none
-pointsize 25
-fill #671646
-size 330x
caption:––––––––––––––––––––
-append /some-path/canvas/yellow.png
+swap
-gravity center
-composite /some-path/photo.jpg
-crop 450x480+0+0
+swap
-append
/tmp/coupon_image20180212-7979-p52o3f.jpg
所以,我希望标题会根据给定的空间自动调整字体大小:http://www.imagemagick.org/Usage/text/#caption_bestfit
这是我在prod env中的输出:
Centos 7(制作)
我期待以下内容:
Ubuntu Server(Dev)
现在唯一的区别是ImageMagick版本:
PROD:
Version: ImageMagick 6.7.8-9 2016-06-16 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP
开发
Version: ImageMagick 6.7.7-10 2016-06-01 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP
你推荐什么人?我应该匹配版本吗? (降级生产) 还有其他选择吗?
答案 0 :(得分:1)
您的代码存在上述问题。在Unix上,您需要行尾\
。你已经列出了photo.jpg,但提供了img.jpg。你最后使用了-append,但它应该是+ append。在Unix上,您必须提供有关标签文本和十六进制颜色的引号。因此,您的代码的正确列表如下所示。根据需要更改文件的路径和名称以及字体路径。
convert \
-font /Library/fonts/Gotham-Ultra.ttf \
-gravity center \
-geometry +0-0 \
-background none \
-gravity south \
-fill "#FC3B45" \
-size 330x90 \
caption:VIERNES \
-font /Library/fonts/Helvetica-Bold.ttf \
-gravity north \
-background none \
-pointsize 25 \
-fill "#671646" \
-size 330x \
caption:"––––––––––––––––––––" \
-font /Library/fonts/Gotham-Ultra.ttf \
-gravity center \
-background none \
-fill "#671646" \
-size 330x210 \
+pointsize \
caption:"4 EMPANADAS 2 PORCIONES DE ENSALADAS 2 REFRESCOS DE 355ML POR $195" \
-font /Library/fonts/Helvetica-Bold.ttf \
-gravity north \
-background none \
-pointsize 25 \
-fill "#671646" \
-size 330x \
caption:"––––––––––––––––––––" \
-append \
yellow.png \
+swap \
-gravity center \
-composite \
photo.jpg \
-crop 450x480+0+0 \
+repage \
+swap \
+append \
coupon_image20180212-7979-p52o3f.jpg
我将图像放在与运行命令行相同的目录位置。我还在作物后添加了+ repage。
然而,IM 6.7.8.9是错误的。我可以为该版本重现您的不良结果。我得到了IM 6.9.9.34 Q16 MacOS Sierra,当前版本以及IM 6.7.7.10和IM 6.8.6.8(我使用的下一个版本)的正确结果。事实证明,IM 6.7.8.9在很多方面都是错误的。在我看来,对于Linux发行版来说,这是一个糟糕的选择。如果可能的话,你应该考虑升级。