変数 | |
unsigned | as_image: 1 |
unsigned | align_head: 1 |
unsigned | two_dimensional: 1 |
unsigned | orientation_reversed: 1 |
unsigned | enable_bidi: 1 |
unsigned | ignore_formatting_char: 1 |
unsigned | fixed_width: 1 |
unsigned | anti_alias: 1 |
unsigned | disable_overlapping_adjustment: 1 |
unsigned int | min_line_ascent |
unsigned int | min_line_descent |
unsigned int | max_line_ascent |
unsigned int | max_line_descent |
unsigned int | max_line_width |
unsigned int | tab_width |
void(* | format )(int line, int y, int *indent, int *width) |
int(* | line_break )(MText *mt, int pos, int from, int to, int line, int y) |
int | with_cursor |
int | cursor_pos |
int | cursor_width |
int | cursor_bidi |
int | partial_update |
int | disable_caching |
MDrawRegion | clip_region |
|
0 でなければ、 M-text を画像として、すなわち背景を M-text の フェースで指定されている背景色で埋めて表示する。そうでなければ背 景は変わらない。 |
|
0 でなく、各行の最初のグリフのlbearing が負ならば、グリフを水 平に右にずらして、指定した位置より左にピクセルが描かれないように する。 |
|
0 でなければ、M-text を2次元的に、すなわちM-text 中の newline で改行し、続く文字は次ぎの行に表示する。もし <format> が NULL でなく、その関数が 0 でない行幅を返せば、その幅より長い行も 改行される。 |
|
0 でなければ、M-text を指定した位置の右に表示する。 |
|
0 なければ、bidi テキスト用にグリフを正しく整列する。 |
|
0 でなければ、ユニコードに置ける一般カテゴリが Cf (Other, format) である文字を表示しない。 |
|
0 でなければ、端末用のグリフを表示する。(未実装。) |
|
0 でなければ、アンチエーリアスでグリフを表示する。(バックエ ンドのフォントドライバがアンチエーリアス機能をサポートしている場 合のみ。) |
|
0 でなければ、フォント境界での水平方向のグリフの重なりを避け るためのグリフ位置の調整を無効にする。 |
|
0 でなければ、値は行の ascent と descent の最小値を示す。 |
|
|
|
0 でなければ、値は行の ascent と descent の最大値を示す。 |
|
|
|
0 でなければ、値はこのディスプレイ上で各行が占めることのでき るピクセル数を示す。 0 は限定されないことを意味する。<format> が NULL でなければ無視される。 |
|
0 でなければ、値はタブストップ間の距離をコラム単位(コラムは フレームのデフォルトフォントにおける空白文字の幅である)で示す。 0 は 8 を意味する。 |
|
0 でなければ、値は関数であり、その関数は行番号 LINE と座標 Y に基づいて各行のインデントと最大幅を計算し、それぞれをINDENT と WIDTH で指される場所に保存する。 インデントは、各行の最初のグリフが右(メンバ <orientation_reversed> が 0 の時)あるいは左(それ以外の時)に何 ピクセルずらすを指定する。値が負ならば逆方向にずらす。 最大幅は、各行がディスプレイ上で占めることのできるピクセル数の最 大値である。値が 0 の場合は制限を受けないことを意味する。 LINE と Y は改行文字によって行が改まった際には 0 にリセットされ、 最大幅によって行が改まった場合には 1 づつ増やされる。 これは <two_dimensional> が 0 でない場合にのみ有効である。 |
|
NULL でなければ、値は行が最大幅中に収まらない場合に行を改める 位置を計算する関数である。POS は最大幅に収まる最後の文字の次の文 字の位置である。FROM は行の最初の文字の位置、TO は最大幅が指定さ れていなければその行に表示される最後の文字の位置である。LINE と Y は <format> の引数と同じである。 この関数は行を改める文字位置を返さなくてはならない。またMT を 変更してはならない。 関数 mdraw_default_line_break() は、空白を語の区切りとして用い るスクリプト用として用いることができる。 |
|
|
|
カーソルを表示する文字位置を示す。最大の文字位置より大きけれ ば、カーソルはM-text の最後の文字の隣に表示される。負ならば、 <cursor_width> が 0 でなくてもカーソルは表示されない。 |
|
0 でなければ、<cursor_pos> にカーソルを表示する。値が正ならば、 カーソルの幅はその値(ピクセル単位)である。負ならば、カーソルの あるグリフと同じ幅である。 |
|
If 0 でなく、かつ <cursor_width> も 0 でなければ、バーカーソ ルを文字位置<cursor_pos> と論理的にそれの前にある文字の2ヶ所表 示する。双方とも1ピクセル幅で、上下に水平の飾りがつく。 |
|
0 でなければ、テキストの一部分を表示する際に、前後のテキスト のうちその表示領域に侵入する部分も表示する。たとえば、タイ語文書 の子音-母音-子音というシークエンスのいくつかは、母音が二つの子音 の間に上にのるように描かれる。このようなシークエンスがすでに描か れており、最後の子音だけを描き直す場合(たとえば、カーソル位置を 更新する際など)このメンバが 0 であれば、母音の右半分が消されて しまう。これを 0 以外にすることによって、そのような際にも子音-母 音-子音シークエンスを正しく表示し続けることができる。 |
|
0 でなければ、M-text の表示に関する情報をキャッシュしない。 |
|
|