方法: GDI を使用してテキストを描画する

TextRenderer クラスの DrawText メソッドを使用すると、フォームやコントロールにテキストを描画するための GDI 機能にアクセスできます。 GDI のテキスト レンダリングは、一般的に GDI+ よりもパフォーマンスが高く、テキストの計測がより正確です。

注意

TextRenderer クラスの DrawText メソッドは、印刷には対応していません。 印刷するときは、常に Graphics クラスの DrawString メソッドを使用してください。

次のコード例は、DrawText メソッドを使用して四角形内の複数の直線上にテキストを描画する方法を示しています。

private void RenderText6(PaintEventArgs e)
{
    TextFormatFlags flags = TextFormatFlags.Bottom | TextFormatFlags.EndEllipsis;
    TextRenderer.DrawText(e.Graphics, "This is some text that will be clipped at the end.", this.Font,
        new Rectangle(10, 10, 100, 50), SystemColors.ControlText, flags);
}
Private Sub RenderText6(ByVal e As PaintEventArgs)
    Dim flags As TextFormatFlags = TextFormatFlags.Bottom Or _
        TextFormatFlags.EndEllipsis
    TextRenderer.DrawText(e.Graphics, _
    "This is some text that will be clipped at the end.", _
    Me.Font, New Rectangle(10, 10, 100, 50), SystemColors.ControlText, flags)

End Sub

TextRenderer クラスを使用してテキストを描画するには、GraphicsFont などの IDeviceContext、テキストを描画する場所、テキストを描画する色が必要です。 必要に応じて、TextFormatFlags 列挙型を使用してテキストの書式設定を指定することもできます。

Graphics の取得方法については、「方法: 描画する Graphics オブジェクトを作成する」を参照してください。 Font の構築の詳細については、「方法: フォント ファミリとフォントを作成する」を参照してください。

コードのコンパイル

前のコード例は、Windows フォームで使用するために設計されていて、PaintEventHandler のパラメーターである PaintEventArgse を必要とします。

関連項目