我在 Ubuntu 9.04 上的 Firefox 3.5 中将网页打印为 PDF 文档。我将其通过电子邮件发送给一个在 Windows XP pro 上使用 Adobe Reader 打开 PDF 的人。他们告诉我,打开 PDF 文档时出现以下错误。
无法提取嵌入字体“LiberationSerifRegulator”。某些字符可能无法正确显示或打印。
有没有办法用特定字体将网页打印为 pdf 文件?如果可以,那么哪种字体比较好用,以便文档可以在其他操作系统上无错误地读取?
答案1
Firefox 打印生成的 PDF 文档并不完全符合 PDF 规范,但仍然可以读。
但实际问题在于用户用来查看 PDF 的 Adobe 版本。Adobe 已解决该问题。
包含缺少运算符的 Type 3 字体的 PDF 文档不符合 PDF 规范。这些不合规的 PDF 文档通常由第三方产品生成。尝试打开文档时,用户会看到一条错误消息“无法提取嵌入字体‘F0’。某些字符可能无法正确显示或打印。”PDF 文档在 Reader/Acrobat 7.x 中可以正确打开,但在 8.0 或 8.1 中则不行。根本原因是 Type 3 字体不符合 PDF 规范,该规范要求每个 Type 3 字符过程中都必须有“d0”或“d1”运算符。在 7.x 版本中,如果未显示有问题的字符,则 PDF 文档可以正常打开。即使未显示字符,8.0 版本也会捕获此错误。更新后的行为将在字符过程为空时忽略缺少的运算符。
解决方案:更新 Adobe Reader。
答案2
PDF 在所有平台上的显示效果通常都是一样的,所以这并不是字体选择的问题。这可能是您的 PDF 打印机设置的问题,您应该寻找一个导出字符字形的设置(这会使您的文件稍微大一些,但不再要求字体存在于用户的系统中)。