字符之間的距離是字體設(shè)計(jì)中重要的必須的一部分。
字體的字母間距的設(shè)計(jì)應(yīng)該作為字體設(shè)計(jì)整個(gè)進(jìn)程的必須部分來展開。好的間距對一個(gè)字體正常運(yùn)行時(shí)必須的。
在 FontForge 中,度量值(Metrics)窗口允許你設(shè)計(jì)字體的度量值,修改他們之間的間距,并測試字形放在一起看起來怎么樣。度量值窗口可以從“Window”菜單或者 Control-k 命令打開。
任意兩個(gè)字形間的間距分為兩部分;第一個(gè)字形后的間距和第二個(gè)字形前的間距。字形間的這些間距是由兩個(gè)字形間的“旁邊空白”組成。每個(gè)字形有一個(gè)左跨距和一個(gè)右跨距,在下面的 Open Sans 字體的小寫字母“a”的例子中,右跨距的值是 166 單位,左跨距的值時(shí) 94 單位。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/sidebearings.png" alt="sidebearings.png" />
字符的旁邊空白在 FontForge 的度量值窗口中可以用 5 種方式編輯:
手動(dòng)拖動(dòng)每邊空白的邊界。
手動(dòng)拖動(dòng)一個(gè)字符。需要注意的是拖動(dòng)一個(gè)字符將只影響左跨距的值。
旁邊空白的值可以通過在度量值窗口的 Metrics 表格中直接編輯。
旁邊空白的值可以通過快捷鍵增減/減少。
使用鍵盤調(diào)整旁邊空白的值。
在 FontForge 中快速精確地調(diào)整度量值的一個(gè)方法是使用鍵盤的上下左右鍵。上下鍵用來增加和減少值,alt+上、alt+下、alt+左、alt+右,用來到在度量值窗口中導(dǎo)航到周圍不同的字段。
作為一般原則,對稱字符比如“A”、“H”、“I”、“M”、“N”、“O”、“T”、“U”、“V”、“W”、“X”、“Y”、“o”、“v”、“w”、“x”將會(huì)有對稱的旁邊空白,比如“H”的左跨距和右跨距值將會(huì)相同。需要注意的是盡管如此,這并不是一個(gè)硬性規(guī)則,而是一般規(guī)則。
在你調(diào)整你設(shè)計(jì)的字符的空間時(shí),你應(yīng)該相信自己的眼睛。大概方法是“設(shè)計(jì)-觀察-調(diào)整-再觀察”。
對于不折不扣的新手,不要假設(shè)可靠的結(jié)果以來測量間距來取得。例如雖然兩個(gè)字符間的測量值不相等,但是眼睛看起來是相等的。一個(gè)明顯的這樣的例子在嘗試調(diào)整字符“H”和“O”的間距的時(shí)候可以看到。因此對于下面的例子,“H”和“O”的旁邊空白相等,但是看起來不相等。在下面的一條線上,旁邊空白不相等但是間距看起來是平衡的。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/hoohooo2.png" alt="hoohooo2.png" />
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/hoohooo1.png" alt="hoohooo1.png" />
產(chǎn)生這樣文本的一個(gè)工具在 http://tools.ninastoessinger.com/
“Center in Width” - 這個(gè)命令將當(dāng)前字形放置在其寬度的中央。
“Window Type” - FontForge 的度量值窗口內(nèi)可以通過兩種方式調(diào)整度量值:
“Advance Width Only” - 在這種模式下,度量值視圖只能用來調(diào)整字形的步進(jìn)寬度。
“Both” - 在這種模式下度量值視圖將會(huì)調(diào)整步進(jìn)寬度和字距值。
“Set Width” - 這個(gè)命令允許你改變當(dāng)前字形的寬度。
“Set LBearing” - 允許你改變左跨距的值。
下面的方法是用來讓你開始高效地設(shè)計(jì)你的字體的度量值。
從度量值窗口的一個(gè)小寫字母“o”的字符串開始,左邊和右邊的空白可以調(diào)整直到字符間距看起來感覺對。尋找這個(gè)正確的位置的一個(gè)方法是尋找“o”字符之間的空白來平衡字符“o”內(nèi)的空白。通常出了斜體字體外,小寫字母“o”的左邊和右跨距應(yīng)該值相等。一旦你滿意“o”字符串間距,從你的字體中引進(jìn)“n”(如下)并通過觀察調(diào)整“n”的旁白空白著這樣它的間距適合“o”字符串的平衡(如下)。需要注意的是由于我們的眼睛看東西的本性,“n”的右跨距值總是比左跨距的值小,“o”的旁白空白比“n”的旁邊空白小。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/snapshot1_1.png" alt="snapshot1_1.png" />
一旦“n”和“o”都有了充分間距,那么他們的旁邊空白可以用來創(chuàng)建一組其他字母的旁邊空白,例如:
“o”的右跨距可以用于“c”,“d”,“e”和“q”的旁邊空白。
“o”的左跨距可以用于“b”和“p”的左跨距。
“n”的右跨距可以用于“h”和“m”的左跨距。
注意:上述應(yīng)該用作指南,可以用作找到這些旁邊空白值的一個(gè)超有效的出發(fā)點(diǎn)。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/snapshot2.png" alt="snapshot2.png" />
如上圖所示,這對于使用“n”和“o”的字符串來調(diào)整剩余小寫字母的旁邊空白間距是有意義的。再次強(qiáng)調(diào),相信你的眼睛來達(dá)到字符的正確平衡。
大寫字母可以用如上相同的原則來調(diào)整間距。例如從字符串“Hooooo”開始,調(diào)整“H”的右跨距直到感覺與“o”字符串平衡。由于“H”的左跨距等于右跨距,那么大寫字母“O”可以通過“H”來調(diào)整間距(如下)。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/snapshot3.png" alt="snapshot3.png" />
通過已經(jīng)調(diào)整好間距的字符來從這里調(diào)整所有其他字符間距。需要注意這個(gè)方法可以用作調(diào)整字體間距的好的起點(diǎn),但是很可能需要花費(fèi)更多時(shí)間很好地微調(diào)間距來實(shí)現(xiàn)較高層次的好的字母間距。其他在這里有用的字符串包括“naxna”,“auxua”,“noxno”,“Hxndo”。
緊縮是特定字母對之間間距的調(diào)整。緊縮允許你在兩個(gè)字符之間應(yīng)用除了字符提供的旁邊空白外的獨(dú)立間距。需要緊縮來改善間距的常見一對字符例子有“WA”,“Wa”,“To”,“Av”。在下面的例子中,我們可以看到?jīng)]有緊縮間距的一對字母“T-o”和“V-a”太寬了,這些字符對在緊縮間距后字體的其他間距的感覺更加平衡。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/kern1.png" alt="kern1.png" />
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/kern2.png" alt="kern2.png" />
FontForge 的度量值窗口可以用來設(shè)計(jì)旁邊空白和緊縮值。在 FontForge 中緊縮值可以通過一些方法來應(yīng)用,其中兩種方法在下面展示,類別緊縮和獨(dú)立對緊縮。
“Window Type” - FontForge 的 Metrics 窗口可以通過兩種方式實(shí)現(xiàn)緊縮調(diào)整:
“Kerning Only” - 在這種模式下度量值視圖只能用來調(diào)整緊縮。
“Kern By Classes” - 這個(gè)命令提供一個(gè)操作緊縮類別的對話框給用戶。
“Kern Pair Closeup” - 這個(gè)命令提供一個(gè)可以調(diào)整已有的緊縮對或者創(chuàng)建新的緊縮對的對話框給用戶(如下)。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/kerncloseup.png" alt="kerncloseup.png" />
像調(diào)整旁邊空白值一樣,在 FontForge 中緊縮值也可以通過鍵盤的上下左右鍵快速準(zhǔn)確修改。上鍵和下鍵用來增加/減少值,alt+上、alt+下、alt+左、alt+右用來在度量值窗口中導(dǎo)航到周圍的不同字段。
在 FontForge 中這是創(chuàng)造緊縮的對的最基本的方法。在度量值窗口中,兩個(gè)字符的緊縮值可以通過拖動(dòng)右邊字符接近或遠(yuǎn)離左邊字符或者在窗口的度量值表格中直接編輯緊縮值來手動(dòng)調(diào)整。通過拖動(dòng)字符來修改緊縮值,則使用在鼠標(biāo)指針懸停在兩個(gè)字符之間時(shí)出現(xiàn)的緊縮工具手柄(屏幕截圖如下)。度量值表格中的緊縮值可以通過手動(dòng)輸入值編輯或者使鍵盤上下鍵來增加/減少值。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/mnl-kern.png" alt="mnl-kern.png" />
“緊縮類別”可以在 FontForge 中創(chuàng)造來構(gòu)建擁有相同緊縮值的字符組。例如我們創(chuàng)造了一個(gè)稱為“o_left_bowl”的類別,其中包括的字符“o”、“c”、“d”、“e”、“q”在前面有字符例如“T”的時(shí)候?qū)⒖偸怯邢嗤木o縮值。“T”本身也可以是包含其他字符的另一個(gè)類別,比如 Tcaron 和 Tbar 的成員。類別緊縮可以有效地節(jié)省你的許多時(shí)間。
創(chuàng)造緊縮類別的最直接的方式是使用 FontForge 的度量值菜單的“Kern by classes”。
選擇“Kern by classes”,可以看到“new lookup”按鈕。
點(diǎn)擊“New Lookup”按鈕,另一個(gè)窗口將會(huì)彈出,你可以在這里創(chuàng)建一個(gè)緊縮特征查找。
在“Type”下拉列表中選者“pair position kerning”條目。
現(xiàn)在點(diǎn)擊“Feature”列“NEW”旁邊的向下剪頭,在下拉列表中選擇“Horizontal Kerning”。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/kern_classes_1.png" alt="kern_classes_1.png" />
現(xiàn)在你可以看到一個(gè)窗口,可以在其中構(gòu)建你的實(shí)際緊縮類別(如上)。緊縮對的第一個(gè)字符可以從左邊的列中選擇,第二個(gè)字符可以從右邊的列中選擇。
在 FontForge 中 Element>Font Info>Lookups 選項(xiàng)卡提供了一個(gè)類別緊縮的界面。它提供了一個(gè)對話框展示所有的 GPOS 查找(緊縮是其中之一)和其子表。屏幕截圖如下:
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/kernclass1.png" alt="kernclass1.png" />
為了創(chuàng)建一個(gè)新的緊縮查找,點(diǎn)擊“Add Lookup”并選擇“Pair Position(kerning)”作為查找類型,并賦予這個(gè)查找自己的唯一的名字(如下)。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/kernclass2.png" alt="kernclass2.png" />
緊縮類別的每個(gè)集合都存在他自己的子表中。為了創(chuàng)建一個(gè)子表,點(diǎn)擊“Add Subtable”。當(dāng)你創(chuàng)建一個(gè)緊縮子表的時(shí)候,你會(huì)被詢問想要一個(gè)獨(dú)立緊縮對的集合還是基于類別的矩陣。如果你選擇類別,你將會(huì)看到如下對話框,你可以在其中創(chuàng)建類別。需要注意的是你可以選擇啟用 FontForge 來“推測”或“自動(dòng)緊縮”你在對話框中創(chuàng)建的類別之間的緊縮值。如果使用 FontForge 來推測緊縮值,你將確實(shí)需要許多嘗試和錯(cuò)誤和試驗(yàn),但是使用自動(dòng)緊縮功能作為緊縮你的字體的起點(diǎn)是有意義的。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/kernclass3.png" alt="kernclass3.png" />
例如在上面的屏幕截圖中,創(chuàng)建了 2 個(gè)類別;一個(gè)類別包含字符“T”,另一個(gè)包含字符“o”。點(diǎn)擊上面對話框中的“OK”,你將會(huì)看到下面的對話框,在里面你可以很好地調(diào)整這兩個(gè)“T”和“o”類別之間的緊縮總量。
http://wiki.jikexueyuan.com/project/fontforge-and-font-design/images/kernclass4.png" alt="kernclass4.png" />
如果自動(dòng)緊縮的值需要調(diào)整(他們將會(huì)需要?。?,那么你可以用幾種方法來完成。
通過“kerning by classes”對話框窗口。
使用度量值窗口。