=?UTF-8?B?UmU6IEV2aW5jZSDkuK3mlofnoLTnoo7llY/poYwgKFJleCBUc2FpKQ==?=



在 2010年10月6日下午4:44,Yuan Chao <yuanchao gmail com> 寫道:
> 2010/10/6  <gnome-tw-list-request gnome org>:
>
>> From: Rex Tsai <chihchun kalug linux org tw>
>> To: gnome-tw-list <gnome-tw-list gnome org>
>> Subject: Evince 中文破碎問題
>
>> 查找了一下,中文字顯示破碎的問題是 Bug,應該要被修正。
>
>> 這個問題斷斷續續的出現了許久[1],查找的過程中也看到 Yuren Ju 曾經回報過問題[2]
>> 目前字型破碎 (測試檔[3])的問題主要是 FreeType2 的 hinting  問題,詳細請見 FreeType2 的 bug
>> reprot[4] 與 mpsuzuki 的說明[5]。
> 這個是很久的問題了,主要的原因是在於例如細明體等字型,使用byte code筆劃組字節省空間。
> (Google Droid Font則是以索引方式取用部件,不需要bytecode處理個別筆劃大小)
> 但是因為先前true type font render的bytecode interpreter (BCI)專利的關係,
> freetype在大多數distro都是關閉的。(開啟需從原始碼重新編譯)
> bytecode通常用在hinting處理,印象中開啟slight-hint/auto-hint也會關閉BCI。
> *但這並不是hinting的關係,而是bytecode interpreter必須開啟!*
> 今年初所有相關的專利都已經過期了,freetype的BCI也從新版開始預設開啟。
> 不清楚各distro的配合情況?
> http://freetype.sourceforge.net/patents.html

2.4.0 之後,FreeType2 已經預設編譯時開啟 bytecode interpreter.
但 FreeType2 現在應是選擇性開使用 bytecode interpreter 做 hinting,
即盡量不用專利技術,但是那些不開會爛得字型則例外處理[2][3]。

請參考前信引用 freedesktop mailing list, 解決問題的方式不難[4],只是在決定再那一層解決。

[1] http://git.savannah.gnu.org/cgit/freetype/freetype2.git/tree/include/freetype/freetype.h#n1032
[2] http://git.savannah.gnu.org/cgit/freetype/freetype2.git/tree/src/truetype/ttobjs.c#n148
[3] http://git.savannah.gnu.org/cgit/freetype/freetype2.git/tree/include/freetype/freetype.h#n1052
[4] a quick hack to fix the issue -
http://img401.imageshack.us/img401/4822/screenshotiy.png

-Rex


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]