Procedura: utilizzare l'antialiasing nel testo

L'antialiasing si riferisce allo smussamento dei bordi frastagliati della grafica e del testo disegnati per migliorarne l'aspetto o la leggibilità. Con le classi GDI+ gestite, è possibile eseguire il rendering di testo antialiased di alta qualità, nonché testo di qualità inferiore. In genere, il rendering di qualità superiore richiede più tempo di elaborazione rispetto al rendering di qualità inferiore. Per impostare il livello di qualità del testo, impostare la TextRenderingHint proprietà di un Graphics oggetto su uno degli elementi dell'enumerazione TextRenderingHint

Esempio

Nell'esempio di codice seguente viene disegnato testo con due impostazioni di qualità diverse.

FontFamily fontFamily = new FontFamily("Times New Roman");
Font font = new Font(
   fontFamily,
   32,
   FontStyle.Regular,
   GraphicsUnit.Pixel);
SolidBrush solidBrush = new SolidBrush(Color.FromArgb(255, 0, 0, 255));
string string1 = "SingleBitPerPixel";
string string2 = "AntiAlias";

e.Graphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixel;
e.Graphics.DrawString(string1, font, solidBrush, new PointF(10, 10));

e.Graphics.TextRenderingHint = TextRenderingHint.AntiAlias;
e.Graphics.DrawString(string2, font, solidBrush, new PointF(10, 60));
Dim fontFamily As New FontFamily("Times New Roman")
Dim font As New Font( _
   fontFamily, _
   32, _
   FontStyle.Regular, _
   GraphicsUnit.Pixel)
Dim solidBrush As New SolidBrush(Color.FromArgb(255, 0, 0, 255))
Dim string1 As String = "SingleBitPerPixel"
Dim string2 As String = "AntiAlias"

e.Graphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixel
e.Graphics.DrawString(string1, font, solidBrush, New PointF(10, 10))

e.Graphics.TextRenderingHint = TextRenderingHint.AntiAlias
e.Graphics.DrawString(string2, font, solidBrush, New PointF(10, 60))

La figura seguente mostra l'output del codice di esempio:

Screenshot that shows text with two different quality settings.

Compilazione del codice

L'esempio di codice precedente è progettato per l'uso con Windows Form e richiede PaintEventArgse, che è un parametro di PaintEventHandler.

Vedi anche