wkhtmltopdf在Debian上寻找字体的位置在哪里?

时间:2016-10-10 15:38:34

标签: utf-8 fonts debian wkhtmltopdf system-font

这与(与此问题相同)密切相关 What is the Debian equivalent of urw-fonts (needed for utf-8 in wkhtmltopdf)?

但我认为这本身就是一个有效的问题。如链接中所述,我尝试使用wkhtmltopdf(通过Debian中的命令行)将多语言utf-8 html文档转换为pdf。有些语言没有正确呈现并显示为白色或黑色矩形,可能是因为wkhtmltopdf无法找到或访问必要的字体。

问题:系统(Debian)上wkhtmltopdf查找字体的位置,如何根据特定命令检查它寻找的字体(如果可能) ?

1 个答案:

答案 0 :(得分:2)

字体位于mkdir

此命令显示命令/usr/share/fonts/访问哪些字体。

foo

strace -e open -o >(sed -n '/^open("\/usr\/share\/fonts\//p') foo 显示系统调用。 strace表示仅显示系统调用以打开文件。 -e open表示将输出输出到sed,它只打印系统调用以打开-o >(sed -n '/^open("\/usr\/share\/fonts\//p')中的文件。

对于某些程序,打开详细输出并检查其stderr是否有用,如果它说明使用了什么字体。

针对您的具体问题,还要检查是否正确指定了HTML文件的编码。

以strace

的输出为例
/usr/share/fonts/

它的格式与在c程序中使用open("/usr/share/fonts/X11/Type1/n019004l.pfb", O_RDONLY) = 8 的格式相同。 open是文件的路径。 /usr/share/fonts/X11/Type1/n019004l.pfb表示以只读方式打开它。 O_RDONLY表示操作成功,结果文件描述符为8.请参阅打开的手册页。