【问题标题】:Imagemagick fonts not found in OSX在 OSX 中找不到 Imagemagick 字体
【发布时间】:2015-09-06 07:48:06
【问题描述】:

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

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

如何让 Imagemagick 找到这些字体?

【问题讨论】:

标签: macos imagemagick homebrew


【解决方案1】:

Nevillethis post 中给出了对我有用的解决方案:

  1. 创建 imagemagick 配置文件夹:mkdir ~/.magick
  2. this Perl script另存为/tmp/script.pl
  3. 使脚本可执行:chmod +x /tmp/script.pl
  4. 在本地运行脚本并将输出重定向到文件type.xml in ~/.magick: /tmp/script.pl > ~/.magick/type.xml

这解决了字体问题,而installing fonduimagemagick pkg 文件和其他一些技巧却没有。

太棒了!现在我可以用图像大小和分辨率来注释一些flickr cats(我想要这个来为我正在开发的应用程序找到最佳分辨率)。

【讨论】:

  • 不幸的是,这似乎没有获得 TTC 字体
  • 在 OSX 10 上,我发现我必须编辑脚本以包含 /System/Library/Fonts 以及 /Library/Fonts。将第 482 行的查找从 find /Library/Fonts -type f -name '*.*' 更改为 find /Library/Fonts /System/Library/Fonts -type f -name '*.*'
【解决方案2】:

采用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 现在应该可以看到您在系统上安装的字体了。

【讨论】:

  • 这似乎获得了系统安装的字体,但不是我作为用户安装的字体。该脚本似乎也没有采用任何参数来解决此问题。还要检查 ~/Library/Fonts 有多难?
  • 这适用于 Homebrew;接受的答案没有。谢谢。
  • @badkya 我安装了 Ghostscript (brew install gs),然后它确实输出了一个字体列表。
  • @Smek brew install gs 为我完成了这项工作,您应该将其发布为答案 ;)
  • 自 Catalina 以来,macOS 字体已移动,因此脚本需要更新以查看 /System/Library/Fonts - 它出现在脚本的两个位置(撰写本文时的第 478 和 482 行)
【解决方案3】:

解决此问题的最简单方法是将您需要的字体复制到 ~/ 文件夹或脚本所在的任何位置,然后提供直接路径:

convert -font "~/MyFont.ttc"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-18
    • 1970-01-01
    • 2013-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-27
    相关资源
    最近更新 更多