我有一个页面,我只在Chrome中使用一堆自定义字体进行渲染:
@font-face{ font-family: BodyFont; src: url('fonts/font.ttf'); }
浏览器完美呈现一切。但是,当我尝试将其打印为PDF时,有两个问题:
Chrome的“打印预览”有时不会在某些字体中显示文字,或者会破坏它。此视图将传递给我使用的任何打印设备。关闭/重新打开选项卡不会更改预览。但是,重新启动浏览器会。
无论我做什么,我都无法生成嵌入了字体的PDF。我尝试过Chrome的“保存到PDF”,它会生成Adobe Acrobat无法打开的PDF。各种PDF打印机(如Adobe)不会生成嵌入了这些字体的PDF,即使用标准网络字体替换@font-face
也会产生嵌入字体。
对这两个问题的任何帮助表示赞赏。
答案 0 :(得分:3)
在CSS或HTML中注释媒体查询,重新打开浏览器,它会在打印预览中加载网络字体,然后重新添加媒体查询部分,它就可以工作。
我从这里找到了这个解决方法:@font-face embedded fonts do not show up in a print preview
答案 1 :(得分:0)
尝试在打印时加载默认字体。将以下行添加到您的CSS并尝试。
@media print {
body {
font-family: Arial, Helvetica, sans-serif;
}
}