【问题标题】:Drupal wkhtmltopdf font errorDrupal wkhtmltopdf字体错误
【发布时间】:2015-12-10 13:02:40
【问题描述】:

我在 Drupal 中使用 wkhtmltopdf 库。我遇到的问题是字体在 PDF 视图中的显示方式。每次我将 HTML 页面转换为 PDF 时。 PDF 文本(p 标签)以wingdings 字体显示。

在我附在上面的图片中,您将看到一个 PDF 视图,其中显示了wingdings 中的 p 标签,并且 h1 和 h2 文本以 droid serif 显示。

在玩过 CSS 之后,我奇怪地发现如果我将字体粗细更改为 600 并超过 PDF 视图中的字体显示。这就是显示 h1 + h2 文本的原因。

我的 CSS 非常基础

body, p, p a {
  font-family: "Droid Serif", "Georgia", serif;
  font-style: normal;
  font-weight: 400;
  }

【问题讨论】:

    标签: html css fonts drupal-7 wkhtmltopdf


    【解决方案1】:

    我了解所使用的字体在 PDF 视图中未被识别。所以我研究了为什么字体样式会显示在转换后的 PDF 中。我决定遵循这个 [fix] [1 font not working in wkhtmltopdf]。

    在这个解决方案中,它提到了使用 Base64 编码字体,然后将其与 CSS 一起使用。我尝试了各种方法将字体类型编码为 Base64 并将它们添加到样式表中。我在这方面的所有尝试似乎都失败了。

    所以我放弃了,我决定研究使用 Google 字体。我去了谷歌字体页面。通过阅读它的工作原理,我制定了以下 css 规则;

    @import url(//fonts.googleapis.com/css?family=Droid+Serif|Georgia:400);
      body, p, p a {
      font-family: "Droid Serif", "Georgia", serif;
      }
    

    CSS 规则 sn-p 给了我我想要的结果。该字体似乎没有受到损害,并且看起来与原始网页完全相同。这就是我想要的:>)

    【讨论】:

      【解决方案2】:

      当我们只在我们的一个 Centos 服务器上安装这个时,这是由于缺少字体。奇怪的是粗体字,大字就可以了,就是带翅膀的普通文字!!

      yum install dejavu-sans-fonts
      

      真正解决我们所有字体问题的是:-

      yum install ghostscript
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-12-22
        • 2015-08-19
        • 2013-01-06
        • 2012-10-15
        • 1970-01-01
        • 1970-01-01
        • 2013-08-23
        相关资源
        最近更新 更多