如何让CSS字体与这个Grails PDF呈现插件一起工作?



我正在使用Grails渲染插件生成PDF。

我想在我的PDF中包含CSS来很好地渲染它。我在渲染插件网站

上找到了一个例子

我把下面的CSS放在印刷媒体中,以便它适用于PDF,但这对我不起作用。我也不知道如何将字体从Arial改为另一种字体。有人能给我解释一下吗?

插件使用Arial字体,CSS:

@font-face {
  src: url(path/to/arial.ttf);
  -fs-pdf-font-embed: embed;
  -fs-pdf-font-encoding: cp1250;
}
body {
  font-family: "Arial Unicode MS", Arial, sans-serif;
}

您需要arialunit .ttf,而不仅仅是arialunit .ttf,在这里下载:http://www.findthatfonts.com/search-2683324-hTTF/fonts-download-search-engine-ARIALUNI.ttf.htm

然后

你必须给你的@font-face一个像这样的font-family名称:

@font-face {
font-family: "Font-Name";
  src: url(path/to/font.ttf); // you have to add your font.ttf file to the server in a folder like assets/css/fonts or something.
  -fs-pdf-font-embed: embed;
  -fs-pdf-font-encoding: cp1250;
}
body {
  font-family: "Font-Name", Arial, sans-serif; // you called your font Font-Name in the @font-face so now you can use it as Font-Name everywhere else in you css.
}

否则你的arialunit .ttf没有名字,所以你不能在css的其他div中使用它

下一个对我来说很好:

@font-face {
   font-family: 'Calibri';
   src: url(${grailsApplication.config.grails.serverURL}/fonts/calibri.ttf);
   -fs-pdf-font-embed: embed;
   -fs-pdf-font-encoding: Identity-H;
}

-fs-pdf-font-encoding应设置在Identity-H中。在它之后你可以添加像

这样的东西
 body {
    font-family: 'Calibri';
 }

给字体取什么名字并不重要,只要在@font-face括号之间为src选择一个名字就行,比如font-family: "SomeName";。现在,你可以在任何地方使用font-family: "SomeName"字体

相关内容

  • 没有找到相关文章

最新更新