發表文章

目前顯示的是有「fonts」標籤的文章

靜嘉正黑體上線

根據之前 Cantarell + cwTeX Q Hei 的規劃,取得了 cwTeX Q Hei 其原始版本 cwTeX 粗黑體的漢字部份再以 OFL 給予授權,所以目前組合出了 Cantarell + cwTeX Hei Bold (cwTeX 粗黑體) 的 OFL 授權版本;為了與先前版本區分 (更換英數部份),此衍生作品暫且另名為「靜嘉正黑體」or "Zenjia Norm Hei)。 粗略規劃未來走向: 1. 靜嘉正黑體 Bold。為了與 Cantarell Bold 搭配,勢必要有對應的粗體。目前 fontconfig 作的偽粗會導致小字時容易整個字變成一團黑。為了更有效率,打算用 fontforge 演算出粗體版後再來精修。 2. 靜嘉正黑體修正。為了符合「正」,以及英文名為「Norm」的期待,將逐步修改與臺灣標準寫法相同。 3. 靜嘉黑體。純粹個人偏好試驗版本,打算改成純比例漢字字型 (英文與漢字皆比例),而不是目前普遍的等寬方塊漢字字型 (英文比例,漢字等寬);可能也會實驗各種功能。這個版本不會以符合臺灣標準為目標,而是符合個人藝術偏好。 考量中的修改: 1. 調大字型大小。根據 cwTeX Q Hei 的顯示效果來看,調大確實比較容易與其他漢字字型配合,例如 VL PGothic 就比 cwTeX 粗黑體的大小大,與 cwTeX Q Hei 的大小差不多。==> 如果要調整,可能要請教一下 cwTeX Q Hei 的修改者當初的調整方法。 2. 小字內嵌點陣。基本上解析度低的螢幕,小字 (字級 <= 12) 顯示黑體都還是會糊糊的,如果能內嵌點陣當然更好,不過要拿掉所有的襯線修飾,而且還要符合 OFL 授權,目前比較難。有作無襯線點陣字的目前大概只有文泉驛,不過印象中他們是用 GPL 授權的。加上將來將會是高解析度時代,所以還是先把精力放在其他主題上吧。XDD 3. 靜嘉等寬黑體。即不只漢字,連英文都等寬的版本。不過 Cantarell 沒有出等寬版,因此要作就得自己作自己改,但我對這還沒什麼概念,所以還是先把精力放在其他主題上吧。XDD 此專案屬個人 just for fun,所以並不像花園明朝、文泉驛以覆蓋全漢字為目標 (雖然後者這幾年來已經停擺),而是以「好看的現代無襯線漢字字型」為主旨,因...

字型小論

今日前去臺北聽了黑與白的饗宴講座,雖然中間一度因為分享內容有點不合個人興趣,曾經睡著,不過好在聽到中英字的匹配設計時又回神了過來,見識到分享者在中英字匹配所下的功夫,以及設計規劃時的原則。最後柯熾堅老師分享了他這麼多年來做字型,以及看見各個字型廠商作品後得來的心得:「每個漢字應該具有其生命韻律,不該只是死板單調的符號」(此文句非其原話逐字稿,乃本人理解後自行書寫之句)。 黑體:漢字的符號化 我們都知道現代漢字的寫法筆劃、空間配置根源是楷書,不管是明體、黑體、楷體、仿宋體... 等皆然。而現代的漢字字型最常用者不外乎明體與黑體,明體演化至今雖方方正正很有規律,但基本上仍保留楷書側努趯掠啄磔等特色;現代黑體出現時間相對短暫,其特色就是重視平衡,一筆一劃粗細同一,配置平均,卻也因此失去許多楷書的風範。 方塊字:現代字型的束縛 此外,現代字型與傳統之書法字最大差異之處,就在於「方塊字」的規範。不知道從何時何處開始的,漢字是方塊字一說流傳久矣。之所以有此說法,正是因為明體發展到活字印刷時期,就將字形設計成規一相同的方塊以便於排版,所以每個字都一樣長一樣寬。於是印刷體看久了,人們的心中也都有了既定印象─漢字就是個方塊。 信黑體:現代黑體的反思 但漢字真的是方塊嗎?其實只要稍微觀察過漢字,或是有一點字學的知識,便知道漢字是有形狀的,不全是方塊。上、下是三角形,目、月是立著的長方形;國曰是方形、參是菱形... 等,都展現出漢字形狀上的多變,不只是方塊。現代漢字字型的設計上,為了滿足「方塊」的既定規則,即使應該是瘦長的形狀都會被壓縮成方形,造成日曰難分等不易辨識問題。我們不難發現現代字型工業大廠所推出的黑體,都有個明顯特色,那就是每個字都幾乎沒有特色,十足的「工業感」。柯老師自嘲說自己很幸運,現在他不像以前一樣需要聽從上級給定的束縛規範,因此才得以實驗出信黑體這套具傳統楷書風格的黑體字型。 楷書:原始的生命眽動 柯老師以「三月草」為例,楷書的寫法可是非常有生命力、有韻律的,而漢字藝術之所以美,正歸因於文字所行走的氣息充滿變化。因此,一個有生命的黑體,應該延續楷書的精神,例如中宮收緊、重心偏高、空間配置多變... 等,這樣漢字才是漢字而擺脫單純的符號,這正是他多年來不斷重複造字工作後所得來的感想。以信黑體設計的三日月為例,與其他黑體相比,其中央的橫劃並非...

