html生成pdf字体错误,使用wkhtmltopdf时显示为PDF的错误字体

  • Post author:
  • Post category:其他


我正在使用wkhtmltopdf打印在反应html页面内生成的报告。对于所有的文本时,CSS有设置字体为’Open Sans’, sans-serif我的HTML里面我的头,我有以下加载开放Sans字体:使用wkhtmltopdf时显示为PDF的错误字体

这一切似乎当我在我的开发运行wkhtmltopdf做工精细机器,我得到的输出看起来像这样:

LjKtp.png

然而,我的服务器上(在Azure上运行的Azure的Web应用程序)我得到以下的输出:

5I9Z7.png

正如您所看到的,所有文本看起来都非常像素化,但由于某种原因,标题粗体除外。如果你看到粗体和普通文字,你也可以看到Open Sans字体没有被使用(最容易看到的是g)。

所以现在的问题是双重的:

为什么不打开Sans字体被在Azure上使用?

为什么文本像素化?如果我将’Open Sans’, sans-serif更改为sans-serif,它在浏览器中仍然可以使用默认的sans-serif字体。

感谢所有帮助!

编辑

一些额外的信息。本地PDF为23Kb,服务器PDF为207Kb。在服务器PDF上,只有粗体文本是可选的,而不是其他文本,所以看起来非粗体文本被视为图像,而不是实际文本。

此外,对于本地PDF是说在字体OpenSansRegular (Embedded Subset), Type: TrueType (CID), Encoding:Identity-H这似乎是合理的。但是,在服务器/ Azure PDF下,它显示在字体ArialBold (Embedded Subset), Type: TrueType (CID), Encoding:Identity-H下。

因此,出于某种原因错误的字体被嵌入,而非粗体文本被视为图像。

+0

似乎’字体没有安装,或者沙盒限制在Azure WebApp中并将默认值加载到Aria’。我也发现[smilar问题](https://social.msdn.microsoft.com/Forums/zh-CN/092760f0-8691-4207-b10a-fdc27f49c4f5/issue-generating-pdf-with-correct-font-on -azure-web应用程序?论坛= windowsazurewebsitespreview)。我们也可以将我们的[反馈](https://feedback.azure.com/forums/169385-web-apps)提供给Azure团队。 –

+0

关于此主题有任何更新吗? –