構造体 MFLTFont
[FLT API]

FLT ドライバが使うフォントの型. [詳細]

変数

MSymbol family
int x_ppem
int y_ppem
int(* get_glyph_id )(struct _MFLTFont *font, MFLTGlyphString *gstring, int from, int to)
int(* get_metrics )(struct _MFLTFont *font, MFLTGlyphString *gstring, int from, int to)
int(* check_otf )(struct _MFLTFont *font, MFLTOtfSpec *spec)
int(* drive_otf )(struct _MFLTFont *font, MFLTOtfSpec *spec, MFLTGlyphString *in, int from, int to, MFLTGlyphString *out, MFLTGlyphAdjustment *adjustment)
void * internal

説明

FLT ドライバが使うフォントの型.

MFLTFont は、FLTドライバが使うフォントに関する情報を格納するた めの構造体である。通常アプリケーションは最初の要素が MFLTFont で、 残りの要素にcallback関数が利用するフォント情報を持った、より大きな 構造体を用意し、それを MFLTFont に coerce して mflt の各関数に渡す。 各callback関数は MFLTFont を元の構造体に coerce し直すことができる ことが保証されている。


構造体

フォントのファミリー名。フォントに適した FLTを探す際に重要でな い場合 (たとえば OpenTypeフォントの場合など) は、Mnil でよい。

フォントの水平サイズを pixels per EM で表現したもの。

フォントの垂直サイズを pixels per EM で表現したもの。

int(* MFLTFont::get_glyph_id)(struct _MFLTFont *font, MFLTGlyphString *gstring, int from, int to)

GSTRING 内の FROM から TO 直前までの各グリフに対応するグリフ IDを取得するための callback 関数。もしあるグリフのメンバー <encoded>がゼロならば、そのグリフのメンバー <code> は文字コードで ある。この関数はその文字コードを FONT のグリフ IDに変換しなくては ならない。

int(* MFLTFont::get_metrics)(struct _MFLTFont *font, MFLTGlyphString *gstring, int from, int to)

GSTRING 内の FROM から TO直前までの各グリフに対応するメトリッ クを取得するための callback 関数。もしあるグリフのメンバー <measured>がゼロならば、この関数はそのグリフのメンバー <xadv>, <yadv>, <ascent>, <descent>, <lbearing>, および <rbearing>をセッ トしなければならない。

int(* MFLTFont::check_otf)(struct _MFLTFont *font, MFLTOtfSpec *spec)

フォントがある特定のスクリプト/言語に対する GSUB/GPOS OpenTypeフィーチャーを持つか否かを調べる callback 関数。この関数 はフォントがSPEC を満たすときは 1 を、そうでないときは 0を返さな ければならない。フォントが OpenType テーブルを持たないときはNULL でなければならない。

int(* MFLTFont::drive_otf)(struct _MFLTFont *font, MFLTOtfSpec *spec, MFLTGlyphString *in, int from, int to, MFLTGlyphString *out, MFLTGlyphAdjustment *adjustment)

IN 内の FROM から TO 直前までの各グリフに SPEC内の各 OpenType フィーチャーを適用するための callback 関数。適用結果のグリフ列は OUT の末尾に追加される。OUT が短か過ぎて結果を追加し切れない場合 は -2 を返さなくてはならない。フォントが OpenType テーブルを持た ない場合は NULLでなければならない。

m17n-lib の内部作業用。NULL に初値化される。

 全て データ構造 ファイル 関数 変数 型定義 列挙型 列挙型の値 マクロ定義

m17n-lib Home