Cantarell + cwTeX 衍生字型的 OFL 與 GPL 議題

原本企圖整合兩個字型成為一個新字型,不過馬上遇到授權問題。Cantarell 從 2010 年起採用 SIL OFL 而放棄 GPLv3[0],cwTeX 與其衍生作品則採用 GPLv2+。麻煩的地方就在 SIL OFL 與 GPL 不相容[1]。 Cantarell 的 COPYING 檔案寫道: The fonts were initially published on the 6th of July 2009 on Dave Crossland's foundry website  under the terms of the GNU General Public License version 3.  In May 2010 the fonts were republished through Google Web Fonts under the terms of the SIL Open Font License version 1.1. In November 2010 the project became part of the GNOME project and is now under active development by the GNOME design community.  Dave Crossland, 21st March 2011 之所以與 GPL 不相容,是因為 SIL OFL 中有個規定,在 Section 5 of SIL OFL 1.1 寫道:  "The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license." 這與 GNU GPL 不相容,因為 GNU GPL 也有類似的聲明,要求整個作品必須基於 GNU GPL;而 SIL OFL 則要求衍生品只能採用 SIL OFL。 好了,所以要整合兩個字型,有四個辦法:一、挖出 GPL 版的 Cantarell,拿來與 cwTeX 衍生品整合就沒煩惱 ...

字型工作

昨天終於把 cwTeX Q fonts 的 fontconfig 寫好了,接下來就是推入 fedora 官方了。 不過使用時也發現一些 cwTeX Q fonts 的字樣可以改善的地方,例如 Hei 體的全形標點長得太性格,以及希望將英數換成 Cantarell 這樣也就不用別名強綁定;小字希望能嵌入點陣等。所以等打包工作告一段落後,也打算 fork 一個 cwTeX Q fonts 以修改成自己期望的樣子,並開始協助 Droid Sans Fallback 字形臺灣版的編修。 目前在 GitHub 上開了個 l10n-tw 組織,打算將來這些字型改善計畫統統納入旗下。 以下是一些 fontconfig 設定的知識紀錄與心得分享。 別名的設計原意就是用來替換字族。例如想要用 Times 可是手邊只有類似的 Times New Roman,那就可以將 Times New Roman 設為 Times 所偏好的別名,這樣一來,當有人要「Times」的時候就會給他「Times New Roman」 。 〈別名〉的〈偏好〉可以依順序羅列多項,會依內含字族的撰寫順序前置於比對的清單之前。提供一個不是很正規的技巧,就是可以羅列多種風格類似的字型,這樣系統就會由上而下取字,能讓原名字型有更大的覆蓋率。這個技巧的壞處就是,羅列的字型都會成為原名字型的別名... 這會間接影響到其他字型比對的運作機制。 〈別名〉的〈接受〉可以依順序羅列多項,會依內含字族的撰寫順序附加在比對的清單之後。 〈別名〉的〈預設〉會將內含的字族附加在比對的清單最末端,主要用來設定字族所要採用的預設字型。常見用法為指定 sans-serif 等通用字體名稱,讓內含的別名字族成為該字體的預設字型。 〈別名〉的「強」屬性綁定,會讓字族元素比語言元素還先比對,這用起來幾乎等於是別名項目覆蓋掉原名項目。例如將 cwTeX Q Hei 偏好的字族別名設為 Cantarell 與 cwTeX Q Hei,並且屬性為「強」綁定,那麼當有人要 cwTeX Q Hei 時,其實系統會直接給 Cantarell,遇缺才會找 cwTeX Q Hei。你可以將這個作法視為「絕對替換」看待。因此,這樣衍生出個小技法可以用在較少字的字型上,例如將中文字族偏好別名設定為西文字族,就可以替換掉中文字型中醜陋不協調的西...

