寒假過一半了,前面都在耍廢是時候該來更新一下這個系列ㄌ
假如前面的教學消化得差不多了 來個進階一點的 嘿嘿~~
Ligature 的基本介紹
連體字這個概念是西文手寫體中數個字母連寫成一個新的符號,最常見的是當英文字母中的 f 和 i 連在一起時,會被一個新的 fi 符號所取代。
英文排版中常見的 fi 和 fl (圖片來源:
維基百科)
這些特殊符號是為了讓排版更加好看,所以用了一個新符號取代原本的兩個符號。通常中文沒有這種排版需求,大概唯一的例外是瑞穗咖啡牛奶。
如何用 FontForge 實現 Ligature
Ligature 的原理十分簡單:當兩個(或以上)的指定字圖碰在一起時,被另一個新的字圖所取代,我現在先做了ㄉ(uni3109) 、ㄞ(uni311E) 兩個字圖以及一個空白字圖。並且在空白字圖裡放入ㄉㄞ。
然後在空白字圖上右鍵→字圖資訊,將字圖名稱改為 "uni3109_uni311E" 。
這樣依舊不會讓ㄉㄞ連體,還必須再到元件→字型資訊→查找→GSUB→加入查找。之後會跳出一個新的視窗,【型態】中選擇「連體字替代」→【特徵】中選擇「liga 標準連體字」,然後確定。
點選剛剛新建的查找,右邊有一個【加入子表格】,加入後按【編輯資料】。這時候會跳出一個新的視窗,這裡就是編輯連體字規則的地方。點「新增」會新增一行新的取代規則,在左欄輸入取代後的字圖,這裡輸入了剛剛做的ㄉㄞ的字圖名稱 "uni3109_uni311E"。在右欄輸入欲取代的字圖(用半形空格分開) 這裡輸入了 "uni3109 uni311E"。完成輸入後,可以讓滑鼠游標在該行停留久一點,會出現取代前和取代後的差異。
再次打開字框視窗,就會發現ㄉㄞ變成連體字了!
這樣就完成了連體字!484很簡單R~~~
在中文中雖然需要用到這種功能的時候相當少,不過可以用此功能搭配「
表意文字描述字元」做出不存在 (UNICODE 未收錄) 的字。例如在思源字體中輸入「⿺辶⿳穴⿰月⿰⿲⿱幺長⿱言馬⿱幺長刂心」藉由 ligature 功能,而會變成下面這個字。
參考資料
延伸閱讀