我正在一个网站上工作,那里的用户会经常从网站上打印页面,以便给那些没有互联网访问权限的人。当打印在用户办公室的打印机上时,有些文本出现了乱码:

这应该是说降低了票价和免费乘车计划,芝加哥交通管理局。
我的第一个想法是,这与我们使用的字体有关,所以我将文本改为font-family: 'Times New Roman', serif。谷歌的一些研究让我认为这些字体设置得到了广泛的支持,不应该引起问题,但我们的用户仍然有问题。
即使你不知道如何解决这个问题,我也希望你能给我一些建议
更新
该页面是从浏览器中打印出来的,对于这个特定的用户组来说,浏览器是IE8。我不知道他们用的是什么版本的Windows。我已经在一台带有IE8的Windows机器上测试了这个问题,但是无法重现这个问题。因此,虽然浏览器可能是一个因素,但我不认为这是唯一的因素。
第二次更新
我们使用的字体是巴斯克维尔,我们正在通过Google加载它。它在屏幕上显示得很好,实际上我们客户办公室的一些打印机没有打印任何问题。只有当打印在词汇标记MS410dn上时,文本才会出现混乱。
发布于 2020-06-15 05:59:13
我看到了同样类型的打印错误。我在Windows 10上使用Libre Baskerville字体在Indesign中创建了一个PDF。当我试图使用预览在OSX上打印PDF时,我得到了上面看到的相同的乱码。我通过卸载Libre Baskerville字体(这是Truetype格式)和以Opentype格式安装Libre Baskerville字体并在文档中重置字体来修复它。似乎很管用。
发布于 2015-03-31 19:42:59
最后,最简单的解决方案是使用不同的字体进行打印。这个问题只发生在一些特定打印机上的Libre字体上,因此在我们的print.css样式表中,我们只使用一个基本的serif字体。不太理想,但至少打印出来的文字是清晰的。
在最初的帖子中,我说我尝试过在打印中切换字体,用户仍然有问题。结果发现,这是由于print.css样式表的缓存所致,所以这个修复确实解决了这个问题。
从长远来看,我们可能会找到一种字体,在他们所有的打印机上一致工作,并将网站切换到同样的位置。
发布于 2017-11-13 16:28:45
为了记录在案(以及任何以类似问题阅读这篇文章的人),我在笔记本电脑上用LibreOffice打印了一份用LibreOffice写的文档。字体嵌入RTF和PDF格式,文本以同样的方式被混淆。我还通过改变字体来解决这个问题。这是一个遗憾,因为LibreBaskerville是一个不错的字体。
https://stackoverflow.com/questions/28748925
复制相似问题