我已经使用 安装了 weasyprint pip install weasyprint
,据我了解,它应该安装必要的依赖项。
不知何故,由 weasyprint 生成的 PDF 输出不包含任何字体,并且所有字符都被框替换。
打开文档时,我可以看到没有嵌入任何字体。我还可以通过输入python -m weasyprint.navigator
终端并访问示例站点之一来重现该问题。下面是我的 weasyprint 安装呈现的维基百科主页。
什么可能导致这个问题,我该如何解决它?
我已经使用 安装了 weasyprint pip install weasyprint
,据我了解,它应该安装必要的依赖项。
不知何故,由 weasyprint 生成的 PDF 输出不包含任何字体,并且所有字符都被框替换。
打开文档时,我可以看到没有嵌入任何字体。我还可以通过输入python -m weasyprint.navigator
终端并访问示例站点之一来重现该问题。下面是我的 weasyprint 安装呈现的维基百科主页。
什么可能导致这个问题,我该如何解决它?
看来问题出在字体上。可能,您没有在服务器中安装正确的字体。在 linux (ubuntu) 中,您可以运行此命令以使用此命令安装推荐的字体。
sudo apt-get install texlive-fonts-recommended
要管理字体,请使用:
sudo apt-get install fontconfig
fc-*
我使用命令行工具在 MacOS 上修复了这个问题。您可以使用brew install fontconfig
.
fc-list
以列出系统上安装的字体fc-cache -v
看看fontconfig在系统上查找字体的地方# note: change `alex` to your user name
sudo mkdir /Users/alex/.fonts
sudo cp /Library/Fonts/Microsoft\ Sans\ Serif.ttf /Users/alex/.fonts
fc-cache -vf
fc-list
我也遇到过同样的问题,我认为是缺少字体导致了这个问题,最后我在/usr/share/fonts/
文件夹中添加了一个字体解决了这个问题。
我遇到了完全相同的问题,谷歌将我引向了这个话题。我想确认问题出在我的 Linux Docker 映像中缺少字体。
将缺少的字体安装到您的系统中。在我的操作系统上没有安装任何字体。