分页: 1 / 1

PDF 阅读器找不到字体 Helvetica

发表于 : 2010-03-01 21:29
lilydjwg
已经安装了该字体,fc-cache 过也重启过,fc-list 里也有,但无论是 Adobe Reader 还是 evince 或者 Foxit 都找不到此字体。字体未嵌入到 PDF。

Re: PDF 阅读器找不到字体 Helvetica

发表于 : 2010-03-02 15:59
bodhi
core字体里面好像也有Helvetica,是点阵字体。

fontconfig默认配置里面可能有将Helvetica自动替换为arial等的配置。

查看 /etc/fonts/conf.d/里面有没有链接到以下文件的文件:
/etc/fonts/conf.avail/29-replace-bitmap-fonts.conf

查看该文件,里面有没有替换Helvetica的内容。

Re: PDF 阅读器找不到字体 Helvetica

发表于 : 2010-03-02 19:58
lilydjwg
bodhi 写了: 查看 /etc/fonts/conf.d/里面有没有链接到以下文件的文件:
/etc/fonts/conf.avail/29-replace-bitmap-fonts.conf
没有该文件。

另外,在其它程序和 PDF(XeTeX 生成,内嵌字体)文件中并无异常。

还有,Adobe Reader 说那个文件中的字体类型是 Type 1,不是 TrueType,这是怎么回事?

Re: PDF 阅读器找不到字体 Helvetica

发表于 : 2010-03-02 20:18
honghong

代码: 全选

/etc/fonts/conf.d/49-sansserif.conf
看下是不是这个文件被你删了

Re: PDF 阅读器找不到字体 Helvetica

发表于 : 2010-03-03 0:53
bodhi
文末的内容懒得删了,但是无关紧要。 :em04

在 ubuntu 和 我自己的arch上面做了个比较。

分别用ooo打开同一文档(文本字体为hel),显示当然都是一样的,用的是 hel 字体的normal样式。

分别导出pdf,设置都是 tagged 仅做标记而不嵌入字体。

之后各自查看,之后交换查看。期间我给ubuntu装了 okular,这个阅读器可以直接显示tagged类字体调用了哪个本地字体文件。

结果是:

两个pdf在ubuntu下显示用的是 hel bold,加粗样式的那个 sub family。

arch 下面显示准确,用的是 hel 常规体 normal 。

如果你也是用的ooo,如果矛盾的根源是不知道如何嵌入字体,那么可以选择 导出pdf,并选定 pdf/a-1。这样就可以嵌入hel字体了(这是hel自己的原因,其他自己只要不选择tagged便会嵌入,应该是矢量字体不同标准或者字体信息内的嵌入授权设置造成的)

关于字体嵌入,可以看一下 adobe 的简要声明 http://www.adobe.com/cn/aboutadobe/anti ... #section-2

据此,这应该是个技术活儿 不光是口头协议的东西。



=================================

你的意思是“做了一个文档,文本字体为 helvetica,输出为pdf,pdf设置为字体标记而不内嵌”

但是阅读pdf的时候却没有用helvetica显示。

是么?

我前文的想法是,linux x core 字体里面有点阵的helvetica,他默认用户不安装同名的矢量字体,当文档向fontconfig索要helvetica的时候他无法使用点阵字体来显示,于是使用29那个配置来用arial替换helvetica进行显示。不过刚找了一台ubuntu发现默认没有点阵的helvetica,我错了。

那么你用下面的命令看一下提供helvetica字体的字体文件是不是你安装的那个:

代码: 全选

fc-list : family file | grep -i helvetica
另外,如果我上面的理解没错,你用什么制作的源文件+不嵌入字体输出PDF。

我刚才在一台ubuntu上安装helvetica字体、使用ooo制作文档其文本用字为helvetica、输出pdf(设置为 tagged PDF 只标记不嵌入字体子集),得到的文档可以正确找到本地的hel字体并显示无误。

Re: PDF 阅读器找不到字体 Helvetica

发表于 : 2010-03-03 0:54
bodhi
honghong 写了:

代码: 全选

/etc/fonts/conf.d/49-sansserif.conf
看下是不是这个文件被你删了
这个涉及的是筛选字体并分类吧。

Re: PDF 阅读器找不到字体 Helvetica

发表于 : 2010-03-03 12:31
bodhi
刚才又试了试,发现调用 hel bold 显示 hel regular 不是ubuntu的问题,是字体问题。

我用的这套是从mac转换来的,换做灵狗斯自己出的那套就没事了 :em05

Re: PDF 阅读器找不到字体 Helvetica

发表于 : 2010-03-03 13:18
lilydjwg
谢谢各位!

我用Ooo自己制作文件测试,又用 Okular 查看,看来是那个 PDF 文档本身的问题。
Ooo tagged PDF 输出的正常,但那个出问题的 PDF 虽然调用的是正确的 Helvetica 字体文件,但依旧无法显示相关文本,控制台输出一大串错误信息:

代码: 全选

Error (86213): No font in show 
Error: font resource is not a dictionary 
Error: Unknown font tag 'T1_3' 
Error (95523): No font in show 
Error: Unknown font tag 'T1_3' 
Error (95539): No font in show 
Error: Bad annotation destination 
Error: font resource is not a dictionary 
Error: Unknown font tag 'T1_3' 
Error (95523): No font in show 
Error: Unknown font tag 'T1_3' 
Error (95539): No font in show 
那个文件是从网上下载的,制作者是 Advanced PDF Repair: http://www.pdf-repair.com,现在在 Foxit Reader 下可以显示,但宽度貌似不对,有时和后面的字有重叠。