在OSX中找不到Imagemagick字体

时间:2015-09-06 07:48:06

标签: macos imagemagick homebrew

尝试在ImageMagick中向图像添加注释时,它失败并显示以下消息:

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

如何让Imagemagick找到这些字体?

2 个答案:

答案 0 :(得分:5)

适用于我的解决方案由Neville中的this post提供:

  1. 创建imagemagick配置文件夹:mkdir ~/.magick
  2. this Perl script保存为/tmp/script.pl
  3. 使脚本可执行:chmod +x /tmp/script.pl
  4. 在本地运行脚本并将输出重定向到type.xml中的文件~/.magick/tmp/script.pl > ~/.magick/type.xml
  5. 这解决了字体问题,而installing fonduimagemagick pkg文件和其他一些技巧都没有解决。

    大!现在我可以使用图像大小和分辨率注释一些flickr cats(我希望这可以为我正在处理的应用找到最佳分辨率)。

    enter image description here

    enter image description here

    enter image description here

答案 1 :(得分:0)

采用Adam Matan的答案,这就是我如何使其与安装有homebrew的macOS 10.12+上的imagemagick 7+一起使用的方式。 (这还假设您已安装perl。)

  1. 下载perl script并将其保存到/usr/local/bin/imagick_type_gen

  2. 使脚本可执行:

    • chmod +x /usr/local/bin/imagick_type_gen
  3. 通过运行convert -list font | grep Path查找imagemagick的字体路径。这应该返回imagemagick寻找字体的地方。对我而言,苹果的道路是这样的:

    • /usr/local/Cellar/imagemagick/7.0.7-22/etc/ImageMagick-7/type-apple.xml
  4. 运行imagick_type_gen并将输出定向到上面的路径:

    • imagick_type_gen > /usr/local/Cellar/imagemagick/7.0.7-22/etc/ImageMagick-7/type-apple.xml
  5. 运行convert -list font | less以查看imagemagick将使用的字体名称,例如,某些字体将被标记为GeorgiaB而不是Georgia Bold。 (点击q退出)

imagemagick现在应该可以看到系统上已安装的字体。