# NNS_G2dTextCanvasDrawText

## 構文

      #include <nnsys/g2d/g2d_TextCanvas.h>

      void NNS_G2dTextCanvasDrawText(
      	const NNSG2dTextCanvas* pTxn,
      	int x,
      	int y,
      	int cl,
      	u32 flags,
      	const NNSG2dChar* txt
      );

## 引数

pTxn | [IN] TextCanvas へのポインタ
x | [IN] 文字列描画基準点の座標 (CharCanvas座標系)
y | [IN] 文字列描画基準点の座標 (CharCanvas座標系)
cl | [IN] 文字列の描画に用いる基準カラーNo.
flags | [IN] 描画フラグ
txt | [IN] 文字列へのポインタ

## 返り値

なし。

## 説明

点 (x, y) を描画の基準点として文字列を描画します。
文字列中に '\n' (0x0A) があるとその位置で改行して描画します。

flags には以下のそれぞれのフラグの組み合わせを指定します。

水平方向基準点配置

NNS_G2D_HORIZONTALORIGIN_LEFT | 描画基準点が文字列の左端に位置するように描画します。
NNS_G2D_HORIZONTALORIGIN_CENTER | 描画基準点が文字列の中央に位置するように描画します。
NNS_G2D_HORIZONTALORIGIN_RIGHT | 描画基準点が文字列の右端に位置するように描画します。

垂直方向基準点配置

NNS_G2D_VERTICALORIGIN_TOP | 描画基準点が文字列の上端に位置するように描画します。
NNS_G2D_VERTICALORIGIN_MIDDLE | 描画基準点が文字列の中央に位置するように描画します。
NNS_G2D_VERTICALORIGIN_BOTTOM | 描画基準点が文字列の下端に位置するように描画します。

水平方向揃え

NNS_G2D_HORIZONTALALIGN_LEFT | 文字列が複数行からなる時に各行を左寄せで描画します。
NNS_G2D_HORIZONTALALIGN_CENTER | 文字列が複数行からなる時に各行を中央寄せで描画します。
NNS_G2D_HORIZONTALALIGN_RIGHT | 文字列が複数行からなる時に各行を右寄せで描画します。

縦書きフォントでは水平方向と垂直方向が入れ替わります。

## 参照

`NNS_G2dTextCanvasDrawTextRect`

## 履歴

2007/03/14 縦書き/縦持ちフォントに対応。
2005/05/25 初版