【发布时间】:2011-02-18 05:47:26
【问题描述】:
如果允许,我会添加 500 个我自己的代表作为赏金。
我正在使用wkhtmltopdf 将 HTML 网页转换为 PDF。这在我的 32 位开发服务器上完美运行 [不幸的是,我无法运送我的机器 :-p ]。但是,当我部署到 Web 应用程序的 64 位服务器时,会显示以下错误: (从 cmd.exe 运行)
C:\>wkhtmltopdf http://www.google.com google.pdf
Loading pages (1/5)
QFontEngine::loadEngine: GetTextMetrics failed () ] 10%
QFontEngineWin: GetTextMetrics failed ()
QFontEngineWin: GetTextMetrics failed ()
QFontEngine::loadEngine: GetTextMetrics failed ()
QFontEngineWin: GetTextMetrics failed ()
QFontEngineWin: GetTextMetrics failed ()
QFontEngineWin: GetTextMetrics failed ()
QFontEngine::loadEngine: GetTextMetrics failed () ] 36%
QFontEngineWin: GetTextMetrics failed ()
QFontEngineWin: GetTextMetrics failed ()
// ...etc....
然后 PDF 被创建并保存...只是没有文本。所有表单域、图像、边框、表格、div、spans、ps 等都被准确呈现……根本没有任何文本。
服务器信息:
Windows edition: Windows Server Standard Service Pack 2
Processor: Intel Xeon E5410 @ 2.33GHz 2.33 GHz
Memory: 8.00 GB
System type: 64-bit Operating System
谁能告诉我发生了什么以及如何解决这个问题?
另外,我不确定用什么来标记/标题这个问题......所以如果你能想到更好的标签/标题评论它们或编辑问题。 :-)
【问题讨论】:
-
您是否将应用程序作为服务运行?服务并不总是可以访问屏幕,因此获取字体的文本度量可能会失败。尝试以交互方式运行应用程序,看看它是否有效。
-
我不确定。我该怎么做?
-
64 位和 32 位是否有不同的二进制文件?如果您不知道,您可以在您的服务器上运行 32 位二进制文件。此外,服务器可能缺少所需的字体。
-
有一个 Windows 安装程序....所以我使用了它,它默认安装到 /Program Files (x86)。所以我认为只有 32 位版本。
-
我检查了字体,它们就在那里。即使在加载文本文件时,它也会失败并显示相同的错误消息。
标签: windows 64-bit 32-bit 32bit-64bit wkhtmltopdf