linux 麒麟系统修复 wmf2gd 转换 wmf 图片提示 wmf_ipa_font_map 错误
以下是我的转换命令
./wmf2gd -t png -o 1.png image.wmf
报错信息如下
ERROR: font.c (1334): wmf_ipa_font_map: failed to load *any* font!
查阅本文下方的参考文档了解到,这是因为 wmf 尝试去读取 gsfonts 字体失败
我尝试使用 ls /usr/share/fonts/type1 命令了解到我当前的麒麟系统没有安装 gsfonts 字体
于是我就直接去 ubuntu 源下载 gsfonts 字体,下载代码如下
wget https://cn.archive.ubuntu.com/ubuntu/pool/universe/g/gsfonts/gsfonts_8.11%2Burwcyr1.0.7~pre44-4.5_all.deb
下载之后,使用如下代码进行安装
sudo dpkg -i gsfonts_8.11+urwcyr1.0.7~pre44-4.5_all.deb
安装之后即可正常使用 wmf2gd 转换 wmf 为 png 图片
这个过程中,我尝试用了 --wmf-fontdir 参数,发现是没有什么作用的,其命令如下
./wmf2gd -t png -o 1.png --wmf-fontdir=/usr/share/fonts/type1/gsfonts image.wmf
但如果自己将 gsfonts 解压出来,将 pfb 等字体放在自己的文件夹,再使用 --wmf-fontdir 设置到自己的文件夹,这是有用的,如以下示例命令
./wmf2svg --wmf-fontdir=/home/lindexi/linux-64/fonts -o 1.svg ~/sync/lin64/image.wmf
注: 请不要使用 ~ 路径作为 --wmf-fontdir 参数,如以下命令是错误的
# 以下命令是错误的,不应该使用 ~/xx 的路径,应该使用绝对路径
./wmf2svg --wmf-fontdir=~/linux-64/fonts -o 1.svg ~/sync/lin64/image.wmf
本文的所有方法对 wmf2svg 等工具同样生效
参考文档:
ERROR: font.c (1334): wmf_ipa_font_map: failed to load any font! · Issue #25 · kakwa/libvisio2svg
Convert WMF file fails - Legacy ImageMagick Discussions Archive
Bug #629153 “wmf2XXX tools fail due to defoma font issue” : Bugs : libwmf package : Ubuntu
[solved] wmf2svg: failed to load any font - debianforum.de
gsfonts usage in ImageMagick - Legacy ImageMagick Discussions Archive
博客园博客只做备份,博客发布就不再更新,如果想看最新博客,请访问 https://blog.lindexi.com/
如图片看不见,请在浏览器开启不安全http内容兼容

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名[林德熙](https://www.cnblogs.com/lindexi)(包含链接:https://www.cnblogs.com/lindexi ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我[联系](mailto:lindexi_gd@163.com)。

浙公网安备 33010602011771号