目次 - SDL_ttf - API(機能別) - レンダリング
レンダリング
これらの関数はTTF_Fontを使って文字列をレンダリングする.
レンダリングには4つのモードがある:
-
ベタ(Solid)
-
速いが荒い
8bitパレットカラーのサーフェイスを生成し, 指定の文字列を指定のフォントと色で高速にレンダリングする.
ピクセル値0はカラーキーで, コピー時には背景になる.
ピクセルは1で, パレットの1番目にはテキストの前景色が設定される.
それにより再びテキストをレンダリングせずに色を変えられる.
パレットの0番目はカラーキーなので透明で, 実際は255から前景色のRGBのそれぞれの値を引いた色だが, 別のサーフェイスにコピーする場合は描画されない.
このモードのレンダリングが最も速い.
結果として背景色で囲まれていないが, テキストは滑らかではない.
生成されたサーフェイスは混合(Blended)のサーフェイスより速くコピーできる.
このモードはFPSを使っていて, 他より速く画面を更新できる.
-
陰影(Shaded)
-
高品質だがベタ塗りの中にある
8bitパレットカラーのサーフェイスを生成し, 指定の文字列を指定のフォントと色で高品質にレンダリングする.
ピクセル値0は背景で, 他のピクセル値は背景色から前景色に段階的に変化する色である.
結果として前景色のテキストの周りを背景色が囲んでいる.
テキストはアンチエイリアスされている.
このモードのレンダリングはベタ(Solid)より遅いが, 混合(Blend)モードと同じ速さである.
生成されたサーフェイスはベタ(Solid)と同じ速さでコピーできる. 高品質なテキストが必要で, 背景色で囲まれていてよければこのモードを使うとよい.
-
混合(Blended)
-
最も遅いが最も高品質
32bit ARGBのサーフェイスを生成し, 指定の文字列を指定のフォントと色でαブレンドしてレンダリングする.
結果としてサーフェイスはα透過で, テキストの周りをベタの色が囲んでいない.
テキストはアンチエイリアスされている.
ベタ(Solid)モードより遅いが, 陰影(Shaded)と同じ速さでレンダリングする.
生成されたサーフェイスの画面へのコピーはベタ(Solid)や陰影(Shaded)よりも遅い.
高品質が必要で, テキストがあまり変わらないときは, このモードを使うとよい.
-
LCDサブピクセル
-
LCDのピクセルを構成する赤・緑・青の発光源の単位でアンチエイリアスを行いレンダリングする
生成されるサーフェイスは混合モードと同じ.
ベタ(Solid)
- TTF_RenderText_Solid - Latin1のテキストを, 生成した8ビットサーフェイスにベタ(Solid)モードでレンダリングする
- TTF_RenderText_Solid_Wrapped - Latin1の改行するテキストを, 生成した8ビットサーフェイスにベタ(Solid)モードでレンダリングする
- TTF_RenderUTF8_Solid - UTF-8のテキストを, 生成した8ビットサーフェイスにベタ(Solid)モードでレンダリングする
- TTF_RenderUTF8_Solid_Wrapped - UTF-8の改行するテキストを, 生成した8ビットサーフェイスにベタ(Solid)モードでレンダリングする
- TTF_RenderUNICODE_Solid - UCS-2のテキストを, 生成した8ビットサーフェイスに陰影(Shaded)モードでレンダリングする
- TTF_RenderUNICODE_Solid_Wrapped - UCS-2の改行するテキストを, 生成した8ビットサーフェイスにベタ(Solid)モードでレンダリングする
- TTF_RenderGlyph_Solid - 1つの16ビットグリフを, 生成した8ビットサーフェイスにベタ(Solid)モードでレンダリングする
- TTF_RenderGlyph32_Solid - 1つの32ビットグリフを, 生成した8ビットサーフェイスにベタ(Solid)モードでレンダリングする
陰影(Shaded)
- TTF_RenderText_Shaded - Latin1のテキストを, 生成したARGBサーフェイスに陰影(Shaded)モードでレンダリングする
- TTF_RenderText_Shaded_Wrapped - Latin1の改行するテキストを, 生成した8ビットサーフェイスに陰影(Shaded)モードでレンダリングする
- TTF_RenderUTF8_Shaded - UTF-8のテキストを, 生成した8ビットサーフェイスに陰影(Shaded)モードでレンダリングする
- TTF_RenderUTF8_Shaded_Wrapped - UTF-8の改行するテキストを, 生成した8ビットサーフェイスに陰影(Shaded)モードでレンダリングする
- TTF_RenderUNICODE_Shaded - UCS-2のテキストを, 生成した8ビットサーフェイスに陰影(Shaded)モードでレンダリングする
- TTF_RenderUNICODE_Shaded_Wrapped - UCS-2の改行するテキストを, 生成した8ビットサーフェイスに陰影(Shaded)モードでレンダリングする
- TTF_RenderGlyph_Shaded - 1つの16ビットグリフを, 生成した8ビットサーフェイスに陰影(Shaded)モードでレンダリングする
- TTF_RenderGlyph32_Shaded - 1つの32ビットグリフを, 生成した8ビットサーフェイスに陰影(Shaded)モードでレンダリングする
混合(Blended)
- TTF_RenderText_Blended - Latin1のテキストを, 生成したARGBサーフェイスに混合(Blend)モードでレンダリングする
- TTF_RenderText_Blended_Wrapped - Latin1の改行するテキストを, 生成したARGBサーフェイスに混合(Blend)モードでレンダリングする
- TTF_RenderUTF8_Blended - UTF-8のテキストを, 生成したARGBサーフェイスに混合(Blend)モードでレンダリングする
- TTF_RenderUTF8_Blended_Wrapped - UTF-8の改行するテキストを, 生成したARGBサーフェイスに混合(Blend)モードでレンダリングする
- TTF_RenderUNICODE_Blended - UCS-2テキストを, 生成したARGBサーフェイスに混合(Blend)モードでレンダリングする
- TTF_RenderUNICODE_Blended_Wrapped - UCS-2の改行するテキストを, 生成したARGBサーフェイスに混合(Blend)モードでレンダリングする
- TTF_RenderGlyph_Blended - 1つの16ビットグリフを, 生成したARGBサーフェイスに混合(Blend)モードでレンダリングする
- TTF_RenderGlyph32_Blended - 1つの32ビットグリフを, 生成したARGBサーフェイスに混合(Blend)モードでレンダリングする
LCDサブピクセル
- TTF_RenderText_LCD - Latin1のテキストを, 生成したARGBサーフェイスにLCDサブピクセル画質でレンダリングする
- TTF_RenderText_LCD_Wrapped - Latin1の改行するテキストを, 生成したARGBサーフェイスにLCDサブピクセル画質でレンダリングする
- TTF_RenderUTF8_LCD - UTF-8テキストを, 生成したARGBサーフェイスにLCDサブピクセル画質でレンダリングする
- TTF_RenderUTF8_LCD_Wrapped - UTF-8の改行するテキストを, 生成したARGBサーフェイスにLCDサブピクセル画質でレンダリングする
- TTF_RenderUNICODE_LCD - UCS-2テキストを, 生成したARGBサーフェイスにLCDサブピクセル画質でレンダリングする
- TTF_RenderUNICODE_LCD_Wrapped - UCS-2の改行するテキストを, 生成したARGBサーフェイスにLCDサブピクセル画質でレンダリングする
- TTF_RenderGlyph_LCD - 1つの16ビットグリフを, 生成したARGBサーフェイスにLCDサブピクセル画質でレンダリングする
- TTF_RenderGlyph32_LCD - 1つの32ビットグリフを, 生成したARGBサーフェイスにLCDサブピクセル画質でレンダリングする