m17n ライブラリ 1.8.4
読み取り中…
検索中…
一致する文字列を見つけられません
マクロ定義 | 列挙型 | 関数
はじめに

m17n ライブラリ イントロダクション. [詳解]

マクロ定義

#define M17NLIB_MAJOR_VERSION
 
#define M17NLIB_MINOR_VERSION
 
#define M17NLIB_PATCH_LEVEL
 
#define M17NLIB_VERSION_NAME
 
#define M17N_INIT()
 m17n ライブラリを初期化する.
 
#define M17N_FINI()
 m17n ライブラリを終了する.
 

列挙型

enum  M17NStatus {
  M17N_NOT_INITIALIZED ,
  M17N_CORE_INITIALIZED ,
  M17N_SHELL_INITIALIZED ,
  M17N_GUI_INITIALIZED
}
 m17n ライブラリの状態を示す列挙型. [詳解]
 

関数

enum M17NStatus m17n_status (void)
 m17n ライブラリのどの部分が初期化されたか報告する.
 

詳解

m17n ライブラリ イントロダクション.

APIのレベル

m17n ライブラリの API は以下の4種に分類されている。

  1. コア API

    M-text を扱うための基本的なモジュールを提供する。 この API を利用するためには、アプリケーションプログラムは <m17n-core.h> を include し、 -lm17n-core でリンクされなくてはならない。

  2. シェル API

    文字プロパティ、文字集合操作、コード変換等のためのモジュールを提供する。 これらのモジュールは、データベースから必要に応じて多様なデータをロードする。 この API を利用するためには、アプリケーションプログラムは <m17n.h> を include し、 -lm17n-core -lm17n でリンクされなくてはならない。

    この API を使用すれば、コア API も自動的に使用可能となる。

  3. FLT API

    文字列表示に フォントレイアウトテーブル を用いるモジュールを提供する。この API を利用するためには、アプリケーションプログラムは <m17n.h> を include し、 -lm17n-core -lm17n-flt でリンクされなくてはならない。

    この API を使用すれば、コア API も自動的に使用可能となる。

  4. GUI API

    グラフィックデバイス上で M-text を表示したり入力したりするための GUI モジュールを提供する。この API 自体はグラフィックデバイスとは独立であるが、 多くの関数は特定のグラフィックデバイス用に作成された MFrame を引数に取る。 現時点でサポートされているグラフィックデバイスは、ヌルデバイス、X ウィンドウシステム、および GD ライブラリのイメージデータ (gdImagePtr) である。

    ヌルデバイスのフレーム上では表示も入力もできない。ただし mdraw_glyph_list() などの関数は使用可能である。

    X ウィンドウシステムのフレーム上ではすべての GUI API が使用できる。

    GD ライブラリのフレーム上では、描画用の API はすべて使用できるが、入力はできない。

    この API を使用するためには、アプリケーションプログラムは <m17n-gui.h> を include し、-lm17n-core -lm17n -lm17n-gui でリンクされなくてはならない。

    この API を使用すれば、コア API、シェル API、および FLT API も自動的に使用可能となる。

  5. その他の API

    エラー処理、デバッグ用のその他の関数を提供する。この API はそれだけでは使用できず、上記の他の API と共に使う。利用するためには、上記のいずれかのinclude ファイルに加えて、 <m17n-misc.h> をinclude しなくてはならない。

m17n-config(1) 節も参照。

環境変数

m17n ライブラリは以下の環境変数を参照する。

API の命名規則

m17n ライブラリは、関数、変数、マクロ、型を export する。それらは 'm' または 'M' のあとにオブジェクト名 ("symbol"、"plist" など) またはモジュール名 (draw, input など) を続けたものである。 M-text オブジェクトの名前は "mmtext" ではなくて "mtext" で始まることに注意。

マクロ定義詳解

◆ M17NLIB_MAJOR_VERSION

#define M17NLIB_MAJOR_VERSION

マクロ M17NLIB_MAJOR_VERSION は m17n ライブラリのメジャーバージョン番号を与える.

◆ M17NLIB_MINOR_VERSION

#define M17NLIB_MINOR_VERSION

マクロ M17NLIB_MINOR_VERSION は m17n ライブラリのマイナーバージョン番号を与える.

◆ M17NLIB_PATCH_LEVEL

#define M17NLIB_PATCH_LEVEL

マクロ M17NLIB_PATCH_LEVEL は m17n ライブラリのパッチレベル番号を与える.

◆ M17NLIB_VERSION_NAME

#define M17NLIB_VERSION_NAME

マクロ M17NLIB_VERSION_NAME は m17n ライブラリのバージョン名を文字列として与える.

◆ M17N_INIT

#define M17N_INIT ( )

m17n ライブラリを初期化する.

マクロ M17N_INIT() は m17n ライブラリを初期化する。m17n の関数を利用する前に、このマクロをまず呼ばなくてはならない。

このマクロを複数回呼んでも安全であるが、その場合メモリを解放するためにマクロ M17N_FINI() を同じ回数呼ぶ必要がある。

外部変数 merror_code は、初期化が成功すれば 0 に、そうでなければ -1 に設定される。

参照:
M17N_FINI(), m17n_status()

◆ M17N_FINI

#define M17N_FINI ( )

m17n ライブラリを終了する.

マクロ M17N_FINI() は m17n ライブラリを終了する。m17n ライブラリが使った全てのメモリ領域は解放される。一度このマクロが呼ばれたら、マクロ M17N_INIT() が再度呼ばれるまで m17n 関数は使うべきでない。

マクロ M17N_INIT() が N 回呼ばれていた場合には、このマクロが N 回呼ばれて初めてメモリが解放される。

参照:
M17N_INIT(), m17n_status()

列挙型詳解

◆ M17NStatus

enum M17NStatus

m17n ライブラリの状態を示す列挙型.

列挙型 M17NStatus は関数 m17n_status() の戻り値として用いられる。

列挙値
M17N_NOT_INITIALIZED 
M17N_CORE_INITIALIZED 
M17N_SHELL_INITIALIZED 
M17N_GUI_INITIALIZED 

関数詳解

◆ m17n_status()

enum M17NStatus m17n_status ( void  )

m17n ライブラリのどの部分が初期化されたか報告する.

関数 m17n_status() は m17n ライブラリのどの部分が初期化されたかに応じて、以下の値のいずれかを返す。

M17N_NOT_INITIALIZED, M17N_CORE_INITIALIZED, M17N_SHELL_INITIALIZED, M17N_GUI_INITIALIZED


m17n-lib Home