FreeTypeを使う 新しいページはコチラ
提供: yonewiki
(→サンプル1.Qt ConsoleApplicationでテキスト画像表示の解説) |
(→サンプル1.Qt ConsoleApplicationでテキスト画像表示の解説) |
||
397行: | 397行: | ||
しらないと、何やってんのコレって思っちゃいますが、わかるとなんてことはない感じです。 | しらないと、何やってんのコレって思っちゃいますが、わかるとなんてことはない感じです。 | ||
+ | |||
+ | |||
+ | 97・98行目では算出した初期値へ移動するため、FT_Vector型の座標を記憶できる構造のクラスのメンバ変数 pen.x, pen.y にそれぞれ、LEFT 16とTOP 32のポイント値を64倍した値を記憶させています。 | ||
+ | |||
+ | |||
+ | そして次の行で、テキストの文字数にあたる大きさの配列を準備しています。あとで、それぞれのテキスト番号に対応するグリフ番号を取得する予定です。 | ||
+ | |||
+ | |||
+ | そして100行目から126行目の間を、テキストの文字数分だけ繰り返します。このとき繰り返しごとに増えていく数値が操作する入力テキスト文字コード配列の番号と対応します。 | ||
+ | |||
+ | |||
+ | まず101行目のif文ではテキスト文字が改行コードかどうかを判断します。該当したら、pen.y への移動量を設定して、キャンバス上の縦への移動を行います。pen.xは復帰の扱いの処理で、初期値のLEFT 16 のマクロ値を設定します。このときも、64倍した値です。yは48ピクセル下へ移動します。6文字分くらい下ですね。300dpiでは8ポイントが32ピクセル相当です。 | ||
+ | |||
+ | |||
+ | 改行コードの場合はこのif文の中の処理がおわったら、ほかの処理はもう必要ないので、全部を無視して、for文の最初にもどり、繰り返し処理を再開します。 | ||