FontCreator14 中文使用手冊

  1. 首頁
  2. FontCreator14 中文使用手冊
  3. OpenType布局功能
  4. Script Editor代碼編輯
  5. OTLFD腳本語法
  6. Sub關(guān)鍵字

Sub關(guān)鍵字

關(guān)鍵字 sub 用于聲明替換(substitute)字形。正如所支持的替換類型章節(jié)所述,有幾種不同的字形替換類型。替換字形只能在查詢(lookup)中聲明,不能在特征(feature)中直接聲明替換。每個查詢只能有一種類型的替換,這意味著如果您想在單個特征中使用幾種替換類型,必須聲明多個查詢。

聲明單個(類型 1)替換

lookup MyLookupTable {

 sub A -> a.smcp;

}

聲明多個(類型 2)替換

lookup MyLookupTable {

 sub ffi -> f f i;

}

聲明替代式(類型 3)替換

lookup MyLookupTable {

 sub asterisk -> [asterisk asteriskmath uni2051 uni2042 uni203B uni273B];

}

聲明連字(類型 4)替換

lookup MyLookupTable {

 sub f f i -> ffi;

}

聲明鏈?zhǔn)缴舷挛?類型 6)替換

lookup MyLookupTable {

 context (@<backtrackclasses>) @<inputclasses (@<lookaheadclasses);

 sub 0 <substitution table>;

}

替換聲明出現(xiàn)的順序,也是支持 OpenType 布局特征的應(yīng)用程序?qū)ζ溥M行處理的順序。這意味著在連字替換情況下:

lookup MyLookupTable {

 sub f i -> fi;

 sub f f i -> ffi;

}

上面語法與下面語法的效果不一樣:

lookup MyLookupTable {

 sub f f i -> ffi;

 sub f i -> fi;

}

并且,后者的聲明將得到正確的結(jié)果。為什么呢?在前者示例中,當(dāng)遇到“f i”序列時,就先行以“fi”字符進行了替換,不再匹配“f f i”序列。在后者的示例中,“f f i”在“f i”之前進行匹配,結(jié)果與預(yù)期相一致。FontCreator 會自動處理正確的順序,因此也無需擔(dān)心。

這篇文章對您有用嗎?

我們要如何幫助您?