我在更大的命令行中有以下 Imagemagick 命令行。我正在尝试将此文本覆盖在图像上。它工作得很好,直到我添加
-rotate 90
然后它会将整个图像旋转 90°。我只想将此文本旋转 90°,没有别的。我将此行放在括号中,但没有运气。任何建议将不胜感激
" \( -background transparent -fill 'rgba(255,255,255,.3)' -gravity south -rotate -90 -pointsize 70 -font 'High_School_USA_Serif.ttf' \
-annotate +350+40 '#66789' \) ";
下面的完整评论行(更新/简化)...
"convert -size 1800x1800 xc:'#0080ff' ../trait_assets/clothes/F.A.S.T._Suit.png -composite
\( ../trait_assets/name_patch.png -font 'High_School_USA_Serif.ttf' -fill white -pointsize 150 -gravity center \
-draw \"text 0,20 'JACKSON'\" \ -matte -virtual-pixel transparent -resize 210x -gravity south -geometry -94+80 \
-background 'rgba(0,0,0,0)' -rotate -2 \) -composite
\( -background transparent -fill 'rgba(255,255,255,.3)' -gravity south -pointsize 60 -font 'High_School_USA_Serif.ttf' \
-annotate -70+6 \"#6577\" \)
temp_images/main.png "
通过谷歌来到这里寻找同样的问题。尝试在 ImageMagic 文档中跟踪 OP 中的有用注释,并在 命令行选项索引,“-annotate”部分:
中找到它-annotate degrees text -annotate XdegreesxYdegrees text -annotate XdegreesxYdegrees{+-}tx{+-}ty text -annotate {+-}tx{+-}ty text
用文本注释图像
这可以方便地用文本注释图像。为了更精确地控制 文本注释,使用-draw。
X 度和 Y 度值控制应用于文本的剪切,而 tx 和 ty 是给出文本相对于任意重力设置的位置的偏移量, 默认为图像的左上角。
使用 -annotate Degrees 或 -annotate Degreesx Degrees 会产生文本的未剪切旋转。 [...]
如果省略 tx 和 ty,它们默认为 0。这使得文本的左下角变成图像的左上角,这可能是不可取的。在这种情况下添加 -gravity 选项会带来不错的结果。
所以你基本上必须写
convert in.png -annotate 90 "my text" out.png
将文本置于左上角并旋转 90 度或
convert in.png -annotate 90x90+10+10 "my text" out.png
另外给予一些补偿。在第二种变体中,如果您不重复“90”,而是给出两个不同的数字,则按照引用页面上找到的方程式,您将得到扭曲的文本
(x', y') = (x, y) * [cos a, sin a ; -sin b, -cos b]
。
示例:
convert -gravity center -pointsize 30 -size 300x300 canvas:white \
-annotate 0 test1 \
-annotate 50 test3 \
-annotate 60x60+100+100 test3 \
-annotate 60x90-100+100 test4 out.png