为什么 ImageMagick 无法读取我的机器上的任何字体?

为什么 ImageMagick 无法读取我的机器上的任何字体?

我正在试着跑步montage

montage `ls ?.png` `ls ??.png` -tile 6x3 -geometry 32x32 tile.jpg

但我收到了有关字体的错误。

montage: unable to read font `(null)' @ error/annotate.c/RenderFreetype/1239.

为什么它不能读取任何字体?

有人建议我运行,montage -list font但它没有返回任何内容。我正在运行 OS X 10.11 和 ImageMagick 6.9.3-0。

答案1

直接回答我的问题,ImageMagick 需要一个type.xml包含机器上所有字体列表的文档。虽然这个列表似乎应该自动生成,但事实并非如此。

正如@AaronLayfield 上面提到的,有一种手动方式可以生成字体列表,如下所述这里。下面是我的解决方法:

  1. 将此 perl 脚本保存为imagick_type_gen.pl http://www.imagemagick.org/Usage/scripts/imagick_type_gen

  2. 打开终端并cd进入保存文件的目录,然后使用 更改文件的权限chmod 755 imagick_type_gen.pl

  3. .magick使用 在您的主目录中创建文件夹mkdir ~/.magick

  4. 运行脚本并使用 导出输出./imagick_type_gen.pl > ~/.magick/type.xml

现在它应该可以工作了。

相关内容