330 likes | 636 Views
第 12 回多言語組版研究会 多言語組版のためのフォント技術. l. 内田富久. 内 容. OpenType フォントの現状 OpenType フォントと TrueType フォントの比較 OpenType のタイポグラフィー向け機能 組版ソフトは OpenType をどう使うか その他. フォントの分類. OpenType フォントの現状 . ① 日本語 OTF CFF ベース( The Type 2 Charstring Format ) ※CFF - PostScript (Compact Font Format)
E N D
第12回多言語組版研究会多言語組版のためのフォント技術第12回多言語組版研究会多言語組版のためのフォント技術 l 内田富久
内 容 • OpenTypeフォントの現状 • OpenTypeフォントとTrueTypeフォントの比較 • OpenTypeのタイポグラフィー向け機能 • 組版ソフトはOpenTypeをどう使うか • その他 l
フォントの分類 l
OpenTypeフォントの現状 ① 日本語OTFCFFベース(The Type 2 Charstring Format)※CFF - PostScript (Compact Font Format) ② 欧文OTFTrueTypeベースが多い l
日本語OpenTypeフォントの特徴 ① Windows・Mac(data fork)で使用できる。Rasterizer(日本語OTF)Windows:Win2K/XPはOSに組み込まれ ている。その他、ATMをinstallMac :OS-XOSに組み込まれている。 その他、ATMをinstall ② Unicodeベース +AJ1-4(AJ1-5) ③ 日本語組版を考慮した文字の属性データがいろ いろ追加(feature table) l
日本語OpenTypeフォントの特徴 注意点① フォントにはAJ1-4の文字数(15,444字) あるが全ての文字を表示するにはアプリケー ション側が管理。OTFのFeature機能も同様。 ② 現在InDesign・Illustrator-CSはサポート しているがそれ以外は通常のTTF・CIDと同様。S-JIS・システム外字文字数。 l
Adobe-Japan文字セット OTF-Std版(AJ1-3) OTF-Pro版(AJ1-4/AJ1-5) l
OTFフォント・ファイル構造 1.Offset Table 2.実データ l
OTL(OpenType Layout) OTL関係のテーブル ① GSUB/GPOS/BASE/JSTF/GDEF ② script・・・グリフの集合 (Latin,平仮名、片仮名、漢字) ③ language system (英語、フランス語、ドイツ語) l
ScriptとScriptTag Script tags Script tags identify the scripts represented in a OpenType Layout font. Script tags are defined by Microsoft Typography and correspond to the contiguous character code ranges in Unicode. l
日本語OTF GPOSに属するfeatureテーブル 日本語OTFは欧文と比較すると少ない l
GDEF(glyph definition) 注 日本語Otf使用していない l
GDEFGlyph classの例 アラビア語の例 No. 0 startGid : 0 endGid: 445 Class=base glyf No. 1 startGid : 446 endGid: 463 Class=mark glyf No. 2 startGid : 464 endGid: 476 Class=base glyf No. 3 startGid : 477 endGid: 481 Class=mark glyf l
多言語用OTFを使用して組版を行うには 1.OTF対応のアプリケーションを使用 ① 各国別のOS・アプリケーションの利用 ② ・・・ 2.独自に制作 ① 多言語(Uniscribe),feature(OTLS) OTLS:OpenType Layout Service library ② アプリケーションのPlugInAPIを利用 ③ フォントデータから必要とするデータを直接 参照する。 ④ ・・・ l
組版とフォント情報 グリフ置換 エンコーディング グリフデータ GSUB cmap/loca glyf/CFF メトリックス情報 Hmtx/vmtx/GPOS 禁則処理 行組版ルール 1行印字 l
プログラムでOTFのデータをアクセスすには? ポイント ① Glyphデータへのアクセス-cmap -loca -maxp -glyf ② GSUBとGPOSではGSUBが先-まずGlyphの置き換えがあるか-常にGlyphのセット幅(run)を計算③ 適用するfeature tabel の調査 ④ Lookuptable/Sub tableを調べる ⑤ Glyphに適用 l
各国の言語をアクセスする際の注意点 ① Coverageとは入力tableのこと 入力Glyph番号(class)に対し、出力Glyph 番号class)が対応 ② Chained Contextual Substitute等、そ の言語について熟知していないと使用方法がわ からない?(BacktrackGlyph/InputGlyph/LookaheadGlyph) ③ GDEFGlyph classが定義 l
各国の言語をアクセスする際の注意点 ④ postテーブルcmapで定義でない文字に対しglyphのGlyph 名を記述。(例、アラビア語)Glyf#: 867 GlyfNameI#: 632 uni067C.fina Glyf#: 868 GlyfNameI#: 633 uni067C.init Glyf#: 869 GlyfNameI#: 634 uni067C.inittall Glyf#: 870 GlyfNameI#: 635 uni067C.initshort Glyf#: 871 GlyfNameI#: 636 uni067C.medi Glyf#: 872 GlyfNameI#: 637 uni067C.meditall Glyf#: 873 GlyfNameI#: 638 uni067C.medivar1 l
アラビア語フォントの解析 質問 l