LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: euboy

Xft2美化mandrake9.1

[复制链接]
 楼主| 发表于 2003-5-4 13:34:46 | 显示全部楼层

英文字体确实还不是一般很完美

不过这种方法不会带来什么后遗症,系统原来的字体照常可用.这点我觉得很棒,其次它还在发展中,前景很好。这里有个讨论区:
http://www.linuxfans.org/nuke/mo ... =viewforum&f=22
 楼主| 发表于 2003-5-4 13:37:31 | 显示全部楼层

下面文章为firefly所做

發表於: 星期四 二月 06, 2003 11:30 pm    文章主題: 中文字型完全解決方案 PART II(搶鮮速報)   

--------------------------------------------------------------------------------

由於 XFree86 將? 4.3 版開始,加入 fontconfig 以及 Xft 字型技術,與 XFree86 原本的核心字型技術(XLFD)?K存,在可預見的將?恚貢有愈?碛嗟膽贸淌綍P棄古老的 XLFD 字型引擎,改採全新的 fontconfig & XFt 當作預設的字型引擎,所以,必須?早了解新的字型技術,到底有什麼優點。

我利用了新年假期,仔細地研究了 fontconfig & Xft,?K且完成了適用?喼薜貐^的 patch,由於研究過程的資料很繁雜,一時之間,無法做一個有系統的整理,先跟各位報告我所完成的部份:

一、解決字型破碎的根本問題。
我簡單地修改了 freetype2,將 BYTECODE INTERPRETER 給 enable。

二、增加 Xft 所缺少的粗體、粗斜體顯示。
由於 Xft 本?砭蜎]有粗體相關的設計,所以我修改了 fontconfig 的設定檔(/etc/fonts/fonts.conf),增加『偽粗體』的設定,?K且對 Xft 的字型載入程式動手腳,將粗體字向右 shift 一點(pixel),讓字看起?砭拖裾娴淖兇忠粯樱裕曳Q之為『偽粗體』。

三、解決某些字型字距過大的問題。
不論是否開啟了 antialias 都不會再有字型變形的問題。字距過大是因為某些字型的英數字型是固定字距,但因為含有 CJK 字型,所以系統會以 CJK 字型的寬度,當作英數字型的寬度,造成半形的英數字跟全形 CJK 字型一樣寬,這裡,我是修正 Xft,讓 Xft 將之當作可變字距解決的。

四、讓字型名稱(family name)可以具有英文名稱以外的名稱。
這麼說,可能還不是很清楚,我說明白一點好了,也就是像 M$ windows 一樣,可以看到?K使用中文的字型名稱,想像一下,您也可以告訴系統,我要用『新細明體』而不用像以前一樣,只能用『PMingLiU』這個名稱而已,再精確一點地說,字型系統可以同時接受『PMingLiU』以及『新細明體』這兩種名稱,字型系統會知道這指的是同一個字型,?K不會發生錯?y。

看起?砗孟癫皇呛苤匾挥弥形淖中兔Q,不是也可以用得很好嗎?是的,大多數的情況下,用不用中文名稱的確不是很重要,but!您要知道,很多人可能會使用數種或是數十種的字型,?碜龊唸蠡蚴敲佬g方面的工作,您能單?挠⑽淖中兔Q看出那是哪一種字體嗎?我想,應該很難吧!如果將英文字型名稱換成中文呢?是不是就一目了然了^^,所以讓我花費最多心力的,反而是這部份。

我寫『中文字型完全解決方案』的目的,?K不是教大家如何去 patch 程式,或是修改一堆設定檔;想想,您為什麼要浪費時間在解決字型的問題上!您?K不想做一個字型的專家,卻被逼得不得不去了解系統字型運作原理,這是何苦?碓眨。繛槭颤N就不能像 Windows 一樣,將字型 copy 到系統 fonts 目錄就馬上能使用?是的 fontconfig 的出現,就是要朝這個方面邁進。

