cht電腦資訊Linux
adm Find login register

evince 讀取中文 pdf

Solomon

joined: 2008-02-27
posted: 78
promoted: 22
bookmarked: 3
1subject: evince 讀取中文 pdfPromote 0 Bookmark 02009-06-03quote  

之前才發現 evince 可以顯示 PDF 中的中文字,只要安裝了 xpdf-chinese-traditional 套件(debian),還有 poppler-data。如此一來便可以顯示中文字。

後來發現有的 PDF 檔的中文字會變成每一筆的筆畫大小不同,導致整個中文字的顯示是不利閱讀的。

令我不解的是,這一個 PDF 檔案透過 evince 來觀看 PDF 的字型屬性發現,全部都是嵌入字體。我一直以為全部嵌入會讓 PDF 顯示正常,但是似乎事情不是我所想像的。

同樣的檔案使用 Foxit Reader Linux 版本來開啟,則顯示一切正常。本想 evince 可以正常開啟,加上速度快,應該是很好的選擇,不過卻碰上了不知該如何處理的 PDF 檔案。

不知是否有任何的解決方法,可以讓 evince 正確的顯示。

EDIT:

xpdf 可以正確顯示,我後來發現我講的筆畫大小不同應該跟其他人說的中文破碎是同一件事。

edited: 1
本人已不在此站活動

joined: 2007-09-19
posted: 4946
promoted: 325
bookmarked: 206
歸隱山林
2subject: Promote 0 Bookmark 02009-06-03quote  

是 FreeType2 如何編譯的問題。像我的 Zenwalk 的 evince 就不會出現破碎。

目前 Vista 開始的中文字型都不採取特殊組字方式造字了,所以,這個問題將來應該會漸漸走入歷史。


ychao
joined: 2007-10-25
posted: 298
promoted: 21
bookmarked: 3
3subject: Promote 0 Bookmark 02009-06-03quote  
問題還是FreeType2編譯的時候,有沒有開BCI的選項。
Solomon

joined: 2008-02-27
posted: 78
promoted: 22
bookmarked: 3
4subject: Promote 0 Bookmark 02009-06-04quote  

這個我昨天有抓 debian 的 source package 回來看,想說可以自己重編,不過似乎 debian 已經打開了。所以就沒有重編試看看。

有兩個 patch 在 %FREETYPE-SRC%/debian/patches-freetype/

1.  freetype-bytecode-interpreter.patch

-/* #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
+#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER

 

2.  enable-full-bytecode-interpreter

-#define TT_CONFIG_OPTION_UNPATENTED_HINTING
+/* #define TT_CONFIG_OPTION_UNPATENTED_HINTING */

 

第一個 patch 是打開的,請問是第二個 patch 關掉的原因嗎? 因為 patch 檔的名字是 enable-full-bytecode-interpreter,但是內容卻是拿掉 DEFINE,

本人已不在此站活動

joined: 2007-09-19
posted: 4946
promoted: 325
bookmarked: 206
歸隱山林
5subject: Promote 0 Bookmark 02009-06-04quote  

1 才是打開 TTF bytecode。但很久沒有追他的 list,可能要詳看 header file 的註解說明,看是否需要配合其他的條件。

另外,xpdf/evince 或其所依賴的 lib,可能需要重編譯(evince 我不清楚,像純 xpdf 要重編譯才行)。

BTW,gs8 已把 TTF bytecode 整合進去,所以用 gs8/gv 瀏覽這種 PDF 就可以了。


cht電腦資訊Linux
adm Find login register
views:10628