为什么fontmagick的字体列表是空的?
我正在尝试使用ImageMagick将一些文本添加到图像。 但是我发现它总是说我指定的字体不存在。 仔细阅读手册后,我注意到我可以使用convert -list font
输出所有可用的字体,但尝试后我发现可用字体列表是空的。
这是我得到的:
shell$ convert -list font shell$
感谢您的任何提示。
我只是设法告诉ImageMagick有关我的OSX系统上的字体是这样的:
# Make a new directory for ImageMagick local settings and cd into it mkdir ~/.magick cd ~/.magick # Grab script to find all fonts on system and store them in a config file curl http://www.imagemagick.org/Usage/scripts/imagick_type_gen > type_gen # Run script, telling it where my fonts are and create "type.xml" file with list find /System/Library/Fonts /Library/Fonts ~/Library/Fonts -name "*.[to]tf" | perl type_gen -f - > type.xml # Go to ImageMagick config folder - see note at end to find correct folder cd /usr/local/Cellar/imagemagick/6.8.9-1/etc/ImageMagick-6 # Edit system config file called "type.xml" and add line near end to tell IM to look at local file we made in earlier step <typemap> <include file="type-ghostscript.xml" /> <include file="~/.magick/type.xml" /> ### THIS LINE ADDED ### </typemap>
如何为您的type.xml
文件find正确的文件夹
系统和版本之间存储type.xml
的文件夹可能会有很大差异。 我知道find它的最好方法是运行以下命令来查看ImageMagick正在查找的位置:
convert -debug configure -list font 2>&1 | grep -E "Searching|Loading" Searching for configure file: "/usr/local/Cellar/imagemagick/6.9.5-0/share/ImageMagick-6/type.xml" Searching for configure file: "/usr/local/Cellar/imagemagick/6.9.5-0/lib/ImageMagick//config-Q16/type.xml" Searching for configure file: "/usr/local/Cellar/imagemagick/6.9.5-0/etc/ImageMagick-6/type.xml" Searching for configure file: "/usr/local/Cellar/imagemagick/6.9.5-0/share/doc/ImageMagick-6/type.xml" Searching for configure file: "/Users/mark/.config/ImageMagick/type.xml" Searching for configure file: "/Users/mark/.magick/type.xml" Loading type configure file "/usr/local/Cellar/imagemagick/6.9.5-0/etc/ImageMagick-6/type.xml" ... Loading type configure file "/usr/local/Cellar/imagemagick/6.9.5-0/etc/ImageMagick-6/type-apple.xml" ... Loading type configure file "/usr/local/Cellar/imagemagick/6.9.5-0/etc/ImageMagick-6/type-ghostscript.xml" ... Loading type configure file "/Users/mark/.magick/type.xml" ...
所以有很多地方可以插入字体。 一般来说,如果您select以/etc
或/usr/local
开头的文件夹,则所有用户和Web服务器中的脚本都可以使用这些字体 – 如果需要的话。 另一方面,如果你只是一个用户,你可能更喜欢将字体configuration文件保存在login目录中,例如$HOME/.magick/type.xml
。