PDF中文显示

出自Linux Wiki

在2012年2月10日 (五) 04:53由Chenxing (讨论 | 贡献)所做的修订版本

Linux阅读PDF时中文显示不正常的原因主要有二:一是系统字体配置有问题,二是没有安装相应的中文字体。本文将分别介绍解决方案,适用于Evince和Okular:

目录

修改字体配置

在中国知网、万方数据库上下载的一些论文没有明确指定字体,系统选用英文字体显示它们,于是导致中文无法显示。要解决这一问题,需要修改系统的字体配置,一般是/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>

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

安装中文字体

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

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

实际上,Evince是以Poppler为解析PDF后端的,而Poppler已经提供了包含中文字体在内的包poppler-data,所以只要安装poppler-data,中文显示问题就可解决。

Debian/Ubuntu

poppler-data处在Debiannon-free仓库和Ubuntumultiverse仓库中,一般可以用apt-get直接安装:

apt-get install poppler-data

其它发行版

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

# make install datadir=/usr/share
Hint.gif
提示:
有关其它PDF阅读器,请参见PDF阅读器

参考资料

  1. Ubuntu Wiki上的介绍
个人工具
简体繁体转换