中文字幕人妻中文_99精品欧美一区二区三区综合在线_精品久久久久一区二区_色月丁香_免费福利在线视频_欧美大片免费观看网址_国产伦精品一区二区三区在线播放_污污污污污污www网站免费_久久月本道色综合久久_色69激情爱久久_尹人香蕉久久99天天拍_国产美女www_亚洲国产精品无码7777一线_五月婷婷六月激情_看免费一级片_精品久久久久久成人av_在线色亚洲_女人另类性混交zo_国产精品青青在线观看爽香蕉_人人澡人人添人人爽一区二区

主頁(yè) > 知識(shí)庫(kù) > Linux折騰記(四):Linux桌面系統(tǒng)字體配置詳解

Linux折騰記(四):Linux桌面系統(tǒng)字體配置詳解

熱門標(biāo)簽:岑溪電銷機(jī)器人 營(yíng)銷智能外呼系統(tǒng)口碑推薦 優(yōu)邁系統(tǒng)外呼顯示亂層 義烏市400電話辦理 布谷電銷機(jī)器人價(jià)格 怎么查看地圖標(biāo)注的地點(diǎn) 大連企業(yè)電銷機(jī)器人線路 電銷機(jī)器人錄音用什么軟件 上海電銷卡外呼系統(tǒng)供應(yīng)商

字體顯示效果測(cè)試

文字:


復(fù)制代碼
代碼如下:

這一段是為了測(cè)試宋體字的顯示效果,包括宋體里面自帶的英文字體,“This is english,how does it look like?”。這一行是小字。后面幾個(gè)字是加粗的宋體。標(biāo)點(diǎn)符號(hào)“,。:;!”
  這一段是為了測(cè)試黑體字的顯示效果,包括黑體里面自帶的英文字體,“This is english,how does it look like?”。這一行是小字。標(biāo)點(diǎn)符號(hào)“,。:;!”。微軟雅黑是什么樣子的呢“,。:!”?
  This paragraph shows how does serif english fonts look like,包括英文里面夾雜中文的顯示效果。Is serif same as Times New roman?
  This paragraph shows how does sans-serif english fonts look like,包括英文里面夾雜中文的顯示效果。Is sans-serif same as Arial?
  This paragraph shows how does ui fonts look like,還有專門的界面字體,比如Windows中的Tahoma字體:File->New->New Project。
    #include stdio.h>
    int main(){
      return 0;//很顯然這是為了測(cè)試等寬字體
    }/p> p>    #include stdio.h>  //觀察下面的代碼了解monospace是否等于Courier New
    int main(){
      return 0;
    }

字體的分類及其用途

  在文章最開(kāi)始的一個(gè)部分(也就是這部分之前的內(nèi)容),我特意寫了一些文字用來(lái)測(cè)試各種字體的顯示效果。這些測(cè)試文本我在HTML源代碼模式下經(jīng)過(guò)仔細(xì)修改。第1段的字體都是設(shè)置為宋體,包括其中的英文、小字及加粗的字。第2段除了最后一句外,其余的字體都設(shè)置為黑體,包括英文及小字;最后一句字體設(shè)置為微軟雅黑,是為了對(duì)比微軟雅黑和普通黑體的效果。第3段除了最后一句外,其余的字體都設(shè)置為Serif,包括其中的中文;最后一句字體設(shè)置為Times New Roman。第4段除了最后一句外,其余的是Sans-Serif,最后一句是Arial。第5段的字體都是設(shè)置為Tahoma。最后的兩塊代碼,第1塊代碼的字體設(shè)置為monospace,第2塊代碼的字體設(shè)置為Courier New。為什么這樣設(shè)置,我后面會(huì)配合圖片逐一講解。下面,需要先了解字體的分類及其用途。

  1、英文字體分為三類,分別是有襯線字體(serif)、無(wú)襯線字體(sans-serif)和等寬字體(monospace)。Serif是有襯線字體,意思是在字的筆畫開(kāi)始、結(jié)束的地方有額外的裝飾,而且筆畫的粗細(xì)會(huì)有所不同。Sans-serif就沒(méi)有這些額外的裝飾,而且筆畫的粗細(xì)差不多。在傳統(tǒng)的正文印刷中,普遍認(rèn)為襯線體能帶來(lái)更佳的可讀性(相比無(wú)襯線體),尤其是在大段落的文章中,襯線增加了閱讀時(shí)對(duì)字母的視覺(jué)參照。而無(wú)襯線體往往被用在標(biāo)題、較短的文字段落或者一些通俗讀物中。相比嚴(yán)肅正經(jīng)的襯線體,無(wú)襯線體給人一種休閑輕松的感覺(jué)。同時(shí),由于無(wú)襯線字體筆畫比較飽滿,所以比較適合電腦屏幕顯示,在印刷和打印中,可以用無(wú)襯線字體做標(biāo)題、加粗字體等表示強(qiáng)調(diào)。等寬字體就不用多說(shuō)啦,主要用于終端字體或編程。

  2、中文字體可以參照英文字體進(jìn)行分類,由于中文都是等寬的,所以就只需要區(qū)分有襯線(serif)和無(wú)襯線(sans-serif)。中文的宋體、仿宋就相當(dāng)于英文的serif,所以用于傳統(tǒng)印刷和打印效果比較好。而中文的黑體、楷體、圓體等字體相當(dāng)于英文的sans-serif,用于電腦屏幕的顯示效果比較好,也可以用在印刷和打印中做標(biāo)題和粗體字。

  3、Serif字體的經(jīng)典代表有Georgia和Times New Roman,sans-serif字體的經(jīng)典代表有Arial和Verdana,monospace字體的經(jīng)典代表有Courier New和DejaVu Sans Mono。

電腦中的字體顯示技術(shù)

  電腦中的字體既是一門藝術(shù),也是一門技術(shù)。要將屏幕上的字體顯示得好看難度可不小。字體可以表示為點(diǎn)陣(bitmap),也可以表示為輪廓(outline)。點(diǎn)陣字體不能縮放,輪廓字體可以隨意縮放。

  1、要獲得銳利清晰的效果,小字必須顯示為點(diǎn)陣(bitmap),大字可以顯示為輪廓;

  2、顯示輪廓字體時(shí),為了讓字體邊緣顯得比較光滑,需要對(duì)字體邊緣進(jìn)行抗鋸齒(anti-alias);

  3、為了獲得更好的效果,字體設(shè)計(jì)廠家在設(shè)計(jì)字體的時(shí)候,會(huì)對(duì)字體進(jìn)行微調(diào)(hinting)。字體微調(diào)是一項(xiàng)耗時(shí)耗力的工作,所以就產(chǎn)生了自動(dòng)微調(diào)技術(shù)(autohint);

  4、為了讓字體在液晶顯示器上獲得更好的效果(主要也是為了字體邊緣光滑),產(chǎn)生了次像素平滑技術(shù)(subpixle),微軟的ClearType技術(shù)也屬于次像素平滑技術(shù)的一種。所謂次像素,是指每個(gè)像素中的單獨(dú)的R、G、B分量,所以次像素平滑用好了,字體邊緣看起來(lái)會(huì)更平滑,如果用不好,字體邊緣就會(huì)顯得花花綠綠。也正是因?yàn)镃RT顯示器和液晶顯示器每個(gè)像素的組成方式不一樣,所以在CRT顯示器中不能開(kāi)次像素平滑。

  5、增加屏幕的dpi,可以增加畫字的像素,從而獲得更平滑的顯示效果。比如在傳統(tǒng)的96dpi的電腦顯示器上,一個(gè)9pt的字符用12個(gè)像素繪制,一個(gè)12pt的字符用16個(gè)像素繪制,使用輪廓字體確實(shí)很難做到平滑。但是在目前的安卓手機(jī)、蘋果iPad等設(shè)備上,高分辨率的潤(rùn)眼屏都在300dpi以上,畫一個(gè)12pt的字符可以用50多個(gè)像素,字體平滑自然不是問(wèn)題,根本不需要使用點(diǎn)陣、微調(diào)、抗鋸齒、次像素等技術(shù)。我認(rèn)為,隨著顯示器硬件技術(shù)的發(fā)展,以上技術(shù)都將成為浮云。

  以上圖片是字體測(cè)試段落在Win7系統(tǒng)中的顯示效果。除了標(biāo)題和小字外,其它的字體都是12pt。可以看到,12pt的宋體字和serif的英文字體顯示為點(diǎn)陣,所以獲得了清晰銳利的效果。而黑體、微軟雅黑和sans-serif字體都沒(méi)有點(diǎn)陣,但是由于sans-serif本身筆畫飽滿,所以也獲得了不錯(cuò)的顯示效果。據(jù)說(shuō)微軟雅黑每個(gè)字造價(jià)100美元,專為ClearType技術(shù)而設(shè)計(jì),但是從效果上看,并不比普通黑體強(qiáng)多少。

  前面講過(guò),serif和sans-serif是字體的分類名,而不是具體的字體名。Times New Roman是Windows下最經(jīng)典的serif字體,但是從上圖可以看出它并不是serif字體的首選字體,設(shè)置為serif的字體和設(shè)置為Times New Roman的字體顯示不一樣,但是都是很漂亮的有襯線字體,serif的中文選擇了一種和宋體不同的點(diǎn)陣字體。Arial字體是最經(jīng)典的無(wú)襯線字體,從圖中可以看出設(shè)置為sans-serif和設(shè)置為Arial的字體顯示效果相同。只是sans-serif的中文被宋體的點(diǎn)陣代替了。Tahoma字體的顯示效果和sans-serif只是寬度上略有不同,但是依然很飽滿。

  使用Ctrl+鼠標(biāo)滑輪可以縮放網(wǎng)頁(yè)。將網(wǎng)頁(yè)放大后顯示,可以查看輪廓字體的顯示效果,如下圖:

  (注意:我文中的圖片都不是原始大小,可以通過(guò)Ctrl+鼠標(biāo)滑輪放大后觀看,也可以在新窗口中打開(kāi)圖片觀看。)

