Pad*_*han 25 html css wkhtmltopdf
我一直在尝试使用Helvetica字体创建pdf,但字体不会反映在pdf中.
我做了一些谷歌并找到了一些解决方案,但没有一个是可行的.
尝试过的解决方案1
我在这里发现了类似的东西: 字体问题
尝试了那里提到的最后一个解决方案
解决方法是在你的css中定义@ font-face并将src链接到wkhtmltopdf可访问的外部主机
但解决方案不起作用.
尝试解决方案2 我也尝试使用谷歌字体API,但结果仍然无法使用. helvetica字体
试过的解决方案3 我尝试使用css属性@page.但那也行不通.
什么是可行解决方案的方法.
Arm*_*n H 29
修复wkhtmltopdf字体问题的最简单方法是对字体进行Base64编码(可以使用此工具)并将其包含在CSS中:
@font-face {
font-family: 'Helvetica';
src: url(data:font/truetype;charset=utf-8;base64,AAEAAAATAQA...
}
Run Code Online (Sandbox Code Playgroud)
这适用于所有字体(包括Google字体),并保证跨不同机器和操作系统的跨平台兼容性.
对我来说,从Google字体加载字体不起作用.将base64ed二进制文件放入CSS文件对我来说似乎有点太多了(韩文类型是几兆字节).我建议安装您需要在机器上使用的字体.对于Ubuntu,您只需从Google Fonts下载字体文件,然后将文件复制到$HOME/.fonts目录并fc-cache在命令行中运行命令以重建字体列表.
$ mkdir ~/.fonts
$ copy your-font-file.ttf ~/.fonts/
$ fc-cache -fv
Run Code Online (Sandbox Code Playgroud)
对于Rails应用程序,您可以进行符号链接
$ ln -s /your/app/root/assets/fonts ~/.fonts
Run Code Online (Sandbox Code Playgroud)
然后,您将能够列出所有可用的字体.
$ fc-list
Nimbus Sans L:style=Regular Italic
URW Palladio L:style=Roman
Century Schoolbook L:style=Bold Italic
Nimbus Sans L:style=Bold
URW Chancery L:style=Medium Italic
Nimbus Roman No9 L:style=Regular
Century Schoolbook L:style=Bold
Century Schoolbook L:style=Italic
Nimbus Sans L:style=Regular
....
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24685 次 |
| 最近记录: |