1

我正在使用 ImageMagick 的convert -annotate命令将文本渲染为 PNG。现在我想减少字距,即字母之间的间距。这可以在 IM 中使用类似的选项来完成-kerning -2

不幸的是,这个选项完全覆盖了字体的默认字距,所以现在所有字母的边界框都有相同的距离,即使在字母组合“AV”这样的情况下,它们应该重叠。

有没有办法让 IM 首先应用默认字距调整,但将结果间距减小例如 2px,而不是在任何地方使用相同的间距?

如果做不到这一点,是否有替代命令行(或 Ruby)工具可以将自定义字体的文本呈现为 PNG,同时支持所需的行为?

4

3 回答 3

2

如果您有更高版本的 Imagemagick > 6.7.6-3,那么有一个新功能(我认为它只适用于 Linux 机器)可能能够做您想做的事情。我还没有检查出来:http ://www.imagemagick.org/Usage/text/#pango

于 2012-05-05T10:44:05.380 回答
1

此问题已在 ImageMagick 6.8.9-6 Beta 中修复。

于 2014-07-27T08:23:27.013 回答
0

设置起来需要更多的工作,但最近我一直在提倡那些想要进行服务器端文档渲染的人在 SVG 中构建它们并使用 Inkscape 将它们转换为位图。我很确定这个功能是受支持的(给自己一个副本并在 UI 中检查 - 如果它在那里,你可以做到)。

您需要对操作 XML 文档充满信心——一旦您开始学习基本的 SVG,就非常容易学习。

于 2012-05-05T17:13:56.770 回答