首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PDF格式的字母定位和字体错误

PDF格式的字母定位和字体错误
EN

Ask Ubuntu用户
提问于 2018-05-02 19:26:18
回答 1查看 1.7K关注 0票数 12

我正在使用Ubuntu18.04并填写SS-5社会保障管理表格。然而,有些字母的位置是错误的。

3.28.2-1:

Okular 1.3.3 (Ubuntu版本4:17.12.3-0ubuntu1):

xpdf 3.04-7:

mudpdf 1.12.0:

Firefox 59.0.2内置的PDF阅读器:

内置的PDF阅读器的铬65.0.3325.181:

下面是pdffonts的输出:

代码语言:javascript
复制
$ pdffonts ss-5.pdf
name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
IHPIKC+ArialMT                       CID TrueType      Identity-H       yes yes yes    824  0
ArialMT                              TrueType          WinAnsi          no  no  no     826  0
Arial-BoldMT                         TrueType          WinAnsi          no  no  no     828  0
CourierStd                           Type 1            WinAnsi          no  no  no     145  0
Helvetica                            Type 1            WinAnsi          no  no  no     197  0
MyriadPro-Regular                    Type 1            WinAnsi          no  no  no     198  0
ZapfDingbats                         Type 1            ZapfDingbats     no  no  no     199  0

我已经安装了ttf-mscorefonts-installerpoppler-data软件包。

以下是我的问题:

  • 是否可以更改用于填写窗体单元格的字体?看起来,Evince和xpdf使用的是可变宽度的字体,而它们应该使用的是单间距字体,这可能是导致定位问题的原因。
  • 如果我要提交一个bug报告,我应该把它作为poppler问题、fontconfig问题还是其他什么问题来提交呢?

更新: bug报告:

编辑:@xiota的解决方案功能非常完善。但是,在poppler中,这仍然是一个bug,因为当PDF查看器由于原始字体没有嵌入而替换不同的字体时,XFA表单中的间距应该与替代字体匹配,而不是原始字体。有一个拉请求来修复目前正在进行的这个问题。Poppler (@haxtibal)在一个不同的错误报告中描述了这种方法:

策略是,如果没有嵌入字体,则收集并使用来自实际替代字体的度量,而不是PDF字体描述符或硬编码字体的度量。

EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2020-10-24 14:56:54

这个问题应该是Ubuntu下一个版本中的修补 (21.04)。还有一个上游的fontconfig合并请求#128挂起。

您所观察到的The问题是由不正确的字体替换引起的。我的计算机上的 、CourierStd和ZapfDingbats被替换为Ubuntu. ,这显然不会正确地呈现。

要纠正这一点:

  • 安装fonts-urw-base35. This应该更正Dingbat和大多数其他pdf字体替换。然而,CourierStd替换并不是固定的,因为它不在配置文件中。
  • 要更正CourierStd,请创建包含以下内容的文件~/.config/fontconfig/conf.d/10-pdf-aliases.conf: <别名binding=“同”> Courier Std <D8>速递 Courier StdD8><D8>单步 然后运行fc-cache (可能不需要)。您可以根据需要向文件中添加其他字体别名。

另请参阅:

票数 8
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1031235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档