TextRenderingHint Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje kvalitu vykreslování textu.
public enum class TextRenderingHint
public enum TextRenderingHint
type TextRenderingHint =
Public Enum TextRenderingHint
- Dědičnost
Pole
AntiAlias | 4 | Každý znak je nakreslen pomocí rastrového obrázku s antialiased glyph bez narážky. Lepší kvalita díky antialiasingu. Rozdíly v šířce představce můžou být patrné, protože je vypnuté narážky. |
AntiAliasGridFit | 3 | Každý znak je nakreslen pomocí rastrového obrázku s antialiased glyphem s nápovědou. Mnohem lepší kvalita díky antialiasingu, ale s vyššími náklady na výkon. |
ClearTypeGridFit | 5 | Každý znak se nakreslí pomocí rastrového obrázku ClearType v glyfu s nápovědou. Nastavení nejvyšší kvality. Používá se k využití funkcí písma ClearType. |
SingleBitPerPixel | 2 | Každý znak je nakreslen pomocí rastrového obrázku glyfu. Nápovědy se nepoužívají. |
SingleBitPerPixelGridFit | 1 | Každý znak je nakreslen pomocí rastrového obrázku glyfu. Nápověda se používá ke zlepšení vzhledu znaků na stopkách a zakřivení. |
SystemDefault | 0 | Každý znak se nakreslí pomocí rastrového obrázku glyfu s výchozím systémovým nápovědou pro vykreslování. Text bude nakreslen pomocí libovolného nastavení pro vyhlazování písma, které uživatel vybral pro systém. |
Příklady
Následující příklad kódu ukazuje použití TextRenderingHint vlastností a TextContrast a výčtu TextRenderingHint .
Tento příklad je navržený pro použití s model Windows Forms. Vložte kód do formuláře a při zpracování události formuláře Paint volejte ChangeTextRenderingHintAndTextContrast
metodu, která se předává e
jako PaintEventArgs.
private:
void ChangeTextRenderingHintAndTextContrast( PaintEventArgs^ e )
{
// Retrieve the graphics object.
Graphics^ formGraphics = e->Graphics;
// Declare a new font.
System::Drawing::Font^ myFont = gcnew System::Drawing::Font( FontFamily::GenericSansSerif,20,FontStyle::Regular );
// Set the TextRenderingHint property.
formGraphics->TextRenderingHint = System::Drawing::Text::TextRenderingHint::SingleBitPerPixel;
// Draw the string.
formGraphics->DrawString( "Hello World", myFont, Brushes::Firebrick, 20.0F, 20.0F );
// Change the TextRenderingHint property.
formGraphics->TextRenderingHint = System::Drawing::Text::TextRenderingHint::AntiAliasGridFit;
// Draw the string again.
formGraphics->DrawString( "Hello World", myFont, Brushes::Firebrick, 20.0F, 60.0F );
// Set the text contrast to a high-contrast setting.
formGraphics->TextContrast = 0;
// Draw the string.
formGraphics->DrawString( "Hello World", myFont, Brushes::DodgerBlue, 20.0F, 100.0F );
// Set the text contrast to a low-contrast setting.
formGraphics->TextContrast = 12;
// Draw the string again.
formGraphics->DrawString( "Hello World", myFont, Brushes::DodgerBlue, 20.0F, 140.0F );
// Dispose of the font object.
delete myFont;
}
private void ChangeTextRenderingHintAndTextContrast(PaintEventArgs e)
{
// Retrieve the graphics object.
Graphics formGraphics = e.Graphics;
// Declare a new font.
Font myFont = new Font(FontFamily.GenericSansSerif, 20,
FontStyle.Regular);
// Set the TextRenderingHint property.
formGraphics.TextRenderingHint =
System.Drawing.Text.TextRenderingHint.SingleBitPerPixel;
// Draw the string.
formGraphics.DrawString("Hello World", myFont,
Brushes.Firebrick, 20.0F, 20.0F);
// Change the TextRenderingHint property.
formGraphics.TextRenderingHint =
System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
// Draw the string again.
formGraphics.DrawString("Hello World", myFont,
Brushes.Firebrick, 20.0F, 60.0F);
// Set the text contrast to a high-contrast setting.
formGraphics.TextContrast = 0;
// Draw the string.
formGraphics.DrawString("Hello World", myFont,
Brushes.DodgerBlue, 20.0F, 100.0F);
// Set the text contrast to a low-contrast setting.
formGraphics.TextContrast = 12;
// Draw the string again.
formGraphics.DrawString("Hello World", myFont,
Brushes.DodgerBlue, 20.0F, 140.0F);
// Dispose of the font object.
myFont.Dispose();
}
Private Sub ChangeTextRenderingHintAndTextContrast(ByVal e As _
PaintEventArgs)
' Retrieve the graphics object.
Dim formGraphics As Graphics = e.Graphics
' Declare a new font.
Dim myFont As Font = New Font(FontFamily.GenericSansSerif, _
20, FontStyle.Regular)
' Set the TextRenderingHint property.
formGraphics.TextRenderingHint = _
System.Drawing.Text.TextRenderingHint.SingleBitPerPixel
' Draw the string.
formGraphics.DrawString("Hello World", myFont, _
Brushes.Firebrick, 20.0F, 20.0F)
' Change the TextRenderingHint property.
formGraphics.TextRenderingHint = _
System.Drawing.Text.TextRenderingHint.AntiAliasGridFit
' Draw the string again.
formGraphics.DrawString("Hello World", myFont, _
Brushes.Firebrick, 20.0F, 60.0F)
' Set the text contrast to a high-contrast setting.
formGraphics.TextContrast = 0
' Draw the string.
formGraphics.DrawString("Hello World", myFont, _
Brushes.DodgerBlue, 20.0F, 100.0F)
' Set the text contrast to a low-contrast setting.
formGraphics.TextContrast = 12
' Draw the string again.
formGraphics.DrawString("Hello World", myFont, _
Brushes.DodgerBlue, 20.0F, 140.0F)
' Dispose of the font object.
myFont.Dispose()
End Sub
Poznámky
Kvalita se pohybuje od textu (nejrychlejší výkon, ale nejnižší kvalita) až po antialiasovaný text (lepší kvalita, ale pomalejší výkon) až po text ClearType (nejlepší kvalita na LCD displeji).