Partilhar via


Como: Desenhar texto com GDI

Com o método DrawText na classe TextRenderer, você pode acessar a funcionalidade GDI para desenhar texto em um formulário ou controle. A renderização de texto GDI normalmente oferece melhor desempenho e medição de texto mais precisa do que o GDI+.

Observação

Os métodos DrawText da classe TextRenderer não são suportados para impressão. Ao imprimir, utilize sempre os métodos DrawString da classe Graphics.

Exemplo

O exemplo de código a seguir demonstra como desenhar texto em várias linhas dentro de um retângulo usando o DrawText método.

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

Para renderizar texto com a classe TextRenderer, você precisa de um IDeviceContext, como um Graphics e um Font, um local para desenhar o texto e a cor na qual ele deve ser desenhado. Opcionalmente, você pode especificar a formatação de texto usando a enumeração TextFormatFlags.

Para obter mais informações sobre como obter um Graphics, consulte Como: Criar objetos gráficos para desenho. Para obter mais informações sobre como construir um Font, consulte Como construir famílias de fontes e fontes.

Compilando o código

O exemplo de código anterior foi projetado para uso com o Windows Forms e requer o PaintEventArgse, que é um parâmetro de PaintEventHandler.

Ver também