Linux中的字體

  下面,通過(guò)大量的圖片直觀地感受不同的字體以及不同的字體顯示技術(shù)會(huì)帶來(lái)什么樣的效果。

  上圖是CentOS 5中的顯示效果,是不是覺(jué)得字體很虛?系統(tǒng)菜單中的字體倒是很銳利。其實(shí)在Fedora 9之前,Red Hat系列的Linux發(fā)行版中文字體顯示都很模糊。也正是因?yàn)檫@個(gè)原因,我曾經(jīng)有一段時(shí)間偏向于使用中科紅旗的Linux。CentOS中的字體顯示發(fā)虛的原因就是因?yàn)樗男∽譀](méi)有使用點(diǎn)陣。

  小字使用輪廓字體就會(huì)發(fā)虛,大字使用輪廓字體效果就要好得多。使用Ctrl+鼠標(biāo)滑輪將網(wǎng)頁(yè)放大,可以看到大字顯示很清晰飽滿。如下圖:

  CentOS 5中的字體顯示還有一個(gè)奇怪的現(xiàn)象,那就是它認(rèn)為serif的中文應(yīng)該是楷體,而且它的sans-serif也顯示的是有襯線字體,很顯然這是不對(duì)的。而且由于歷史的原因,它沒(méi)有黑體。如下圖:

  CentOS系統(tǒng)中對(duì)中文的支持主要依賴于2001年文鼎向開(kāi)源界貢獻(xiàn)的兩套字體:文鼎PL中楷和文鼎PL細(xì)上海宋,如下圖:

  下面來(lái)看看Ubuntu中的顯示效果。從下圖中可以看到,Ubuntu側(cè)重于sans-serif和黑體,除了明確指定serif和Times New Roman的字體外,其余全部顯示為sans-serif和黑體。而且沒(méi)有點(diǎn)陣。這進(jìn)一步印證了我前面說(shuō)的黑體適合屏幕顯示、宋體適合打印和印刷。在系統(tǒng)中全部顯示黑體雖然不會(huì)丟失文字的信息,但是肯定會(huì)影響美觀。Ubuntu沒(méi)有正確地為monospace選擇等寬字體,但是對(duì)Courier New倒是選擇了一個(gè)很漂亮的等寬字體進(jìn)行替代。

  使用Ctrl+鼠標(biāo)滾輪將網(wǎng)頁(yè)放大,看到清晰飽滿的字體,如下圖:

  對(duì)于界面字體,Windows下有Tahoma,Ubuntu下也有專用的界面字體,該字體就叫Ubuntu,是開(kāi)源的。自Ubuntu 14.04開(kāi)始,已經(jīng)沒(méi)有采用文泉驛的黑體了,而是改用Droid Sans Fallback,沒(méi)錯(cuò),就是Google花錢為Android系統(tǒng)設(shè)計(jì)的字體。反正該字體也沒(méi)點(diǎn)陣,我覺(jué)得顯示效果也就那樣。

  下面再來(lái)看看Fedora 20,該系統(tǒng)也是以黑體為主。從下面的圖片中可以看到,除了Times New Roman,其它的字體顯示都是一個(gè)樣。

  小字是點(diǎn)陣,放大后,顯示為黑體,如下圖:

  查看Fedora 20系統(tǒng),可以看到它還是安裝了AR PL UMing,也就是宋體,但是它沒(méi)有使用,而且它沒(méi)有安裝楷體,雖然它的軟件源中有cjkuni-ukai。它使用的黑體是文泉驛系列。

  之前發(fā)表的幾篇隨筆都是在Ubuntu 14.04下完成的,這次我決定換到Fedora 20系統(tǒng)下。曬一下我的桌面,如下圖:

  從AR PL這幾個(gè)字符可以看出,AR PL UMing和文鼎貢獻(xiàn)的那兩套字體是一脈相承的。確實(shí)如此,只不過(guò)是經(jīng)過(guò)合并、修改、增加了日語(yǔ)韓語(yǔ)及香港常用字型后,更名為CJKUniFonts,據(jù)說(shuō)含有點(diǎn)陣。從名字可以看出,有了這套字體,中日韓都可以搞定。CentOS 6的主打字體就是它。如下圖,小字有點(diǎn)陣,清晰銳利:

  放大后,顯示輪廓字體,不過(guò)好像缺了黑體,如下圖:

  這套字體唯一的缺點(diǎn)就是它的標(biāo)點(diǎn)符號(hào),逗號(hào)和句號(hào)經(jīng)常跑到一行的中間,而不是一行的底部。這都不是什么大事兒,其實(shí),微軟雅黑的引號(hào)也不漂亮,不是嗎?

  CentOS 6中已經(jīng)有了文泉驛,如下圖,之所以沒(méi)有顯示黑體不是因?yàn)闆](méi)有黑體,而是因?yàn)闆](méi)有正確配置:

  通過(guò)上面一系列的截圖,可以看到各個(gè)操作系統(tǒng)都使用了哪些中文字體,也展現(xiàn)出了各個(gè)操作系統(tǒng)在字體配置方面的缺陷。從另一個(gè)方面,也反映出了挑選字體的趨勢(shì)。可以總結(jié)如下:

  1、Linux系統(tǒng)中的宋體最早只有文鼎貢獻(xiàn)的細(xì)上海宋,而且還沒(méi)有點(diǎn)陣。后來(lái)發(fā)展到CJKUniFonts,宋體才有了點(diǎn)陣,它的字體名叫AR PL UMing,在Linux系統(tǒng)上想要使用宋體,就全靠它了。但是CJKUniFonts的點(diǎn)陣似乎不太符合我們的習(xí)慣,好在文泉驛有非常漂亮的點(diǎn)陣字體,雖然只覆蓋了9pt到12pt的范圍。

  2、Linux系統(tǒng)中最開(kāi)始黑體缺乏,現(xiàn)在大家都認(rèn)識(shí)到了黑體在屏幕顯示中具有較好的效果,于是就黑體泛濫了。微軟花大價(jià)錢請(qǐng)人設(shè)計(jì)的微軟雅黑是黑體,開(kāi)源字體文泉驛做的也是黑體,Google花錢請(qǐng)人做的Droid Sans Fallback還是黑體。Ubuntu用黑體,F(xiàn)edora也用黑體。可以說(shuō),文泉驛選擇黑體作為切入點(diǎn)真的是選對(duì)了,也確實(shí)是我們廣大Linux使用者的福音。

  3、即使是最新的Linux發(fā)行版,如Ubuntu 14和Fedora 20,其字體設(shè)置也不合理,對(duì)serif、sans-serif、宋體、黑體的理解都不正確。所以,對(duì)于字體,我們還是得自己配置。

字體配置實(shí)戰(zhàn)

  下面,將以Fedora 20為例,自己動(dòng)手將它配置為正確的顯示效果。目前,在Linux系統(tǒng)上配置字體的工具是Fontconfig。

  為什么是Fontconfig

  感謝這個(gè)時(shí)代,曾經(jīng)混亂不堪的字體配置方法終于被Fontconfig一統(tǒng)江湖。在Linux中,字體配置曾經(jīng)各自為政、混亂不堪,XServer、Xft、GTK、GTK2、QT等等各自采用不同的配置手段,字體引擎也有Type1、FreeType等。目前,可以認(rèn)為在Linux系統(tǒng)中只需要配置FontConfig即可。

  XOrg的官方網(wǎng)站上的文檔說(shuō)明:XOrg中有兩種字體系統(tǒng),一種字體系統(tǒng)是XServer自帶的字體系統(tǒng),另一種就是Xft,而且XOrg官方建議所有的界面庫(kù)的開(kāi)發(fā)者首選Xft字體系統(tǒng);對(duì)于字體引擎,現(xiàn)在只剩下FreeType了,Type1的功能已經(jīng)合并到了FreeType中。FreeDesktop.org的官方網(wǎng)站上有Xft、Freetype以及Fontconfig的文檔,雖然很簡(jiǎn)略,但是也提到:Xft1.0及以前的版本,需要通過(guò)XftConfig文件來(lái)配置字體,從Xft1.1以后,都采用Fontconfig來(lái)配置字體;Fontconfig的文檔也說(shuō)它只負(fù)責(zé)字體的配置,不負(fù)責(zé)字體的顯示。

  So,配置Linux中的字體,我們只用理會(huì)Fontconfig,還有疑問(wèn)嗎?

  學(xué)習(xí)Fontconfig

  學(xué)習(xí)Fontconfig的最佳方式是閱讀man fonts.conf手冊(cè)頁(yè),其次,就是閱讀/etc/fonts/conf.d目錄下的配置文件,從實(shí)例中學(xué)習(xí)。

  Fontconfig的功能就是幫助應(yīng)用程序選擇字體并指導(dǎo)字體的顯示效果(只能說(shuō)指導(dǎo),因?yàn)榫唧w的顯示由Xft、Freetype等說(shuō)了算),用什么策略選擇字體及用什么選項(xiàng)顯示字體,通過(guò)配置文件來(lái)指定。Fontconfig對(duì)配置文件進(jìn)行兩遍掃描,第一遍對(duì)應(yīng)用程序傳遞給Fontconfig的字體列表(稱為pattern)進(jìn)行操作,通過(guò)添加、刪除、替換pattern中的字體名,讓應(yīng)用程序得到相應(yīng)的字體;第二遍對(duì)已經(jīng)選擇的字體進(jìn)行操作,這時(shí)一般不改字體名了,而是對(duì)抗鋸齒(antialias)、微調(diào)(hinting)、自動(dòng)微調(diào)(autohint)、微調(diào)級(jí)別(hintstyle)以及次像素平滑(rgba)等屬性進(jìn)行控制。

  Fontconfig配置文件的語(yǔ)法,這個(gè)不用我在這里嘮叨,看man fonts.conf手冊(cè)頁(yè)即可,一點(diǎn)也不難,它的很多元素,如match、target、test、edit、string、bool、double、const等,本身就是自解釋的,看到這個(gè)單詞就知道它是什么意思。它的原則就是對(duì)每一個(gè)match...>.../match>,通過(guò)test...>.../test>來(lái)選擇要編輯的元素,然后使用edit...>.../edit>來(lái)對(duì)該元素進(jìn)行編輯。

配置Fedora 20

  Fontconfig首先讀取的配置文件是/etc/fonts/fonts.conf,然后,根據(jù)/etc/fonts/fonts.conf里面的include>.../include>信息來(lái)加載其它的配置文件。Fedora 20默認(rèn)是加載/etc/fonts/conf.d目錄下的所有文件。當(dāng)然,/etc/fonts/conf.d目錄下的文件太多了,引入了很多其實(shí)沒(méi)有必要的復(fù)雜性。對(duì)于我這種追求簡(jiǎn)潔的人,我直接就把它改了,讓/etc/fonts/conf.d下的文件去見(jiàn)鬼,從我自己的主目錄的fonts.conf.d目錄下加載配置文件吧。如下圖,我注釋掉了第71行,增加了第72行:

  下面正式開(kāi)始寫配置文件。

  第一步:將不標(biāo)準(zhǔn)的字體分類命名更改為標(biāo)準(zhǔn)的字體分類命名

  英文的字體分類有serif、sans-serif和monospace,中文的分類有“宋體”和“黑體”,但我們不能保證別人在請(qǐng)求字體的時(shí)候拼寫都是準(zhǔn)確的,比如有可能拼寫成“sans serif”或“sans”、“mono”等,中文也可能寫成繁體“宋體”、“黑體”或者拼音“SongTi”、“HeiTi”等,為了后面配置文件的簡(jiǎn)潔,這些不標(biāo)準(zhǔn)的分類名要先替換成標(biāo)準(zhǔn)的分類名。

  英文的分類名的標(biāo)準(zhǔn)化/etc/fonts/fonts.conf這個(gè)主配置文件(就是我上面截圖的那個(gè)文件)已經(jīng)做了,其完整代碼如下:


復(fù)制代碼
代碼如下:

?xml version="1.0"?>
!DOCTYPE fontconfig SYSTEM "fonts.dtd">
!-- /etc/fonts/fonts.conf file to configure system font access -->
fontconfig>/p> p>!--
DO NOT EDIT THIS FILE.
IT WILL BE REPLACED WHEN FONTCONFIG IS UPDATED.
LOCAL CHANGES BELONG IN 'local.conf'./p> p> The intent of this standard configuration file is to be adequate for
most environments. If you have a reasonably normal environment and
have found problems with this configuration, they are probably
things that others will also want fixed. Please submit any
problems to the fontconfig bugzilla system located at fontconfig.org/p> p> Note that the normal 'make install' procedure for fontconfig is to
replace any existing fonts.conf file with the new version. Place
any local customizations in local.conf which this file references./p> p> Keith Packard
-->/p> p>!-- Font directory list -->/p> p> dir>/usr/share/fonts/dir>
dir>/usr/share/X11/fonts/Type1/dir> dir>/usr/share/X11/fonts/TTF/dir> dir>/usr/local/share/fonts/dir>
dir prefix="xdg">fonts/dir>
!-- the following element will be removed in the future -->
dir>~/.fonts/dir>/p> p>!--
Accept deprecated 'mono' alias, replacing it with 'monospace'
-->
match target="pattern">
test qual="any" name="family">
string>mono/string>
/test>
edit name="family" mode="assign" binding="same">
string>monospace/string>
/edit>
/match>/p> p>!--
Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
-->
match target="pattern">
test qual="any" name="family">
string>sans serif/string>
/test>
edit name="family" mode="assign" binding="same">
string>sans-serif/string>
/edit>
/match>/p> p>!--
Accept deprecated 'sans' alias, replacing it with 'sans-serif'
-->
match target="pattern">
test qual="any" name="family">
string>sans/string>
/test>
edit name="family" mode="assign" binding="same">
string>sans-serif/string>
/edit>
/match>/p> p>!--
Load local system customization file
-->
!-- include ignore_missing="yes">fonts.conf.d/incllude> -->
include ignore_missing="yes">~/fonts.conf.d/include>/p> p>!-- Font cache directory list -->/p> p> cachedir>/var/cache/fontconfig/cachedir>
cachedir prefix="xdg">fontconfig/cachedir>
!-- the following element will be removed in the future -->
cachedir>~/.fontconfig/cachedir>/p> p> config>
!--
These are the default Unicode chars that are expected to be blank
in fonts. All other blank chars are assumed to be broken and
won't appear in the resulting charsets
-->
blank>
int>0x0020/int> !-- SPACE -->
int>0x00A0/int> !-- NO-BREAK SPACE -->
int>0x00AD/int> !-- SOFT HYPHEN -->
int>0x034F/int> !-- COMBINING GRAPHEME JOINER -->
int>0x0600/int> !-- ARABIC NUMBER SIGN -->
int>0x0601/int> !-- ARABIC SIGN SANAH -->
int>0x0602/int> !-- ARABIC FOOTNOTE MARKER -->
int>0x0603/int> !-- ARABIC SIGN SAFHA -->
int>0x06DD/int> !-- ARABIC END OF AYAH -->
int>0x070F/int> !-- SYRIAC ABBREVIATION MARK -->
int>0x115F/int> !-- HANGUL CHOSEONG FILLER -->
int>0x1160/int> !-- HANGUL JUNGSEONG FILLER -->
int>0x1680/int> !-- OGHAM SPACE MARK -->
int>0x17B4/int> !-- KHMER VOWEL INHERENT AQ -->
int>0x17B5/int> !-- KHMER VOWEL INHERENT AA -->
int>0x180E/int> !-- MONGOLIAN VOWEL SEPARATOR -->
int>0x2000/int> !-- EN QUAD -->
int>0x2001/int> !-- EM QUAD -->
int>0x2002/int> !-- EN SPACE -->
int>0x2003/int> !-- EM SPACE -->
int>0x2004/int> !-- THREE-PER-EM SPACE -->
int>0x2005/int> !-- FOUR-PER-EM SPACE -->
int>0x2006/int> !-- SIX-PER-EM SPACE -->
int>0x2007/int> !-- FIGURE SPACE -->
int>0x2008/int> !-- PUNCTUATION SPACE -->
int>0x2009/int> !-- THIN SPACE -->
int>0x200A/int> !-- HAIR SPACE -->
int>0x200B/int> !-- ZERO WIDTH SPACE -->
int>0x200C/int> !-- ZERO WIDTH NON-JOINER -->
int>0x200D/int> !-- ZERO WIDTH JOINER -->
int>0x200E/int> !-- LEFT-TO-RIGHT MARK -->
int>0x200F/int> !-- RIGHT-TO-LEFT MARK -->
int>0x2028/int> !-- LINE SEPARATOR -->
int>0x2029/int> !-- PARAGRAPH SEPARATOR -->
int>0x202A/int> !-- LEFT-TO-RIGHT EMBEDDING -->
int>0x202B/int> !-- RIGHT-TO-LEFT EMBEDDING -->
int>0x202C/int> !-- POP DIRECTIONAL FORMATTING -->
int>0x202D/int> !-- LEFT-TO-RIGHT OVERRIDE -->
int>0x202E/int> !-- RIGHT-TO-LEFT OVERRIDE -->
int>0x202F/int> !-- NARROW NO-BREAK SPACE -->
int>0x205F/int> !-- MEDIUM MATHEMATICAL SPACE -->
int>0x2060/int> !-- WORD JOINER -->
int>0x2061/int> !-- FUNCTION APPLICATION -->
int>0x2062/int> !-- INVISIBLE TIMES -->
int>0x2063/int> !-- INVISIBLE SEPARATOR -->
int>0x206A/int> !-- INHIBIT SYMMETRIC SWAPPING -->
int>0x206B/int> !-- ACTIVATE SYMMETRIC SWAPPING -->
int>0x206C/int> !-- INHIBIT ARABIC FORM SHAPING -->
int>0x206D/int> !-- ACTIVATE ARABIC FORM SHAPING -->
int>0x206E/int> !-- NATIONAL DIGIT SHAPES -->
int>0x206F/int> !-- NOMINAL DIGIT SHAPES -->
int>0x2800/int> !-- BRAILLE PATTERN BLANK -->
int>0x3000/int> !-- IDEOGRAPHIC SPACE -->
int>0x3164/int> !-- HANGUL FILLER -->
int>0xFEFF/int> !-- ZERO WIDTH NO-BREAK SPACE -->
int>0xFFA0/int> !-- HALFWIDTH HANGUL FILLER -->
int>0xFFF9/int> !-- INTERLINEAR ANNOTATION ANCHOR -->
int>0xFFFA/int> !-- INTERLINEAR ANNOTATION SEPARATOR -->
int>0xFFFB/int> !-- INTERLINEAR ANNOTATION TERMINATOR -->
/blank>
!--
Rescan configuration every 30 seconds when FcFontSetList is called
-->
rescan>
int>30/int>
/rescan>
/config>/p> p>/fontconfig>/p> p>/etc/fonts/fonts.conf

  中文的分類名標(biāo)準(zhǔn)化:


復(fù)制代碼
代碼如下:

?xml version="1.0"?>
!DOCTYPE fontconfig SYSTEM "fonts.dtd">
fontconfig>
match target="pattern">
test qual="any" name="family">
string>宋體/string>
/test>
edit name="family" mode="assign" binding="same">
string>宋體/string>
/edit>
/match>
match target="pattern">
test qual="any" name="family">
string>SongTi/string>
/test>
edit name="family" mode="assign" binding="same">
string>宋體/string>
/edit>
/match>
match target="pattern">
test qual="any" name="family">
string>黑體/string>
/test>
edit name="family" mode="assign" binding="same">
string>黑體/string>
/edit>
/match>
match target="pattern">
test qual="any" name="family">
string>HeiTi/string>
/test>
edit name="family" mode="assign" binding="same">
string>黑體/string>
/edit>
/match>
/fontconfig>/p> p>~/fonts.conf.d/01-standardize-chinese-font-class.conf

  第二步:對(duì)英文字體進(jìn)行分類

  請(qǐng)注意,我只對(duì)英文字體進(jìn)行分類。對(duì)英文字體進(jìn)行分類的目的是為了給相應(yīng)的英文字體搭配正確的中文,比如字體為Arial的英文句子中,如果出現(xiàn)中文就應(yīng)該用黑體,而字體為Times New Roman的英文句子中,如果出現(xiàn)中文當(dāng)然應(yīng)該用宋體。等寬的英文字體嘛,whatever,反正中文字都一樣寬,哪個(gè)順眼就用哪個(gè)吧。對(duì)于中文其實(shí)也可以分類,然后搭配不同的英文字體。但是我認(rèn)為,中文的字體中一般都包含有英文字符,用原裝的即可,沒(méi)有必要替換。所以,不對(duì)中文進(jìn)行分類。其代碼如下:


復(fù)制代碼
代碼如下:

?xml version="1.0"?>
!DOCTYPE fontconfig SYSTEM "fonts.dtd">
fontconfig>
!--
Serif faces
-->
alias>
family>Bitstream Vera Serif/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>DejaVu Serif/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>Liberation Serif/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>Times New Roman/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>Times/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>Nimbus Roman No9 L/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>Luxi Serif/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>Thorndale AMT/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>Thorndale/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>Georgia/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>Garamond/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>Palatino Linotype/family>
accept>family>serif/family>/accept>
/alias>
alias>
family>Trebuchet MS/family>
accept>family>serif/family>/accept>
/alias>
!--
Sans-serif faces
-->
alias>
family>Bitstream Vera Sans/family>
accept>family>sans-serif/family>/accept>
/alias>
alias>
family>DejaVu Sans/family>
accept>family>sans-serif/family>/accept>
/alias>
alias>
family>Liberation Sans/family>
accept>family>sans-serif/family>/accept>
/alias>
alias>
family>Arial/family>
accept>family>sans-serif/family>/accept>
/alias>
alias>
family>Helvetica/family>
accept>family>sans-serif/family>/accept>
/alias>
alias>
family>Verdana/family>
accept>family>sans-serif/family>/accept>
/alias>
alias>
family>Albany AMT/family>
accept>family>sans-serif/family>/accept>
/alias>
alias>
family>Albany/family>
accept>family>sans-serif/family>/accept>
/alias>
alias>
family>Nimbus Sans L/family>
accept>family>sans-serif/family>/accept>
/alias>
alias>
family>Luxi Sans/family>
accept>family>sans-serif/family>/accept>
/alias>
alias>
family>Tahoma/family>
accept>family>sans-serif/family>/accept>
/alias>
!--
Monospace faces
-->
alias>
family>Bitstream Vera Sans Mono/family>
accept>family>monospace/family>/accept>
/alias>
alias>
family>DejaVu Sans Mono/family>
accept>family>monospace/family>/accept>
/alias>
alias>
family>Liberation Mono/family>
accept>family>monospace/family>/accept>
/alias>
alias>
family>Inconsolata/family>
accept>family>monospace/family>/accept>
/alias>
alias>
family>Courier New/family>
accept>family>monospace/family>/accept>
/alias>
alias>
family>Courier/family>
accept>family>monospace/family>/accept>
/alias>
alias>
family>Andale Mono/family>
accept>family>monospace/family>/accept>
/alias>
alias>
family>Luxi Mono/family>
accept>family>monospace/family>/accept>
/alias>
alias>
family>Cumberland AMT/family>
accept>family>monospace/family>/accept>
/alias>
alias>
family>Cumberland/family>
accept>family>monospace/family>/accept>
/alias>
alias>
family>Nimbus Mono L/family>
accept>family>monospace/family>/accept>
/alias>
!--
Fantasy faces
-->
alias>
family>Impact/family>
accept>family>fantasy/family>/accept>
/alias>
alias>
family>Copperplate Gothic Std/family>
accept>family>fantasy/family>/accept>
/alias>
alias>
family>Cooper Std/family>
accept>family>fantasy/family>/accept>
/alias>
alias>
family>Bauhaus Std/family>
accept>family>fantasy/family>/accept>
/alias>
!--
Cursive faces
-->
alias>
family>ITC Zapf Chancery Std/family>
accept>family>cursive/family>/accept>
/alias>
alias>
family>Zapfino/family>
accept>family>cursive/family>/accept>
/alias>
alias>
family>Comic Sans MS/family>
accept>family>cursive/family>/accept>
/alias>/p> p>/fontconfig>/p> p>~/fonts.conf.d/02-classify-english-fonts.conf

  第三步:所有不認(rèn)識(shí)的英文字體都分類為sans-serif

  世界上字體那么多,不是每一個(gè)都想得到的啦。對(duì)于所有不認(rèn)識(shí)的字體,都認(rèn)為它是sans-serif。其代碼如下:


復(fù)制代碼
代碼如下:

?xml version="1.0"?>
!DOCTYPE fontconfig SYSTEM "fonts.dtd">
fontconfig>
!--
If the font still has no generic name, add sans-serif
-->
match target="pattern">
test qual="all" name="family" compare="not_eq">
string>sans-serif/string>
/test>
test qual="all" name="family" compare="not_eq">
string>serif/string>
/test>
test qual="all" name="family" compare="not_eq">
string>monospace/string>
/test>
test qual="all" name="family" compare="not_eq">
string>宋體/string>
/test>test qual="all" name="family" compare="not_eq">
string>黑體/string>
/test>
edit name="family" mode="append_last">
string>sans-serif/string>
/edit>
/match>
/fontconfig>/p> p>~/fonts.conf.d/03-treat-unclassified-fonts-as-sansserif.conf

  到這里,所有的分類工作完成。使用fc-pattern命令可以看到字體名被替換的過(guò)程。如下圖:

  比如,當(dāng)應(yīng)用程序請(qǐng)求字體的pattern為“Time New Roman”時(shí),pattern被更改為“Times New Roman” “serif”;當(dāng)應(yīng)用程序請(qǐng)求字體的pattern為“微軟雅黑,不認(rèn)識(shí)的字體”時(shí),“sans-serif”被添加到了pattern的最后面。這也是字體分類的原理,就是將字體的類名添加到列表的后面。在Fontconfig的配置語(yǔ)法中,alias>是match>的一種簡(jiǎn)化寫法,如果需要測(cè)試和替換的只是字體名的話,使用alias>就更簡(jiǎn)單。如果使用alias>,則prefer>表示添加到所選字體的前面,accept>表示添加到所選字體的后面,default>表示添加到字體列表的最后。在這里選擇用accept>而沒(méi)有用default>的原因是,如果用default>,每次都是把分類名添加到最后,遇到比較奇怪的pattern(比如上圖中的最后一個(gè)測(cè)試)就會(huì)造成混亂。

  第四步:對(duì)每一個(gè)字體分類,指定自己喜歡的字體

  對(duì)每一個(gè)分類都可以指定一個(gè)字體列表,排在越前面的優(yōu)先級(jí)越高。在每一個(gè)分類的最后指定一個(gè)中文字體的分類,當(dāng)句子中出現(xiàn)中文時(shí),前面的英文字體中肯定找不到相應(yīng)的字符啦,這時(shí)就會(huì)一個(gè)一個(gè)往字體列表的后面找,直到在最后的中文字體里找到。代碼如下:


復(fù)制代碼
代碼如下:

?xml version="1.0"?>
!DOCTYPE fontconfig SYSTEM "fonts.dtd">
fontconfig>
alias binding="strong">
family>serif/family>
prefer>
family>Georgia/family>
family>Times New Roman/family>
family>Bitstream Vera Serif/family>
family>DejaVu Serif/family>
family>Thorndale AMT/family>
family>Luxi Serif/family>
family>Nimbus Roman No9 L/family>
family>Times/family>
family>宋體/family>
/prefer>
/alias>
alias binding="strong">
family>sans-serif/family>
prefer>
family>Arial/family>
family>Verdana/family>
family>Bitstream Vera Sans/family>
family>DejaVu Sans/family>
family>Albany AMT/family>
family>Luxi Sans/family>
family>Nimbus Sans L/family>
family>Helvetica/family>
family>Lucida Sans Unicode/family>
family>BPG Glaho International/family>
family>Tahoma/family>
family>黑體/family>
/prefer>
/alias>
alias binding="strong">
family>monospace/family>
prefer>
family>DejaVu Sans Mono/family>
family>Courier New/family>
family>Bitstream Vera Sans Mono/family>
family>Inconsolata/family>
family>Andale Mono/family>
family>Cumberland AMT/family>
family>Luxi Mono/family>
family>Nimbus Mono L/family>
family>Courier/family>
family>文泉驛等寬正黑/family>
/prefer>
/alias>
alias binding="strong">
family>宋體/family>
prefer>
family>AR PL UMing CN/family>
family>AR PL UMing HK/family>
family>AR PL UMing TW/family>
family>AR PL UMing TW MBE/family>
/prefer>
/alias>
alias binding="strong">
family>黑體/family>
prefer>
family>文泉驛正黑/family>
/prefer>
/alias>
!--
Fantasy faces
-->
alias>
family>fantasy/family>
prefer>
family>Impact/family>
family>Copperplate Gothic Std/family>
family>Cooper Std/family>
family>Bauhaus Std/family>
/prefer>
/alias>
!--
Cursive faces
-->
alias>
family>cursive/family>
prefer>
family>Comic Sans MS/family>
family>ITC Zapf Chancery Std/family>
family>Zapfino/family>
/prefer>
/alias>/p> p>/fontconfig>/p> p>~/fonts.conf.d/04-prefer-fonts-for-each-class.conf

  在這個(gè)配置中,依然使用alias>,通過(guò)把具體的字體名添加到類名的前面來(lái)填實(shí)字體分類。填實(shí)字體分類后,通過(guò)fc-pattern命令,可以測(cè)試Fontconfig如何選擇字體,如下圖:

  到這一步,我的Fedora系統(tǒng)已經(jīng)能夠正確選擇各種分類中的字體了。打開(kāi)瀏覽器,用上一篇的開(kāi)頭測(cè)試一下字體的顯示效果,如下圖:

  放大后的效果:

  從圖片中可以看出,經(jīng)過(guò)前面的配置,瀏覽器已經(jīng)可以正確區(qū)分宋體、黑體,可以區(qū)分serif和sans-serif。對(duì)于等寬字體,也用上了漂亮的DejaVu Sans Mono。而且宋體的小字還有點(diǎn)陣。看似比較完美了,但是依然有幾個(gè)小問(wèn)題:

  1、宋體的小字有點(diǎn)陣,但AR PL UMing自帶的點(diǎn)陣真心不好看;

  2、黑體的小字沒(méi)有點(diǎn)陣,雖然黑體比較飽滿,沒(méi)有點(diǎn)陣也不會(huì)發(fā)虛,但是有點(diǎn)陣還是更好,而且應(yīng)用程序菜單中的中文也從點(diǎn)陣變成了不是點(diǎn)陣;

  3、宋體的加粗部分沒(méi)有正確顯示。

  所以,還需要進(jìn)一步的設(shè)置工作。

  第五步:控制字體的顯示屬性

  上一篇已經(jīng)論述過(guò),要讓字體顯示得好看也是一個(gè)技術(shù)活。所以對(duì)字體的顯示屬性要詳細(xì)控制啦。Gnome-tweak-tool只能整體指定少量幾個(gè)屬性,如hintstyle和次像素平滑,很顯然是不夠用的。如下圖:

  而且我的系統(tǒng)中用來(lái)畫字的dpi都不對(duì),只有75,如下圖(另一個(gè)測(cè)試字體配置的利器fc-match的運(yùn)行效果):

  這樣字體畫出來(lái)肯定偏小。事實(shí)上我的顯示器dpi比96都要高20%左右。所以得改。為了跟隨主流,還是改成96dpi好了。

  我控制字體屬性的思路:

  1、著名廠家設(shè)計(jì)的字體,開(kāi)hinting,開(kāi)源的粗制濫造的字體就用autohint好了;目前系統(tǒng)中用的字體似乎名頭都很響,所以全局開(kāi)hinting,hintstyle設(shè)為hintslight。

  2、英文字體全局開(kāi)次像素平滑,全局開(kāi)抗鋸齒,如果在使用過(guò)程中發(fā)現(xiàn)有哪個(gè)字體邊緣顯示為花花綠綠的話,就單獨(dú)關(guān)閉這個(gè)字體的次像素平滑。

  3、小于7.5像素的字就關(guān)閉hinting,這也是目前開(kāi)源界的主流做法。

  4、中文關(guān)閉次像素平滑,除非用的是微軟雅黑之類專為次像素平滑設(shè)計(jì)的字體;很顯然不在正版Windows中用微軟雅黑是違法的,所以中文關(guān)閉次像素平滑。

  代碼如下:


復(fù)制代碼
代碼如下:

?xml version="1.0" encoding="UTF-8"?>
!DOCTYPE fontconfig SYSTEM "../fonts.dtd">
fontconfig>
match target="pattern">
edit name="dpi" mode="assign">
double>96/double>
/edit>
/match>
match target="font">
edit name="hinting" mode="assign">
bool>true/bool>
/edit>
/match>
match target="font">
edit name="autohint" mode="assign">
bool>false/bool>
/edit>
/match>
match target="font">
edit name="hintstyle" mode="assign">
const>hintslight/const>
/edit>
/match>
match target="font">
edit name="antialias" mode="assign">
bool>true/bool>
/edit>
/match>
match target="font">
edit name="rgba" mode="assign">
const>rgb/const>
/edit>
/match>
match target="font">
edit name="lcdfilter" mode="assign">
const>lcdlight/const>
/edit>
/match>/p> p> match target="font">
test compare="less" name="pixelsize">
double>7.5/double>
/test>
edit name="hinting">
bool>false/bool>
/edit>
/match>
match target="font">
test name="family" compare="contains">
string>AR PL UMing/string>
/test>
edit name="rgba">
const>none/const>
/edit>
/match>
match target="font">
test name="family" compare="contains">
string>正黑/string>
/test>
edit name="rgba">
const>none/const>
/edit>
/match>
/fontconfig>/p> p>~/fonts.conf.d/05-dpi-and-hinting.conf

  再來(lái)測(cè)試一下,如下圖:

  第六步:為中文選擇點(diǎn)陣字體

  上一篇中論述過(guò),小字不用點(diǎn)陣,看起來(lái)會(huì)發(fā)虛。所以中文應(yīng)該選擇點(diǎn)陣。文泉驛點(diǎn)陣正黑不錯(cuò),系統(tǒng)本身就有安裝。文泉驛點(diǎn)陣宋體需要另外安裝,如下圖:

  代碼如下:


復(fù)制代碼
代碼如下:

?xml version="1.0" encoding="UTF-8"?>
!DOCTYPE fontconfig SYSTEM "../fonts.dtd">
fontconfig>
match target="pattern">
test name="family" compare="contains">
string>AR PL UMing/string>
/test>
edit name="family" mode="prepend" binding="strong">
string>WenQuanYi Bitmap Song/string>
/edit>
/match>
match target="pattern">
test name="family">
string>文泉驛正黑/string>
/test>
edit name="family" mode="prepend" binding="strong">
string>文泉驛點(diǎn)陣正黑/string>
/edit>
/match>
match target="pattern">
test name="family">
string>文泉驛等寬正黑/string>
/test>
edit name="family" mode="prepend">
string>文泉驛點(diǎn)陣正黑/string>
/edit>
/match>
match target="font">
test name="family">
string>文泉驛點(diǎn)陣正黑/string>
/test>
test compare="less_eq" name="pixelsize">
double>16/double>
/test>
test compare="more_eq" name="pixelsize">
double>12/double>
/test>
edit name="antialias">
bool>false/bool>
/edit>
/match>
/fontconfig>/p> p>~/fonts.conf.d/06-chinese-bitmap.conf

  以上代碼通過(guò)將文泉驛點(diǎn)陣宋體添加到AR PL UMing的前面來(lái)實(shí)現(xiàn)替換掉AR PL UMing自己的點(diǎn)陣,通過(guò)將文泉驛點(diǎn)陣正黑添加到文泉驛正黑和文泉驛等寬正黑的前面來(lái)顯示點(diǎn)陣正黑。文泉驛的點(diǎn)陣只包含12px到16px的范圍,對(duì)該范圍大小的文泉驛正黑關(guān)閉抗鋸齒。把控制臺(tái)字體調(diào)到monospace-12,可以看到控制臺(tái)中的中文使用點(diǎn)陣,如下圖:

  寫到這里,我不得不提到另外一個(gè)問(wèn)題,就是edit...binding="?">.../edit>中binding究竟應(yīng)該設(shè)置為什么的問(wèn)題。binding屬性有幾種選擇,分別是binding="strong"、binding="weak"和binding="same"。如果該屬性設(shè)置不合理,則會(huì)出現(xiàn)這樣的問(wèn)題:明明使用fc-pattern查看的時(shí)候是文泉驛點(diǎn)陣宋體排在AR PL UMing前面,是DejaVu Sans Mono排在文泉驛等寬正黑前面,但是使用fc-match匹配的時(shí)候,偏偏首選的是AR PL UMing和文泉驛等寬正黑。為什么會(huì)這樣呢?這是因?yàn)镕ontconfig選擇字體的時(shí)候不僅僅只看字體名的排列順序,還要綜合考慮一種字體能覆蓋的字符集和字體大小范圍,所以,在前面的例子中,雖然文泉驛點(diǎn)陣宋體排在AR PL UMing前面,但是它覆蓋的字體大小范圍只有12px到16px,DejaVu Sans Mono雖然排在文泉驛等寬正黑前面,但是其覆蓋的字符集不包含中日韓文,所以Fontconfig就會(huì)首選排在后面的字體。為了解決這個(gè)問(wèn)題,就必須把binding屬性設(shè)置為strong,這樣,不管什么情況都首選排在前面的字體,只有遇到該字體不能勝任的字符時(shí)才選擇后面的字體。在我的配置文件中,我都是一路strong到底。

  第七步:對(duì)沒(méi)有包含斜體和粗體的字體自動(dòng)合成斜體和粗體

  代碼如下:



復(fù)制代碼
代碼如下:

?xml version="1.0"?>
!DOCTYPE fontconfig SYSTEM "fonts.dtd">
fontconfig>
!--
Artificial oblique for fonts without an italic or oblique version
-->

match target="font">
!-- check to see if the font is roman -->
test name="slant">
const>roman/const>
/test>
!-- check to see if the pattern requested non-roman -->
test target="pattern" name="slant" compare="not_eq">
const>roman/const>
/test>
!-- multiply the matrix to slant the font -->
edit name="matrix" mode="assign">
times>
name>matrix/name>
matrix>double>1/double>double>0.2/double>
double>0/double>double>1/double>
/matrix>
/times>
/edit>
!-- pretend the font is oblique now -->
edit name="slant" mode="assign">
const>oblique/const>
/edit>
!-- and disable embedded bitmaps for artificial oblique -->
edit name="embeddedbitmap" mode="assign">
bool>false/bool>
/edit>
/match>/p> p>!--
Synthetic emboldening for fonts that do not have bold face available
-->/p> p> match target="font">
!-- check to see if the font is just regular -->
test name="weight" compare="less_eq">
const>medium/const>
/test>
!-- check to see if the pattern requests bold -->
test target="pattern" name="weight" compare="more">
const>medium/const>
/test>
!--
set the embolden flag
needed for applications using cairo, e.g. gucharmap, gedit, ...
-->
edit name="embolden" mode="assign">
bool>true/bool>
/edit>
!--
set weight to bold
needed for applications using Xft directly, e.g. Firefox, ...
-->
edit name="weight" mode="assign">
const>bold/const>
/edit>
/match>
/fontconfig>/p> p>~/fonts.conf.d/07-synthetic.conf

  從這段代碼可以看出,合成斜體的時(shí)候使用了矩陣乘法。另一個(gè)在Fontconfig配置文件中使用矩陣乘法的例子是/etc/fonts/conf.d中的第1個(gè)配置文件10-scale-bitmap-fonts.conf,它使用矩陣乘法對(duì)點(diǎn)陣字體進(jìn)行縮放,而且如果縮放因子在0.8到1.2之間則不縮放。閱讀系統(tǒng)的配置文件是一個(gè)學(xué)習(xí)的好方法,在我的系統(tǒng)中,該文件就僅供學(xué)習(xí)了,因?yàn)槲也恍枰獙?duì)點(diǎn)陣字體進(jìn)行縮放。

  最終效果如下圖:

  放大后:

  結(jié)果:小字時(shí),宋體黑體都有點(diǎn)陣,大字時(shí)宋體黑體分別用不同的輪廓字體,能正確區(qū)分serif和sans-serif,加粗的宋體、等寬字體也能正確顯示,應(yīng)用程序菜單中的字體也恢復(fù)到了點(diǎn)陣。

總結(jié)

  展示了Fedora 20配置字體的全過(guò)程。雖然沒(méi)有詳細(xì)講解Fontconfig的語(yǔ)法,但是通過(guò)代碼、截圖和fc-pattern以及fc-match命令對(duì)字體進(jìn)行測(cè)試,讓Fontconfig的配置不言自明。當(dāng)然,每個(gè)人對(duì)字體的感受是不一樣的,但是只要掌握了Fontconfig的配置方法,適當(dāng)修改以迎合自己的需求,也是一件簡(jiǎn)單的事情。也可以將Windows中的字體借過(guò)來(lái)使用,微軟還是一個(gè)很靠譜的公司,它的那幾個(gè)經(jīng)典的英文字體是開(kāi)放的,前面有一個(gè)截圖中展示有Fedora的源中有mscore-fonts軟件包,直接安裝就可以。