如何使用 fontconfig?fontconfig ?棄了傳統 XLFD 的方式,您?K不需要自己去設定字型的詳細資料,只要簡單地將字型檔,複製到 /usr/share/fonts/ 之下,然後再下指令 fc-cache 即可,它會包辦一切後續動作,?K且字型立即生效,不需要像過去一般,結束階段作業,才能使用新字型。

看起?硪磺卸己芡昝啦皇菃幔咳欢懿恍业兀琭ontconfig 以及 Xft ?K未對?喼薜貐^的字型做完整的支援,如果(我是說如果)您仔細看過 fontconfig & Xft 的原始碼,您就知道,一切仍以西方世界主觀價值為主,身為?喼奕说奈覀儯闷?砜偸遣淮髮ξ叮挥凶约簞邮至恕

我一直沒有提到如何設定 fontconfig?其?,我不願意讓大家動手修改設定檔,真的,意義不大,增加困擾而已,我已經將大部分應該人工設定的部份,加入 fontconfig 的程式中,所以不需要再動手改它。

至於 Xft 部份,由於屬於系統層,不會與使用者直接接觸,所以,我就略過不提。

我 Patch 過的套件可以在這裡找到:
http://firefly.idv.tw/setfont-xft/RPMS/
想研究的話,Source RPMS 在這裡:
http://firefly.idv.tw/setfont-xft/SRPMS/

一定要更新的套件如下,如果您使用 GNOME 當作桌面環境,那麼以下三個套件就可以了。
http://firefly.idv.tw/setfont-xft/RPMS/freetype-2.1.3-3.i386.rpm
http://firefly.idv.tw/setfont-xft/RPMS/fontconfig-2.1-8.i386.rpm
http://firefly.idv.tw/setfont-xft/RPMS/Xft-2.1-5.i386.rpm



如果您用 KDE 3.0 以上,又想看到中文的字型名稱,請繼續下載以下兩個套件:
http://firefly.idv.tw/setfont-xft/RPMS/qt-3.1.1-5.i386.rpm
http://firefly.idv.tw/setfont-xf ... ork-0.49-3.i386.rpm

※※ 請注意!安裝過程如果出現相依性套件,多半是缺少了 xxxx-devel ,請下載缺少的套件即可,不必到處找。

※※ 目前只有 RedHat 8.0 的套件,如果您?K非使用 RedHat 8.0,請勿安裝,但您可以下載 Source RPMS,針對您的版本,略做更改重新編譯即可。

看螢幕快照在這裡:
http://firefly.idv.tw/setfont-xft/

好了,希望大家試用看看,如果有其他意見或更好的建議,請不吝賜教
发表于 2003-5-6 13:39:56 | 显示全部楼层

为什么我安装了以后鼠标就变成了“手表”

我安装了对于KDE需要的所有rpm,然后我的鼠标在启动后就变成了“手表”。不仅是在桌面上,而且在菜单上,列表框上。而且在登录界面上(KDM),默认鼠标从“指针”变成了“大叉”。这样一来造成我很大的麻烦:很多东西点不准。不知该如何是好。
不过在图标上,输入框里,鼠标指针还是会依旧变为“手形”和“I形”的。
 楼主| 发表于 2003-5-6 21:25:42 | 显示全部楼层
你在控制中心设置试试
发表于 2003-5-9 23:17:46 | 显示全部楼层
这个美化方法很简单,对初学linux的弟兄帮助很大。

多谢。
 楼主| 发表于 2003-5-13 13:57:56 | 显示全部楼层

上一贴没有附件

附件在这里

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2003-5-13 22:45:54 | 显示全部楼层

不知道如何更改这个主题的第一帖!

rt
发表于 2003-6-15 21:40:33 | 显示全部楼层
我装过一次有一个“幼圆”的字体不错,怎么这里没看到,还是这里就没有?
 楼主| 发表于 2003-6-16 13:19:13 | 显示全部楼层
你需要什么字体就到windows下找
这个方法装什么字体都行。我就装了
不少艺术字体。
发表于 2003-7-7 02:49:03 | 显示全部楼层
顶,强烈支持呀!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表