Procedura: creare testo con GDI
Con il metodo DrawText della classe TextRenderer è possibile accedere alla funzionalità GDI per il disegno di testo in un form o in un controllo. In genere, con il rendering del testo di GDI si ottengono prestazioni migliori e misurazione del testo più accurata di GDI+.
Nota
I metodi DrawText della classe TextRenderer non supportati per la stampa. Per stampare, utilizzare sempre i metodi DrawString della classe Graphics.
Esempio
Nell'esempio di codice riportato di seguito viene illustrato come disegnare testo su più righe all'interno di un rettangolo utilizzando il metodo 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);
}
Per eseguire il rendering del testo con la classe TextRenderer, è necessaria un'interfaccia IDeviceContext, ad esempio una classe Graphics e una classe Font, una posizione per disegnare il testo e il colore in cui deve essere disegnato. Facoltativamente è possibile specificare la formattazione del testo utilizzando l'enumerazione TextFormatFlags.
Per ulteriori informazioni sull'ottenimento di una classe Graphics, vedere Procedura: creare oggetti Graphics per disegnare. Per ulteriori informazioni sulla costruzione di una classe Font, vedere Procedura: creare caratteri e gruppi di caratteri.
Compilazione del codice
L'esempio riportato in precedenza è stato creato per essere utilizzato con Windows Form e richiede PaintEventArgse, un parametro di PaintEventHandler.