既然 Nathan 承认他只“熟悉”图像-flip
并且-flop
只对图像“熟悉”,那么让我们向他展示如何使用它来在未更改的图像上获得翻转和翻转的文本注释。
看这两个例子:

左边是普通文本,右边是镜像文本(左右镜像 - 如果他想要这个,或者如果他想要上下镜像,Nathan 没有回答这个问题)。
它是怎么做的?
左侧图像的注释是使用以下命令完成的:
convert \
logo: \
-fill white \
-undercolor '#00000080' \
\( \
-gravity west \
-pointsize 32 \
-annotate +0+40 \
" Dude! Listen, don't argue... " \
\) \
-scale 310x \
normal.png
所以这个结果是下一步的基础。在下一步中,我们将修改此命令以创建镜像文本注释。但是,由于我们不能直接编写镜像文本,所以我们使用了众多技巧中的一种:
- 首先镜像图像(first
-flop
)。
- 在镜像图像上写入普通文本。
- 将生成的图像再镜像一次(秒
-flop
)。这边走...
- ...主图像恢复正常,
- ...注释文本现在被镜像。
这导致了左图的注释命令:
convert \
logo: \
-flop \
-fill white \
-undercolor '#00000080' \
\( \
-gravity east \
-pointsize 32 \
-annotate +0+40 \
" Dude! Listen, don't argue... " \
\) \
-flop \
-scale 310x \
mirrored.png
容易吧?
(请注意我们还必须如何将重力从西向东更改,以便文本出现在同一个位置......)
现在将这个算法翻译成 Minimagick 的语言是 Nathan 自己的工作。