PDF中文显示

此页由Linux Wiki用户Chenxing于2012年12月18日 (星期二) 07:58的最后更改。 在lzh和Linux Wiki用户Badguy的工作基础上。

出自Linux Wiki

提示:此文已超过 12 年(4388 天)未更新,如发现内容过时或有误,欢迎改进:)

Linux阅读PDF时中文显示不正常的原因主要有二:一是系统字体配置有问题,二是没有安装相应的中文字体。本文将分别介绍解决方案,只要依次按说明操作,EvinceOkular等Linux下常用的PDF阅读器就可以阅读中文了。

Hint.gif
提示:
应注意中文无法显示问题与“乱码”问题的区别。中文无法显示、或显示为方框一般由字体原因导致,但中文显示为乱码则一般由编码问题导致。

目录

安装中文字体

多数中文PDF文档都已经内嵌了中文字体,这样显示PDF的软件无需预装字体就可以显示PDF中的中文。但也有部分PDF文件没有内嵌字体,这就导致了中文无法正常显示的问题。

正因如此,解决这一问题也变得简单起来:只需要安装字体即可。

实际上,当下流行的PDF软件,如Okular、Evince等是以Poppler为解析PDF后端的,而Poppler中文字体包通常打包在poppler-data中,所以只要安装poppler-data,中文显示问题就可基本解决。

Ubuntu/Debian

poppler-data就在UbuntuDebian仓库中,可以用apt-get直接安装:

apt-get install poppler-data

其它发行版

可以在Poppler的主页上直接下载poppler-data-0.2.1.tar.gz。解压后使用以下命令安装:

# make install datadir=/usr/share

修改字体配置

在中国知网、万方数据库上下载的一些论文没有明确指定字体,系统选用英文字体显示它们,于是导致中文无法显示。要解决这一问题,需要修改系统的字体配置,一般是/etc/fonts/conf.d/49-sansserif.conf[1]

一种比较简便的方法是直接删除/etc/fonts/conf.d/49-sansserif.conf

# rm /etc/fonts/conf.d/49-sansserif.conf

如果不想这么做,也可以将/etc/fonts/conf.d/49-sansserif.conf

<edit name="family" mode="append_last">
     <string>sans-serif</string>
</edit>

改成

<edit name="family" mode="append_last">
    <string>文泉驿正黑</string>
</edit>

其中“文泉驿正黑”也可被其它所安装的中文字体代替。

Hint.gif
提示:
有关其它PDF阅读器,请参见PDF阅读器

参考资料

  1. Ubuntu Wiki上的介绍

本文对您有帮助?分享给更多朋友!

反馈与讨论

发现文档不全面、有错误却没时间编辑文档?想分享自己的经验或见解?欢迎在此留言、讨论。
个人工具
简体繁体转换