wkhtmltopdf 在哪里寻找 Debian 上的字体?
Where does wkhtmltopdf look for fonts on Debian?
这与(并且源于相同的问题)密切相关
但我认为这本身就是一个有效的问题。如 link 中所述,我正在尝试使用 wkhtmltopdf(通过 Debian 中的命令行)将多语言 utf-8 html 文档转换为 pdf。一些语言没有正确呈现并显示为白色或黑色矩形,大概是因为 wkhtmltopdf 无法找到或访问必要的字体。
问题:wkhtmltopdf 在系统 (Debian) 的哪个位置查找字体,以及如何检查它正在查找的字体 (如果可能的话)给定一个特定的命令?
字体在/usr/share/fonts/
.
下
此命令显示命令 foo
访问的字体。
strace -e open -o >(sed -n '/^open("\/usr\/share\/fonts\//p') foo
strace
显示系统调用。 -e open
表示只显示打开文件的系统调用。 -o >(sed -n '/^open("\/usr\/share\/fonts\//p')
表示将输出输出到 sed,它仅打印出系统调用以打开 /usr/share/fonts/
.
中的文件
对于某些程序,打开详细输出并检查其 stderr 是否说明使用的字体是很有用的。
对于您的具体问题,还要检查是否正确指定了 HTML 文件的编码。
以strace
的输出为例
open("/usr/share/fonts/X11/Type1/n019004l.pfb", O_RDONLY) = 8
它的格式与您在 c 程序中使用 open
的格式相同。 /usr/share/fonts/X11/Type1/n019004l.pfb
是文件的路径。 O_RDONLY
表示以只读方式打开。 8
表示操作成功,得到的文件描述符为8。参考open man page。
这与(并且源于相同的问题)密切相关
但我认为这本身就是一个有效的问题。如 link 中所述,我正在尝试使用 wkhtmltopdf(通过 Debian 中的命令行)将多语言 utf-8 html 文档转换为 pdf。一些语言没有正确呈现并显示为白色或黑色矩形,大概是因为 wkhtmltopdf 无法找到或访问必要的字体。
问题:wkhtmltopdf 在系统 (Debian) 的哪个位置查找字体,以及如何检查它正在查找的字体 (如果可能的话)给定一个特定的命令?
字体在/usr/share/fonts/
.
此命令显示命令 foo
访问的字体。
strace -e open -o >(sed -n '/^open("\/usr\/share\/fonts\//p') foo
strace
显示系统调用。 -e open
表示只显示打开文件的系统调用。 -o >(sed -n '/^open("\/usr\/share\/fonts\//p')
表示将输出输出到 sed,它仅打印出系统调用以打开 /usr/share/fonts/
.
对于某些程序,打开详细输出并检查其 stderr 是否说明使用的字体是很有用的。
对于您的具体问题,还要检查是否正确指定了 HTML 文件的编码。
以strace
的输出为例open("/usr/share/fonts/X11/Type1/n019004l.pfb", O_RDONLY) = 8
它的格式与您在 c 程序中使用 open
的格式相同。 /usr/share/fonts/X11/Type1/n019004l.pfb
是文件的路径。 O_RDONLY
表示以只读方式打开。 8
表示操作成功,得到的文件描述符为8。参考open man page。