如何:用 GDI 绘制文本

使用 TextRenderer 类中的 DrawText 方法,可以访问用于在窗体或控件上绘制文本的 GDI 功能。 GDI 文本呈现通常提供比 GDI+ 更好的性能和更精确的文本测量。

提示

不支持 TextRenderer 类的 DrawText 方法进行打印。 在打印时,总是使用 Graphics 类的 DrawString 方法。

示例

下面的代码示例演示如何使用 DrawText 方法在矩形内以多行形式绘制文本。

    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

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);
}

若要用 TextRenderer 类呈现文本,需要 IDeviceContext(如 GraphicsFont)、绘制文本的位置和应该用于绘制文本的颜色。 还可以使用 TextFormatFlags 枚举指定文本格式设置。

有关如何获取 Graphics 的更多信息,请参见 如何:创建用于绘制的 Graphics 对象。 有关如何构造 Font 的更多信息,请参见 如何:构造字体系列和字体

编译代码

前面的代码示例旨在用于 Windows 窗体,它需要 PaintEventHandler 的参数 PaintEventArgs e。

请参见

参考

TextRenderer

Font

Color

Color

其他资源

使用字体和文本