languagesystem DFLT dflt; languagesystem hani dflt; languagesystem hani ZHS; languagesystem hani ZHT; languagesystem hani JAN; languagesystem kana dflt; languagesystem kana ZHS; languagesystem kana ZHT; languagesystem kana JAN; languagesystem latn dflt; languagesystem latn ZHS; languagesystem latn ZHT; languagesystem latn JAN; table head { FontRevision 1.005; } head; table hhea { Ascender 1151; Descender -286; LineGap 0; } hhea; table name { nameid 0 "\00A9 2017-2019 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'."; nameid 7 "Source is a trademark of Adobe in the United States and/or other countries."; nameid 8 "Adobe"; nameid 9 "Ryoko NISHIZUKA \897f\585a\6dbc\5b50 (kana & ideographs); Frank Grie\00DFhammer (Latin, Greek & Cyrillic); Wenlong ZHANG \5F20\6587\9F99 (bopomofo); Sandoll Communications \C0B0\B3CC\CEE4\BBA4\B2C8\CF00\C774\C158, Soohyun PARK \BC15\C218\D604, Yejin WE \C704\C608\C9C4 & Donghoon HAN \D55C\B3D9\D6C8 (hangul elements, letters & syllables)"; nameid 10 "Dr. Ken Lunde (project architect, glyph set definition & overall production); Masataka HATTORI \670D\90E8\6B63\8CB4 (production & ideograph elements)"; nameid 11 "http://www.adobe.com/type/"; nameid 13 "This Font Software is licensed under the SIL Open Font License, Version 1.1. This Font Software is distributed on an \0022AS IS\0022 BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the SIL Open Font License for the specific language, permissions and limitations governing your use of this Font Software."; nameid 14 "http://scripts.sil.org/OFL"; } name; table vhea { VertTypoLineGap 0; } vhea; table BASE { HorizAxis.BaseTagList icfb icft ideo romn; HorizAxis.BaseScriptList DFLT ideo -96 856 -120 0, hani ideo -96 856 -120 0, kana ideo -96 856 -120 0, latn romn -96 856 -120 0; VertAxis.BaseTagList icfb icft ideo romn; VertAxis.BaseScriptList DFLT ideo 24 976 0 120, hani ideo 24 976 0 120, kana ideo 24 976 0 120, latn romn 24 976 0 120; } BASE; table OS/2 { TypoAscender 880; TypoDescender -120; TypoLineGap 0; XHeight 514; CapHeight 729; WeightClass 900; WidthClass 5; Panose 2 2 9 0 0 0 0 0 0 0; FSType 0; Vendor "ADBO"; winAscent 1151; winDescent 286; } OS/2; lookup jp2cn { substitute uni597D.jp by uni597D.cn; substitute uniFF01 by uniFF01.cn; substitute uniFF1A by uniFF1A.cn; substitute uniFF1B by uniFF1B.cn; substitute uniFF1F by uniFF1F.cn; } jp2cn; lookup jp2tw { substitute uni3001 by uni3001.tw; substitute uni3002 by uni3002.tw; substitute uni597D.jp by uni597D.tw; substitute uniFF0C by uniFF0C.tw; substitute uniFF0E by uniFF0E.tw; } jp2tw; lookup vert_all { substitute uni3001 by uniFE11; substitute uni3002 by uniFE12; substitute uni3008 by uniFE3F; substitute uni3009 by uniFE40; substitute uni300A by uniFE3D; substitute uni300B by uniFE3E; substitute uni300C by uniFE41; substitute uni300D by uniFE42; substitute uni300E by uniFE43; substitute uni300F by uniFE44; substitute uni3010 by uniFE3B; substitute uni3011 by uniFE3C; substitute uni3014 by uniFE39; substitute uni3015 by uniFE3A; substitute uni3016 by uniFE17; substitute uni3017 by uniFE18; substitute uni3018 by uni3018.vert; substitute uni3019 by uni3019.vert; substitute uni301A by uni301A.vert; substitute uni301B by uni301B.vert; substitute uni301D by uni201C.vert; substitute uni301F by uni201D.vert; substitute uniFF08 by uniFE35; substitute uniFF09 by uniFE36; substitute uniFF0C by uniFE10; substitute uniFF0E by uniFF0E.vert; substitute uniFF3B by uniFE47; substitute uniFF3D by uniFE48; substitute uniFF5B by uniFE37; substitute uniFF5D by uniFE38; substitute uniFF5F by uniFF5F.vert; substitute uniFF60 by uniFF60.vert; substitute uniFF01.cn by uniFE15; substitute uniFF1A.cn by uniFE13; substitute uniFF1B.cn by uniFE14; substitute uniFF1F.cn by uniFE16; } vert_all; lookup vert_jp { substitute uniFF1A by uniFF1A.vert; } vert_jp; lookup vert_cn { substitute uni2018 by uniFE41; substitute uni2019 by uniFE42; substitute uni201C by uniFE43; substitute uni201D by uniFE44; substitute uniFF01 by uniFE15; substitute uniFF1A by uniFE13; substitute uniFF1B by uniFE14; substitute uniFF1F by uniFE16; } vert_cn; lookup vert_jptw { substitute uni2018 by uni2018.vert; substitute uni2019 by uni2019.vert; substitute uni201C by uni201C.vert; substitute uni201D by uni201D.vert; } vert_jptw; feature locl { # LATN SCRIPT script latn; language ZHS; lookup jp2cn; language ZHT; lookup jp2tw; # KANA SCRIPT script kana; language ZHS; lookup jp2cn; language ZHT; lookup jp2tw; # HANI SCRIPT script hani; language ZHS; lookup jp2cn; language ZHT; lookup jp2tw; } locl; feature vert { lookup vert_all; lookup vert_jp; lookup vert_jptw; # LATN SCRIPT script latn; language ZHS exclude_dflt; lookup vert_all; lookup vert_cn; language ZHT exclude_dflt; lookup vert_all; lookup vert_jptw; # KANA SCRIPT script kana; language ZHS exclude_dflt; lookup vert_all; lookup vert_cn; language ZHT exclude_dflt; lookup vert_all; lookup vert_jptw; # HANI SCRIPT script hani; language ZHS exclude_dflt; lookup vert_all; lookup vert_cn; language ZHT exclude_dflt; lookup vert_all; lookup vert_jptw; } vert; valueRecordDef < 0 0 -500 0 > HALF; valueRecordDef < 0 0 -250 0 > QUARTER; feature chws { # "Contextual Spacing" # Horizontal glyph classes @OpeningBracket = [uni2018 uni201C uni3008 uni300A uni300C uni300E uni3010 uni3014 uni3016 uni3018 uni301A uni301D uniFF08 uniFF3B uniFF5B uniFF5F]; @ClosingBracket = [uni2019 uni201D uni3009 uni300B uni300D uni300F uni3011 uni3015 uni3017 uni3019 uni301B uni301F uniFF09 uniFF3D uniFF5D uniFF60]; @PeriodComma = [uni3001 uni3002 uniFF0C uniFF0E]; @Centered = [uni3001.tw uni3002.tw uni30FB uniFF0C.tw uniFF0E.tw uniFF1A uniFF1B]; lookup chws_lookup { position @OpeningBracket @OpeningBracket < HALF >; position @ClosingBracket @OpeningBracket < HALF >; position @ClosingBracket @ClosingBracket < HALF >; position @ClosingBracket @PeriodComma < HALF >; position @ClosingBracket @Centered < HALF >; position @ClosingBracket uni3000 < HALF >; position @PeriodComma @OpeningBracket < HALF >; position @PeriodComma @ClosingBracket < HALF >; position @PeriodComma @PeriodComma < HALF >; position @PeriodComma @Centered < HALF >; position @PeriodComma uni3000 < HALF >; position @Centered @OpeningBracket < HALF >; position uni3000 @OpeningBracket < HALF >; } chws_lookup; } chws; feature kern { lookup chws_lookup; } kern; valueRecordDef < 0 0 0 -500 > HALF_VERT; valueRecordDef < 0 0 0 -250 > QUARTER_VERT; feature vchw { # "Vertical Contextual Spacing" # Vertical glyph classes @OpeningBracketVert = [uni2018.vert uni201C.vert uni3018.vert uni301A.vert uniFE17 uniFE35 uniFE37 uniFE39 uniFE3B uniFE3D uniFE3F uniFE41 uniFE43 uniFE47 uniFF5F.vert]; @ClosingBracketVert = [uni2019.vert uni201D.vert uni3019.vert uni301B.vert uniFE18 uniFE36 uniFE38 uniFE3A uniFE3C uniFE3E uniFE40 uniFE42 uniFE44 uniFE48 uniFF60.vert]; @PeriodCommaVert = [uniFE10 uniFE11 uniFE12 uniFF0E.vert]; @CenteredVert = [uni3001.tw uni3002.tw uni30FB uniFF0C.tw uniFF0E.tw uniFF1A.vert]; lookup vchw_lookup { position @OpeningBracketVert @OpeningBracketVert < HALF_VERT >; position @ClosingBracketVert @OpeningBracketVert < HALF_VERT >; position @ClosingBracketVert @ClosingBracketVert < HALF_VERT >; position @ClosingBracketVert @PeriodCommaVert < HALF_VERT >; position @ClosingBracketVert @CenteredVert < HALF_VERT >; position @ClosingBracketVert uni3000 < HALF_VERT >; position @PeriodCommaVert @OpeningBracketVert < HALF_VERT >; position @PeriodCommaVert @ClosingBracketVert < HALF_VERT >; position @PeriodCommaVert @PeriodCommaVert < HALF_VERT >; position @PeriodCommaVert @CenteredVert < HALF_VERT >; position @PeriodCommaVert uni3000 < HALF_VERT >; position @CenteredVert @OpeningBracketVert < HALF_VERT >; position uni3000 @OpeningBracketVert < HALF_VERT >; } vchw_lookup; } vchw; feature vkrn { lookup vchw_lookup; } vkrn;