#include <nnsys/g2d/g2d_TextCanvas.h>
void NNS_G2dTextCanvasDrawString(
const NNSG2dTextCanvas* pTxn,
int x,
int y,
int cl,
const NNSG2dChar* str,
const NNSG2dChar** pPos
);
| pTxn | [IN] TextCanvas へのポインタ |
| x | [IN] 文字列描画基準点の座標 (CharCanvas座標系) |
| y | [IN] 文字列描画基準点の座標 (CharCanvas座標系) |
| cl | [IN] 文字列の描画に用いる基準カラーNo. |
| str | [IN] 描画する文字列 |
| pPos | [OUT] 次の行の開始へのポインタを受け取るバッファへのポインタ(NULL指定可能) |
なし。
点 (x, y) が1文字目の左上隅となるように1行分の文字列を描画します。
具体的には str から '\n' (0x0A) もしくは '\0' までを描画します。
pPos が NULL 以外である場合、 文字列 str に '\n' が含まれると最初の '\n' の次の文字へのポインタが、 そうでない場合は NULL が pPos の指すバッファに格納されます。
縦書きフォントでは点 (x, y) が1文字目の右上隅となるように1行分の文字列を描画します。
// 半行ずつ重ねて描画する
const int linefeed = NNS_G2dFontGetLineFeed(NNS_G2dTextCanvasGetFont(&tc)) / 2;
const char* str = "abcdefg\nghijk\nlmn";
int x = 0;
int y = 0;
while( str != NULL )
{
NNS_G2dTextCanvasDrawString(&tc, x, y, color, str, &str);
y += linefeed;
}
2007/03/14 縦書き/縦持ちフォントに対応。
2005/05/25 初版