使用ImageMagick的从右到左的文本

时间:2013-05-20 13:55:41

标签: linux imagemagick command-line-interface

我看到imagemagick support right-to-left scripts such as Hebrew and Arabic的较新版本。精细的手册提到direction标志,但没有提供法律论据的例子。不接受明显的猜测,例如rtlreverseright-to-leftdirection标志的法律论据是什么?

$ echo "שלום, עולם" | convert -background white -fill black -font Arial -direction reverse -pointsize 20 label:@- hello.png
convert.im6: unrecognized direction type `reverse' @ error/convert.c/ConvertImageCommand/1227. 

$ convert --version
Version: ImageMagick 6.7.7-10 2012-08-17 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP

3 个答案:

答案 0 :(得分:4)

选项-direction right-to-left不适用于阿拉伯语/波斯语。 ImageMagick中的right-to-left无法使用阿拉伯语等连接词/格式语言。

我不知道其他从右到左的语言,例如乌尔都语,但我确定您可能希望重塑文字,然后再将其传递给ImageMagick。对于 Java Better-Arabic-Reshaper), Python arabic_reshaper)。

答案 1 :(得分:3)

对于带有ImageMagic的阿拉伯语文本,可以使用“caption:”和“label:”,“-direction right-to-left”。但是,这会为独立字符选择字形,而不是连接字符。

最简单的解决方案似乎是“pango:”,其中“ - 从右到左”是不需要的。

convert -gravity Center -size 200x200 -fill black -font Arial -pointsize 50 pango:“سلام”arabic_r5.png

OR

convert -gravity Center -size 200x200 -fill black -font Arial -pointsize 50 pango:@ utftext.txt arabic_r5.png

enter image description here

来源:http://multipole.org/discourse-server/viewtopic.php?f=1&t=26611

答案 2 :(得分:1)

论点应为right-to-left。我使用ImageMagick 6.8.5-7(在Windows上)尝试了以下命令并且它可以工作:

convert -background lightblue -fill blue -pointsize 48 -font Arial -direction right-to-left label:"ABCDEFG" A2G_reversed2.png

convert -version
Version: ImageMagick 6.8.5-7 2013-05-19 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2013 ImageMagick Studio LLC
Features: DPC OpenMP