標(biāo)簽:楚雄 荊州 淄博 忻州 阜陽(yáng) 遼陽(yáng) 迪慶 來(lái)賓

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Linux折騰記(四):Linux桌面系統(tǒng)字體配置詳解》,本文關(guān)鍵詞  Linux,折騰,記,四,桌面,系統(tǒng),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Linux折騰記(四):Linux桌面系統(tǒng)字體配置詳解》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Linux折騰記(四):Linux桌面系統(tǒng)字體配置詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 重庆华渝重工机电有限公司| 郑州工程机械有限公司| 山东岳工机械有限公司| 湛江恒润机械有限公司| 绍兴联科机械有限公司| 江苏机械设备制造有限公司| 山东宁联机械制造有限公司| 重庆 机械制造有限公司| 青岛北船重工有限公司| 泰兴市立君机械设备有限公司| 浩胜食品机械有限公司| 江阴市联拓重工机械有限公司| 蚌埠液力机械有限公司| 埃比西斯机械有限公司| 浙江新罗兰机械有限公司| 青州包装机械有限公司| 友佳精密机械有限公司| 三国精密机械有限公司| 重庆嘉木机械有限公司| 济南诺斯机械有限公司| 济南捷迈数控机械有限公司| 徐州世通重工机械制造有限公司| 成都 机械有限公司| 江苏红旗印染机械有限公司| 昆山翔固机械有限公司| 旭恒精工机械制造有限公司| 长沙聚邦机械设备有限公司| 江苏国天锻压机械有限公司| 深圳精机械有限公司| 江苏鼎盛重工有限公司| 新麦机械无锡有限公司| 绍兴金昊机械制造有限公司| 晶元精密机械有限公司| 云南昆鼎机械设备有限公司| 张家港市通惠化工机械有限公司| 厦门 机械设备有限公司| 三联传动机械有限公司| 青岛非凡包装机械有限公司| 浙江长泰机械有限公司| 高臻机械机械有限公司| 村田机械上海有限公司| 南通恩派特机械有限公司| 山东创铭机械有限公司| 苏州力强机械制造有限公司 | 石家庄 机械 有限公司| 嘉善精密机械有限公司| 江阴凯迈机械有限公司| 联德精密机械有限公司| 福宁船舶重工有限公司| 宁波康博机械有限公司| 华德机械制造有限公司| 东莞市瑞辉机械制造有限公司 | 南京南特精密机械有限公司| 新麦机械有限公司官网| 张家港市通惠化工机械有限公司 | 上海航空机械有限公司| 南海力丰机械有限公司| 宝鸡万工机械制造有限公司| 宣化华泰矿冶机械有限公司| 鞍山宝得钢铁有限公司招聘岗位| 广东信昌机械有限公司| 芜湖科翔动力机械有限公司| 鼎龙机械制造有限公司| 西安 机械设备有限公司| 连云港机械制造有限公司| 娄底 机械有限公司| 山东神力起重机械有限公司| 如东宏信机械制造有限公司| 上海板换机械设备有限公司| 洛阳重型机械有限公司| 天津百利二通机械有限公司| 上海枫信传动机械有限公司| 万则盛机械有限公司| 上海玖钲机械设备有限公司| 徐工基础工程机械有限公司| 西安筑路机械有限公司| 深圳市合发齿轮机械有限公司| 浙江胜祥机械有限公司| 上海华威焊割机械有限公司| 宜兴机械设备有限公司| 佛山丰又丰机械有限公司| 伟业机械制造有限公司| 广州赛威机械有限公司| 昆明远桥机械有限公司| 重庆国杰工程机械有限公司| 高臻机械设备有限公司 | 张家口机械有限公司| 温州印刷机械有限公司| 新疆起亚铝业有限公司招聘| 泰安海松机械有限公司| 唐山粤丰钢铁有限公司| 上海冠龙阀门机械有限公司官网| 珠海仕高玛机械设备有限公司| 合肥食品机械有限公司| 无锡市川中五金机械有限公司| 襄阳通威机械有限公司| 德丰机械制造有限公司| 江苏柳工机械有限公司| 武汉机械设备有限公司| 南通昭和机械有限公司| 东莞市天成机械有限公司| 东莞豪力机械有限公司| 河北兴华钢铁有限公司| 浙江雷克机械工业有限公司| 杭州双金机械有限公司| 宁波北仑机械有限公司| 廊坊 包装机械有限公司| 上海翔展机械有限公司| 浙江耐士伦机械有限公司| 山西华强钢铁有限公司| 射阳 机械有限公司| 上海新麦机械设备制造有限公司| 浙江森工木工机械有限公司| 郑州山川重工有限公司| 快克数控机械有限公司| 昆明群泰机械有限公司| 北方机械制造有限公司| 安徽 机械制造有限公司| 定州市至信机械制造有限公司| 湖北天腾重型机械制造有限公司| 常州达德机械有限公司| 农业机械有限公司招聘| 艾珍机械设备制造有限公司| 江苏佳粮机械有限公司| 广东食品机械有限公司| 合肥中达机械制造有限公司| 南通宝钢钢铁有限公司| 河钢钢铁贸易有限公司| 万工机械制造有限公司| 山东神力起重机械有限公司| 辽宁三君机械有限公司| 上海小虎机械有限公司| 河南 工程机械有限公司| 温州博大机械有限公司| 首钢伊犁钢铁有限公司| 常州艾隆精密机械有限公司| 青岛青科重工有限公司| 宝钢盐城钢铁有限公司| 杭州岛文机械有限公司| 广西柳工机械有限公司| 湖北江汉重工有限公司| 济南 液压机械有限公司| 宁波科鼎钢铁有限公司| 广州盛广誉机械设备有限公司| 新乡市新久振动机械有限公司 | 大连世达重工有限公司| 济南恒铭钢铁有限公司| 常州恒力机械有限公司| 云南昆鼎机械设备有限公司| 宁波星峰机械有限公司| 新疆汇合钢铁有限公司| 青岛三益塑料机械有限公司 | 沈阳重工机械有限公司| 广东重工建设监理有限公司怎么样| 烨隆精密机械有限公司| 安徽省中冶重工机械有限公司 | 山西立恒钢铁有限公司| 镇江鸿泰钢铁有限公司| 贵阳闽达钢铁有限公司| 杭州丰波机械有限公司| 上海 坚机械有限公司| 诸城市华钢机械有限公司| 嘉宝精密机械有限公司| 徐州明文机械有限公司| 东莞%机械%有限公司| 宁波丰州机械有限公司| 德州联合石油机械有限公司| 山西立恒钢铁有限公司| 青岛安成食品机械有限公司| 苏州施米特机械有限公司| 浙江荣众机械有限公司| 河北永明地质工程机械有限公司| 青岛仕诚塑料机械有限公司| 唐山丰润钢铁有限公司| 艺达精密机械有限公司| 青州神工机械有限公司| 中欣机械厦门有限公司| 江阴市礼联机械有限公司| 深圳印刷机械深圳有限公司| 萨驰华辰机械 苏州 有限公司| 吉林吉钢铁有限公司| 恒兴机械设备有限公司| 深圳市神田机械设备有限公司| 潍坊大众机械有限公司| 佛山市信虹精密机械有限公司| 杭州精密机械有限公司| 四川华为钢铁有限公司| 曲阜机械制造有限公司| 山东青州机械有限公司| 郑州亚美机械制造有限公司| 常熟市机械有限公司| 洛阳博马农业工程机械有限公司| 重庆培柴机械制造有限公司| 安阳新普钢铁有限公司| 济宁矿山机械有限公司| 江阴机械制造有限公司怎么样| 晋江机械制造有限公司| 洛阳中收机械装备有限公司| 台州欧玮机械有限公司| 上海江埔印刷机械有限公司| 上海以海机械有限公司| 湖南长河机械有限公司| 温州华推机械有限公司| 湖北昌胜机械设备制造有限公司| 上海市机械有限公司| 盘江矿山机械有限公司| 北京大起空调有限公司| 江阴市中立机械工业有限公司 | 山东山鼎工程机械有限公司| 苏州德伊捷自动化机械有限公司| 德马格起重机械有限公司| 上海臣轩机械有限公司| 潍坊圣川机械有限公司| 合肥中达机械制造有限公司| 北京现代京城工程机械有限公司 | 潍坊凯德塑料机械有限公司| 昆山协扬机械有限公司| 上海映易包装机械设备有限公司| 铜梁君卓机械有限公司| 天津市钢铁贸易有限公司| 成都工程机械有限公司| 机械有限公司经营范围| 浙江嘉元机械制造有限公司| 无锡英那威特机械发展有限公司| 瑞安市印刷机械有限公司| 新乡天丰机械有限公司| 宜春江特机械传动有限公司| 鹤壁市豫星机械制造有限公司 | 鞍山矿山机械有限公司| 首唐宝生钢铁有限公司| 莱州聚峰机械有限公司| 吉川机械设备有限公司| 江苏方邦机械有限公司| 安徽泰恒机械制造有限公司| 四川腾中重工机械有限公司 | 立信染整机械有限公司| 浙江山海机械有限公司| 常德烟草机械有限公司| 江苏清淮机械有限公司| 新麦机械无锡有限公司| 精一机械(中山)有限公司| 无锡华迪机械设备有限公司| 广州力丰机械有限公司| 盐城海德机械制造有限公司| 上海丰泽机械有限公司| 苏州圣亚精密机械有限公司| 北仑旭升机械有限公司| 银丰弹簧机械设备制造有限公司| 智能机械制造有限公司| 沈阳捷优机械设备有限公司| 山东欣弘发机械有限公司| 南京 机械制造有限公司| 杭州杭重机械有限公司| 江西机械制造有限公司| 河南 机械制造有限公司| 乐清市机械有限公司| 云南机械设备有限公司| 诸暨市机械有限公司| 张家港市家源机械有限公司 | 洛阳中冶重工机械有限公司| 萨驰华辰机械 苏州 有限公司| 浙江永创机械有限公司| 青岛青宏机械制造有限公司| 青岛恒林机械有限公司| 兴虎动力机械有限公司| 金源机械制造有限公司| 浙江欧迈特减速机械有限公司 | 欧克机械制造有限公司| 上海伍行机械设备有限公司| 大连世达重工有限公司| 吉林鑫达钢铁有限公司| 青岛机械设备有限公司| 江苏中热机械设备有限公司怎么样 | 广州市荣艺食品机械有限公司| 合肥亿恒机械有限公司| 中山力劲机械有限公司| 大连华锐重工有限公司| 浙江瑞尔斯机械有限公司| 鹤壁市豫星机械制造有限公司 | 温州海翔机械有限公司| 四川晶工机械有限公司| 徐州博丰钢铁有限公司| 摩丁机械常州有限公司| 张家港市机械制造有限公司| 常州万裕机械有限公司| 无锡宝业机械有限公司| 沈阳东荣机械有限公司| 徐州徐工基础工程机械有限公司 | 申光洗涤机械有限公司| 鑫达机械设备有限公司| 源通机械设备有限公司| 江西 机械有限公司| 江阴江顺精密机械零部件有限公司| 邢台市振成机械有限公司| 立信染整机械深圳有限公司| 温州镇田机械有限公司| 佛山机械设备有限公司| 娄底 有限公司 机械| 江苏省机械有限公司| 中安重工自动化装备有限公司 | 重庆宏工工程机械有限公司| 山东力王重工机械有限公司| 温州精宇机械有限公司| 东莞市台钢机械设备有限公司| 苏州起重机械有限公司| 徐州世通重工机械制造有限公司 | 上海起重设备有限公司| 南京包装机械有限公司| 上海台新食品机械有限公司| 大阳通用机械有限公司| 深圳市硕方精密机械有限公司| 浙江塑机械有限公司| 泉州市恒兴工业机械有限公司 | 天津艾尔特精密机械有限公司| 山东贝特起重机有限公司| 浙江华业塑料机械有限公司| 江苏双轮泵业机械制造有限公司 | 韶瑞重工有限公司招聘| 东莞丰堡精密机械有限公司| 青岛万邦包装机械有限公司| 沧州华众煤矿机械有限公司| 荆州祥达机械制造有限公司| 上海大恒光学精密机械有限公司| 无锡南机械有限公司| 江苏久保田农机机械有限公司| 浙江人和机械有限公司| 厦门厦工机械有限公司| 江苏贸隆机械制造有限公司| 唐山前进钢铁有限公司| 郑州鼎盛机械有限公司| 江阴锦澄钢铁有限公司| 华隆 机械有限公司| 淄博宙灿机械有限公司| 江苏宏博机械制造有限公司| 福建省 机械有限公司| 温州利捷机械有限公司| 甘肃机械化建设工程有限公司| 龙南福鑫钢铁有限公司| 广东盈钢机械有限公司| 元机械制造有限公司| 中山伙伴自动化机械有限公司| 沈阳韩兆机械有限公司| 山东环保机械有限公司| 丹东富田精工机械有限公司 | 蓬莱巨涛海洋工程重工有限公司怎么样 | 河北敬业钢铁有限公司地址| 上海震伦机械有限公司| 石油机械制造有限公司| 中山艾能机械有限公司| 中信重工机器人有限公司| 宁波联成机械有限公司| 深圳市神田机械设备有限公司| 广东森人机械有限公司| 华信陶瓷机械有限公司| 江苏长虹涂装机械有限公司| 创世纪机械有限公司| 太仓越华精密机械配件有限公司| 迁安鑫达钢铁有限公司| 保定市恒瑞游乐机械有限公司| 福建东钢钢铁有限公司| 常州市佳凯包装机械有限公司| 温州天富机械有限公司| 济南大彤机械设备有限公司| 上海泓阳机械有限公司| 北京恒博立华机械设备有限公司 | 山东誉亚大豆机械制造有限公司| 上海善能机械有限公司| 中船重工海空智能装备有限公司| 济南帕特机械有限公司| 常州万裕机械有限公司| 成都海科机械设备制造有限公司 | 广东华菱机械有限公司| 安阳锻压机械工业有限公司| 临汾志强钢铁有限公司| 漳州 机械有限公司| 瑞利包装机械有限公司| 宁海奇精机械有限公司| 佳友精密机械有限公司| 青岛如隆机械有限公司| 成都兴业邦达重工机械有限公司 | 北京骏马机械有限公司| 广州市 包装机械有限公司| 深圳市环球同创机械有限公司| 长春合心机械制造有限公司| 青州汇众机械有限公司| 青岛欣鑫数控精密机械有限公司| 盐城市联鑫钢铁有限公司| 河南龙工机械制造有限公司 | 林州市振晨重工装备制造有限公司 | 福建东亚机械有限公司| 宁波康博机械有限公司| 苏州亿泛精密机械有限公司| 汕头机械设备有限公司| 南通中远重工有限公司| 上海世邦机械有限公司| 沈阳捷优机械设备有限公司| 柳州瑞利机械有限公司| 福建三嘉钢铁有限公司| 广州市科展机械设备有限公司| 众工机械机械有限公司| 常州经编机械有限公司| 盐城市鑫益达精密机械有限公司| 浙江双鸟机械有限公司| 中机建重工有限公司| 长沙建鑫机械有限公司| 上海德仁橡塑机械有限公司| 东莞市科机械有限公司| 阿尔法起重机有限公司| 宁波正凯机械有限公司| 义乌联动机械有限公司| 常州泉汇机械有限公司| 上海映易包装机械设备有限公司| 深圳市精密机械有限公司| 常州南鹏机械有限公司| 黎城太行钢铁有限公司| 常州嘉耘机械有限公司| 广西徐重机械有限公司| 云南科玛机械设备有限公司| 山东机械设备有限公司怎么样| 凹凸精密机械有限公司| 博可机械上海有限公司| 合肥逸飞包装机械有限公司| 四川瑞迪佳源机械有限公司| 马鞍山市机械有限公司| 泰安机械有限公司招聘| 邢台德龙钢铁有限公司| 河南兴邦重工机器有限公司| 平煤机械设备有限公司| 哈尔滨 机械 有限公司| 动力机械制造有限公司| 临沂园林机械有限公司| 泸州长江机械有限公司| 中航国际钢铁贸易有限公司| 南京欧能机械有限公司| 福州六和机械有限公司| 江苏巨风机械制造有限公司| 浙江海工机械有限公司| 浙江凯岛起重机械有限公司| 华宇机械制造有限公司| 东莞鸿铭机械有限公司| 银锐玻璃机械有限公司| 浙江自力机械有限公司| 东莞市嘉鲁特注塑机械有限公司| 上海竹达机械设备有限公司| 南京润森工程机械有限公司| 厦门工程机械有限公司| 无锡机械电器有限公司| 无锡精密机械有限公司| 温岭市大众精密机械有限公司| 常州曼恩机械有限公司| 迪威玻璃机械有限公司| 鼎盛机械设备有限公司| 安徽方圆机械有限公司| 山东机械设备有限公司| 南通安港机械有限公司| 安徽华邦机械有限公司| 朝阳重工机械有限公司| 宁波康博机械有限公司| 禹城益佳机械有限公司| 山东金奥机械有限公司| 四川望锦机械有限公司| 青岛塑料机械有限公司| 深圳市安格斯机械有限公司| 中航国际钢铁贸易有限公司| 重工起重机有限公司| 上海 鑫机械设备有限公司| 临沂机械设备有限公司| 江苏同正机械制造有限公司| 广州新浪爱拓化工机械有限公司| 江阴市联拓重工机械有限公司| 苏州晋日五金机械有限公司 | 河南真牛起重机有限公司| 科达机械制造有限公司| 青岛万邦包装机械有限公司| 宁波机械设备有限公司| 景德镇 机械有限公司| 汕头市包装机械有限公司| 常州 重工有限公司| 石家庄 钢铁有限公司| 广州精密机械有限公司| 东莞市金坤机械设备有限公司| 辽阳腾龙钢铁有限公司| 江苏鹤溪机械有限公司| 上海紫宏机械有限公司| 常州华德机械有限公司| 万则盛机械有限公司| 俊杰机械深圳有限公司| 海宁美惠机械有限公司| 奥通机械制造有限公司| 青岛武船重工有限公司| 机械密封件有限公司| 上海开隆冶金机械制造有限公司 | 杭州容瑞机械技术有限公司| 苏州松发机械有限公司| 豪德机械上海有限公司| 重庆江增船舶重工有限公司| 永洋钢铁有限公司电话| 广州市瑞扬机械设备有限公司| 上海长空机械有限公司| 桂林矿山机械有限公司| 重庆市机械有限公司| 浙江建机工程机械有限公司| 泰安展鸿木业机械有限公司| 威海柳道机械有限公司| 苏州 工业机械有限公司| 范县中鑫钢铁有限公司| 江阴福鑫机械有限公司| 浙江大源机械有限公司| 深圳恒盛力包装机械有限公司| 郑州东方尚武食品机械有限公司| 合肥盛安机械有限公司| 中联恒通机械有限公司| 恒瑞机械制造有限公司| 温州市鹿城江心服装机械有限公司 | 扬州伏尔坎机械制造有限公司| 三技精密机械有限公司| 苏州爱恩机械有限公司| 汉虹精密机械有限公司| 无锡工源机械有限公司| 威海石岛重工有限公司| 佛山市康思达液压机械有限公司| 威海光威精密机械有限公司| 临工金利机械有限公司| 佛山顺德区机械有限公司| 南通力福通起重机械有限公司 | 宁波天佳塑料机械有限公司| 邢台机械制造有限公司| 余姚市机械有限公司| 上海西马特机械制造有限公司 | 上海信进精密机械有限公司| 宁波东力机械制造有限公司| 泰富重工制造有限公司| 山东誉亚大豆机械制造有限公司 | 深圳市兴合发齿轮机械有限公司 | 浙江宇丰机械有限公司| 天津千百顺钢铁贸易有限公司| 南通力福通起重机械有限公司| 江苏先电机械有限公司| 临清 机械有限公司| 重庆磐达机械有限公司| 台州特特机械有限公司| 河南天成矿山起重机有限公司| 湖北银轮机械有限公司| 南京凯友橡塑机械有限公司| 台州博州机械有限公司| 机械加工 有限公司| 东莞高恩机械有限公司| 南通 机械有限公司| 南京斯坦福机械有限公司| 张家港机械设备有限公司| 浙江迅定钢铁有限公司| 河南卫华起重机有限公司| 上海太腾机械设备有限公司| 徐州起重机械有限公司| 烟台金土源机械化工程有限公司 | 常州金源机械设备有限公司| 昆山市升达机械制造有限公司 | 天门纺织机械有限公司| 宁波钢铁有限公司工作| 西安工程机械有限公司| 南京彩途机械设备有限公司| 金纬机械常州有限公司| 上海昱钢包装机械有限公司 | 郑州钰隆机械有限公司| 张市机械机械有限公司| 朝阳重工机械有限公司| 食品包装机械有限公司| 上海诚淘机械有限公司| 广州赛威机械有限公司| 浙江康明斯机械有限公司| 开封良益机械有限公司| 郑州市昌利机械制造有限公司| 宁波久力数控机械有限公司| 江苏苏东化工机械有限公司| 河南正工机械制造有限公司| 中山松德印刷机械有限公司| 佛山机械设备有限公司| 浙江东雄重工有限公司| 特斯克机械有限公司| 天山重工机械有限公司| 念朋机械设备有限公司| 新乡市大汉振动机械有限公司| 西安凌通机械有限公司| 昆山昆成机械有限公司| 浙江荣升机械有限公司| 珠海 机械 有限公司| 浙江机械制造有限公司| 中核华兴机械化工程有限公司| 上海 输送机械有限公司| 仕诚塑料机械有限公司| 上海宏铭纺织机械有限公司 | 温州印刷机械有限公司| 上海嘉迪机械有限公司| 莒县长运机械有限公司| 浙江江华机械有限公司| 浙江锦峰纺织机械有限公司| 宁波东力机械制造有限公司| 芜湖科翔动力机械有限公司| 广州盛广誉机械设备有限公司| 山本机械苏州有限公司| 上海金相机械有限公司| 湖南运想重工有限公司| 江苏新美星包装机械有限公司| 苏州牧天动力机械有限公司| 慈溪机械设备有限公司| 山东德丰重工有限公司| 佛山市科鹰机械有限公司 | 山东 工程机械有限公司| 青岛威尔塑料机械有限公司| 浙江吉隆机械有限公司| 三星重工业宁波有限公司招聘 | 天工工程机械有限公司| 郑州世纪精信机械制造有限公司| 宜都大一重工有限公司| 浙江大宇轻工机械有限公司| 南通 机械 有限公司| 南京欧能机械有限公司| 泸州益鑫钢铁有限公司| 重庆动霸机械制造有限公司| 天津市三鼎包装机械有限公司| 泊头市环保机械有限公司| 南通中远重工有限公司| 天津华悦包装机械有限公司| 苏州工业园区嘉宝精密机械有限公司 | 上海豪德机械有限公司| 昆山优能机械有限公司| 山东力强机械有限公司| 贵州华泰机械设备租赁有限公司| 华盛机械制造有限公司| 韩通船舶重工有限公司| 山东白龙机械有限公司| 浙江伟焕机械制造有限公司| 杭州德智机械有限公司| 南牧机械有限公司招聘| 沈阳工程机械有限公司| 南通力威机械有限公司| 广州市磊蒙机械设备有限公司| 宁波方力机械有限公司| 长沙昊博机械设备有限公司| 太仓越华精密机械配件有限公司| 广东信昌机械有限公司| 佛山精密机械有限公司| 三明机械制造有限公司| 深圳市合发齿轮机械有限公司| 华盛机械设备有限公司| 温州欧诺机械有限公司| 芜湖仅一机械有限公司| 上海全众机械有限公司| 江苏中闽钢铁有限公司| 河南东盈机械设备有限公司| 大连日立机械设备有限公司| 河南乾坤工程机械有限公司| 上海冉本机械制造有限公司| 四川瑞迪佳源机械有限公司| 瑞安市天晟包装机械有限公司| 瑞安 机械有限公司| 厦门机械设备有限公司| 曲阜市机械有限公司| 机械有限公司 南丰| 上海机械实业有限公司| 浙江塑料机械有限公司| 星包装机械有限公司| 鸿江机械制造有限公司| 辽宁天亿机械有限公司| 山东龙辉起重机械有限公司| 纽科伦新乡起重机有限公司| 青岛液压机械有限公司 | 万好万家机械有限公司| 新乡市矿山起重机械有限公司| 郑州茂祥机械有限公司| 工程机械有限公司经营范围| 江西欧克机械有限公司| 山东龙起重工有限公司| 山东山鼎工程机械有限公司| 南京久庆机械有限公司| 维特根机械有限公司| 河南省新乡市矿山起重机有限公司| 山东新纪元重工有限公司| 上海贯博起重设备有限公司| 杭州兴达机械有限公司| 浙江 动力机械有限公司| 常熟市机械有限公司| 河北鑫晟机械有限公司| 上海海邦机械设备制造有限公司 | 苏州宏呈祥机械有限公司| 山东威曼机械有限公司| 常州亚美柯机械设备有限公司| 宁波天瑞精工机械有限公司| 天津市液压机械有限公司| 兰州 机械 有限公司| 宁波海伯精密机械制造有限公司| 上海久协机械设备有限公司| 陀曼精密机械有限公司| 大连矢岛机械有限公司| 天津机械制造有限公司| 昆山市贝纳特机械设备有限公司| 东莞市台立数控机械有限公司| 廊坊畅享机械有限公司| 江苏八达重工机械有限公司| 宁波拓诚机械有限公司| 合肥市春华起重机械有限公司| 万则盛机械有限公司| 河南启瀚机械设备有限公司| 天津新港船舶重工有限公司| 上海曼中机械有限公司| 鹰普机械宜兴有限公司| 金坛包装机械有限公司| 上海 起重设备有限公司| 山东泰峰起重设备制造有限公司 | 浙江南山传动机械有限公司| 老挝第一钢铁有限公司| 沃得农业机械有限公司| 泰安鑫杰机械有限公司| 淄博协丰机械有限公司| 青岛奥硕数控机械有限公司 | 滕州市美力机械有限公司| 常州市锦益机械有限公司| 标特福精密机械电子有限公司| 宝钢湛江钢铁有限公司招聘| 北京加隆工程机械有限公司| 德州市机械有限公司| 昆山乔地精密机械有限公司| 郑州维科重工机械有限公司| 上海舜锋机械制造有限公司| 深圳包装机械有限公司| 郑州祥龙建筑机械租赁有限公司| 华东机械制造有限公司| 华盛机械制造有限公司| 东莞市嘉鲁特注塑机械有限公司| 河南兴远起重机有限公司| 山东冠华重工机械有限公司| 郑州食品机械有限公司| 南通昭和机械有限公司| 山东德工机械有限公司| 宜昌 机械有限公司| 江苏中闽钢铁有限公司| 山西万泽锦达机械制造有限公司| 郑州市机械设备有限公司| 山东力强机械有限公司| 江苏谷登工程机械装备有限公司| 河南兴邦重工机器有限公司| 无锡润和机械有限公司| 淄博 机械设备有限公司| 浙江歌德起重机有限公司| 格林策巴赫机械有限公司| 苏州奥德机械有限公司| 沈阳 机械 有限公司| 苏州奥达机械部件有限公司| 化工机械制造有限公司| 天津安东石油机械制造有限公司| 华夏机械设备有限公司| 东莞市东机械设备有限公司 | 龙口和义机械有限公司| 曲阜市机械有限公司| 常州先电机械有限公司| 汉中群峰机械制造有限公司| 浙江美华包装机械有限公司| 江西为民机械有限公司| 三门峡机械有限公司| 襄阳通威机械有限公司| 东莞麒麟机械有限公司| 无锡市江益液压机械成套有限公司| 同鼎机械设备有限公司| 包装机械制造有限公司| 济宁福瑞得机械有限公司| 咸阳 机械制造有限公司| 台湾高明机械有限公司| 合肥华运机械制造有限公司| 济南启正机械工业有限公司| 珠海飞马传动机械有限公司| 上海佳成服装机械有限公司| 重庆机械制造有限公司| 上海金恒机械制造有限公司| 沂水巨龙机械有限公司| 温州中环机械设备有限公司| 科华机械制造有限公司| 深圳市铭利达精密机械有限公司| 温州立胜印刷包装机械有限公司 | 浙江亿鹏机械有限公司| 成机械设备有限公司| 江苏羚羊机械有限公司| 威士重工机械有限公司| 瑞安市华东包装机械有限公司| 大京机械山东有限公司| 安徽柳工起重机有限公司| 上海力净洗涤机械制造有限公司| 苏州市机械制造有限公司| 大连日立机械设备有限公司| 昆山六丰机械工业有限公司| 肯拉铎机械有限公司| 无锡市双瑞机械有限公司| 旭众食品机械有限公司| 湖南中一惠龙机械设备有限公司 | 青岛璞盛机械有限公司| 江苏 机械有限公司| 浙江天盛机械有限公司| 上海荣沃机械有限公司| 无锡橡塑机械有限公司| 上海拓稳机械有限公司| 联征机械设备有限公司| 烟台浩阳机械有限公司| 山东海宏重工有限公司| 中山 机械有限公司| 潍坊华星机械有限公司| 上海隆康机械设备有限公司| 盐城机械制造有限公司| 上海乾享机械设备有限公司| 广州机械租赁有限公司| 常州恒力机械有限公司| 新昌县蓝翔机械有限公司| 山西 重工有限公司| 广州博创机械有限公司| 安庆佳乐机械有限公司| 天津市精密机械有限公司| 洛北重工机械有限公司| 洛阳美卓重工机械有限公司| 沈阳凯力拓机械设备有限公司| 洛阳福格森机械装备有限公司 | 杭州海兴机械有限公司| 诸城市富瑞德机械有限公司 | 唐山安丰钢铁有限公司| 福建 机械有限公司| 南京恒昌包装机械有限公司| 桂林中天机械有限公司| 山东联亿重工有限公司| 杭州恒机械有限公司| 上海鑫水机械有限公司| 无锡盛达机械制造有限公司 | 张家港港龙机械有限公司| 济南四通机械有限公司| 郑州市鑫宇机械制造有限公司| 上海鹰宏机械有限公司| 特斯克机械有限公司| 浙江天盛机械有限公司| 温岭市林大机械有限公司| 徐州挖掘机械有限公司| 宝钢湛江钢铁有限公司| 欧克机械制造有限公司| 青岛佳友包装机械有限公司| 上海钢铁交易中心有限公司| 济宁福康机械加工有限公司| 杭州杭顺机械有限公司| 苏州爱恩机械有限公司| 鸿达机械制造有限公司| 东莞达成机械设备制造有限公司| 佛山市三良机械设备有限公司 | 瑞安市印刷机械有限公司| 温州博宇机械有限公司| 浙江路杰机械有限公司| 同向精密机械有限公司| 德枫丹 青岛 机械有限公司招聘| 沈阳瑞熠机械有限公司| 斯特机械制造有限公司| 咸阳机械制造有限公司| 上海鑫水机械有限公司| 温州精宇机械有限公司| 泉州巨能机械有限公司| 上海紫明印刷机械有限公司| 宁波久力数控机械有限公司| 信阳众泰机械设备有限公司 | 江苏恒械机械有限公司| 江苏中贵重工有限公司| 黎城太行钢铁有限公司| 武汉船用机械有限公司| 青岛奥威机械有限公司| 杭州星宏机械有限公司| 天赛塑胶机械有限公司| 瑞安正博机械有限公司| 山东德州恒特重工有限公司| 上海钢铁交易中心有限公司| 新乡市中天机械有限公司| 江阴市礼联机械有限公司| 焦作 机械 有限公司| 佛山钢铁贸易有限公司| 江阴市三 机械有限公司| 沂水巨龙机械有限公司| 上海圣起包装机械有限公司| 深圳市高郭氏精密机械有限公司 | 宁波润达机械有限公司| 苏州联佳精密机械有限公司| 张家港市贝尔机械有限公司 | 宁波鑫淼机械有限公司| 徐州利国钢铁有限公司| 河南嵩山重工有限公司| 绍兴三纺机械有限公司| 首钢东华机械有限公司| 唐山荣信钢铁有限公司| 山东兴华机械有限公司| 临沂三友重工有限公司| 众旭食品机械有限公司| 江苏甲钢钢铁有限公司| 上海重型机械有限公司| 长沙力诺机械有限公司| 河南矿山重型起重机械有限公司 | 厦门市机械有限公司| 蚌埠行星机械有限公司| 广州坚诺机械设备有限公司 | 沈阳凯力拓机械设备有限公司| 山东机械 有限公司| 起帆电缆有限公司上市| 东莞智荣机械有限公司| 苏州宁兴精密机械有限公司| 山东川普机械有限公司| 诸城市金祥机械有限公司| 浙江杰豹机械有限公司| 浙江海重重工有限公司| 苏州辽鞍机械有限公司| 温州利波机械有限公司| 登福机械(上海)有限公司| 威塑料机械有限公司| 北京食之秀机械设备有限公司 | 浙江 料机械有限公司| 南通机械制造有限公司| 沈阳华盛机械有限公司| 扬州市天发试验机械有限公司| 浙江金驰机械有限公司| 抚顺起亮食品有限公司| 洛阳机械设备有限公司| 凯澄起重机械有限公司| 上海机械刀片有限公司| 张家港 机械有限公司| 东莞鸿昌机械有限公司| 临沂华立机械有限公司| 锦州天晟重工有限公司| 杭州三共机械有限公司| 东阳市机械有限公司| 上海机械配件有限公司| 上海捷如重工机电设备有限公司 | 台州市双辉机械设备有限公司| 凯澄起重机械有限公司| 钢铁国际贸易有限公司| 苏州琦珏机械有限公司| 四川晶工机械有限公司| 潍坊市贝特工程机械有限公司| 深圳液压机械有限公司| 佛山市松川包装机械有限公司| 江苏银河机械有限公司| 浙江荣升机械有限公司| 南京建克机械有限公司| 咸阳联合机械有限公司| 武汉日晗精密机械有限公司| 苏州安特精密机械有限公司| 天津天重江天重工有限公司| 纺织机械制造有限公司| 上海青川机械配件有限公司 | 郑州市机械设备有限公司| 上海映易包装机械设备有限公司 | 青岛科尼乐重工有限公司| 常州博成机械有限公司| 徐州圣邦机械有限公司| 纸箱机械设备有限公司| 浙江双子机械制造有限公司| 协展机械工业有限公司| 台州路桥机械有限公司| 南京明瑞机械设备有限公司| 湖北天和机械有限公司| 云南机械设备有限公司| 宁波顺兴机械制造有限公司| 宁波精密机械有限公司| 宝鸡市机械有限公司| 江苏舜天机械进出口有限公司| 杭州三共机械有限公司| 德州佳永机械制造有限公司| 烟台莫深机械设备有限公司| 南通虹波机械有限公司| 烟台 机械设备有限公司| 安庆恒昌机械有限公司| 广东仕诚塑料机械有限公司| 沂南中天机械有限公司| 浙江乐江机械有限公司| 天津千百顺钢铁贸易有限公司| 海宁美惠机械有限公司| 成都液压机械有限公司| 郑州市鼎盛机械制造有限公司| 星塔机械深圳有限公司| 佛山市精密机械有限公司| 河南耿力机械有限公司| 济南天业工程机械有限公司| 温州杰福机械设备有限公司| 杭州千和精密机械有限公司| 扬州华粮机械有限公司| 江苏精明机械有限公司| 湖南机械设备有限公司| 张家港市贝尔机械有限公司 | 河北鑫达钢铁有限公司| 东莞机械设备制造有限公司| 潍坊润达机械有限公司| 东莞 机械有限公司| 广州市天烨食品机械有限公司| 上海傣纬机械设备有限公司| 杭州纺织机械有限公司| 厦门机械设备有限公司| 随州盛星机械有限公司| 厦门 机械设备有限公司| 河南发达起重机有限公司| 输送机械制造有限公司| 南通惠生重工有限公司| 广州市佳速精密机械有限公司| 南京佳盛机械设备有限公司|