5

我刚刚将 wkhtmltopdf 从 0.9.9 更新到 0.11.0 rc1(下载了二进制文件,然后移至 /usr/bin/wkhtmltopdf-new 中的 /usr/bin/wkhtmltopdf 来自存储库的那个)

如果我运行 /usr/bin/wkhtmltopdf-new 我会得到非常大的字体作为结果/如果我运行 /usr/bin/wkhtmltopdf 我会得到正常的结果。

使用相同 HTML 的示例 这是一个 0.9.9 http://dl.dropbox.com/u/1990697/0.9.9.pdf 的文档 具有 0.11.0 rc1 的相同文档http://dl.dropbox.com/ u/1990697/0.11.0.pdf

我想达到 0.9.9 的结果

有任何想法吗?

干杯...

4

1 回答 1

7

显然,这是 QT 的一个问题,可能需要一段时间才能解决

一种解决方法是使用 OTF 格式字体

@font-face {
    font-family: 'mysans';
    src: url(/path/to/myfont.otf);
}

最后,还有一个在线服务可以将 TTF字体转换为 OTF 字体。

因此,目前最好的解决方法似乎是:将您的字体作为 TTF,使用上述服务将其转换为 OTF,然后按照上面的说明使用它。

在一个应用程序中,我既向浏览器提供 HTML,又将其呈现为 PDF。在这种情况下,我使用一些服务器端逻辑来生成一个带有 WOFF 的 Web 字体标签以传递给浏览器,以及一个带有 OTF 的 Web 字体标签来传递给 wkhtmltopdf。

OTF 字体起作用的原因是它们或多或少地嵌入在 PDF 中,并且QT 错误与将非 OTF 字体渲染到 PDF中有关。

于 2012-05-11T17:15:15.800 回答