cwtex-q-fonts 字型打包

首先,為了瞭解打包的概要,所以照著〈 How to create a GNU Hello RPM package/zh-tw 〉一文做了一次,約略知曉整個流程。 接著開始編輯 cwtex-q-fonts 的 spec 規格,這就像食譜一樣,只要寫得好,廚師就能直接煮出來。 嗯,講到這,我們得先準備好食材才行! 先切換到 ~/rpmbuild/SOURCES 擺放好所要的食材。也就是請前往 cwtex-q-fonts 的專案網站下載 0.2 版的封存檔,然後放到這個資料夾裡預備。抓下來的檔案叫做 cwtex-q-fonts-v02.tar.xz。 不過由於字型打包的 spec 樣板不在預設打包者工具中,要另外準備。所以如果你只有安裝前文所提及的 @development-tools 與 fedora-packager 的話還不夠,需要另外安裝: sudo yum install fontpackages-devel 裝好後,就能利用下列指令參照內含多款字型的軟體包其 spec 樣板: cd ~/rpmbuild/SPECS rpmdev-newspec -t fonts-multi cwtex-q-fonts 接著就來編輯 cwtex-q-fonts.spec 吧!用 vi 或是 gedit 都可以,順手就好。 利用樣板生成的檔案中,可以看到由 < 與 > 括住的地方,那是讓打包者替換所要內容的。①、②、③ 等數字編號,是小提示,拉到檔案最下方有註解解釋那段作什麼用途,或是選用填入之類的,整份檔案編輯完成後,記得把數字編號與最下方不再需要的註解移掉。 由於是第一次打包內含多款字型的字型包,不是很有頭緒,因此下載了一些字型 source rpm 來參考。 cd ~/rpmbuild/SPRMS yumdownloader --source google-droid-fonts cjkuni-uming-fonts wqy-microhei-fonts 用解壓縮軟體打開,找到附帶的 .spec 檔研究研究。 參考用 spec 檔開啟完後再回去 SPECS 資料夾。 cd ../SPECS 繼續改編 cwtex-q-fonts.spec 檔。 #global archivename %{name}...

Cantarell 和哪個開源中文字型最搭?

圖片
目前臺灣開源世界中,與中文字型相關的專案有幾個著名的。 CJKUnifonts 首先最常被使用的是源自居臺德國人 Arne Götje (高盛華) 之手的 CJKUnifonts 專案。CJKUnifonts 包含兩套中文字型 AR PL UMing 與 AR PL UKai,改自文鼎公司 1999 年開放的四套字型;文鼎細上海宋繁與文鼎報宋簡整合並改良後成 AR PL UMing;而文鼎中楷繁與文鼎中楷簡則合成 AR PL UKai。此套字型也含內嵌點陣字型,其中部份來自 firefly 之手。 目前 fedora 針對正體中文以 AR PL UMing 為預設顯示字型;ubuntu 在中文方面雖未以此為預設顯示字型,但繁體中文支援仍會安裝 AR PL UMing 與 AR PL UKai。 文泉驛 再來是來自美國華人房騫騫之手的文泉驛專案,一開始是以發展開源的點陣字型為目標,成果為文泉驛點陣宋,後來從無到有發展出向量字型文泉驛正黑。文泉驛正黑推出不久後各主流 Linux 散布版皆以此作為預設中文字型。後來 Google 發表 Droid 字型後,文泉驛再以它為根基,製作出文泉驛微米黑與文泉驛細微米黑兩套字型;而文泉驛微米黑因受益於專業設計的 Droid 字型相比文泉驛正黑更美觀易讀,那段時間內大多數 Linux 散布版以此取代文泉驛正黑。 目前 fedora 針對簡體中文以文泉驛正黑為預設顯示字型;ubuntu 則從 13.04 起將預設中文字型從微米黑改回正黑。 目前 Linux 領域下,臺灣的開源字型運用仍以此兩專案為主流。 接下來幾個字型專案雖在臺灣 Linux 界中的使用雖不如前者普及,但仍非常重要。 cwTeX 字型與其衍生作品 cwTeX 當初由 吳聰敏 (Tsong-Min Wu) 及吳聰慧 (Tsong-Huey Wu) 於1999-2004年間在開發 cwTeX 這套支援中文的 LaTeX 排版系統時製作,並以 GNU GENERAL PUBLIC LICENSE Version 2 或未來版本發佈。 在 2005 至 2007 年間,Edward G.J. Lee 對該字型進行過整理,先由 cwTeX 中文 Type 1 字型轉換而來,並整合 Alexej Kryukov 的 CM-LGC 字型...