evince可以讀大部分中文PDF文檔的。升級之後,發現無法閱讀china-pub的PDF電子書,僅顯示文檔中的英文和圖片內容,中文部分空白。按照網上的方法安裝了poppler-data以及xpdf-chinese-simplified後仍然無法正常顯示,中文顯示為方塊。

於是聯想到應該是字體設置問題。搜索後發現和flash的中文問題如出一轍,fonts配置文件中sans-serif部分將英文字體設置在中文字體上面,flash10會取優先級最高的英文字體,而又不會像其他linux程序那樣取候補的中文字體,導致出現中文方塊口口問題。Flash Player 10.1 此問題已經修復。evince還存在此問題,於是得到解決辦法。

sudo gedit /etc/fonts/conf.d/69-language-selector-zh-cn.conf

<fontconfig>
<match target=”pattern”>
<test qual=”any” name=”family”>
<string>serif</string>
</test>
<edit name=”family” mode=”prepend” binding=”strong”>
<string>DejaVu Serif</string>
<string>AR PL UMing CN</string>
<string>AR PL UKai CN</string>
<string>AR PL ZenKai Uni</string>
<string>AR PL ShanHeiSun Uni</string>
<string>Bitstream Vera Serif</string>
<string>WenQuanYi Bitmap Song</string>
</edit>
</match>
<match target=”pattern”>
<test qual=”any” name=”family”>
<string>sans-serif</string>
</test>
<edit name=”family” mode=”prepend” binding=”strong”>
<string>WenQuanYi Bitmap Song</string>
<string>AR PL UMing CN</string>
<string>AR PL UKai CN</string>
<string>AR PL ZenKai Uni</string>
<string>WenQuanYi Zen Hei</string>
<string>Bitstream Vera Sans</string>
<string>AR PL ShanHeiSun Uni</string>
<string>DejaVu Sans</string>
</edit>
</match>
<match target=”pattern”>
<test qual=”any” name=”family”>
<string>monospace</string>
</test>
<edit name=”family” mode=”prepend” binding=”strong”>
<string>DejaVu Sans Mono</string>
<string>Bitstream Vera Sans Mono</string>
<string>WenQuanYi Bitmap Song</string>
<string>AR PL UMing CN</string>
<string>AR PL UKai CN</string>
<string>AR PL ZenKai Uni</string>
<string>WenQuanYi Zen Hei</string>
<string>AR PL ShanHeiSun Uni</string>
</edit>
</match>
</fontconfig>

注意藍色修改部分,即將第一個sans-serif字體改為中文字體。