Freigeben über


FontFamily.GetFamilies-Methode

Gibt ein Array mit allen FontFamily-Objekten zurück, die für den angegebenen Grafikkontext verfügbar sind.

Namespace: System.Drawing
Assembly: System.Drawing (in system.drawing.dll)

Syntax

'Declaration
Public Shared Function GetFamilies ( _
    graphics As Graphics _
) As FontFamily()
'Usage
Dim graphics As Graphics
Dim returnValue As FontFamily()

returnValue = FontFamily.GetFamilies(graphics)
public static FontFamily[] GetFamilies (
    Graphics graphics
)
public:
static array<FontFamily^>^ GetFamilies (
    Graphics^ graphics
)
public static FontFamily[] GetFamilies (
    Graphics graphics
)
public static function GetFamilies (
    graphics : Graphics
) : FontFamily[]

Parameter

Rückgabewert

Ein Array von FontFamily-Objekten, die für das angegebene Graphics-Objekt verfügbar sind.

Ausnahmen

Ausnahmetyp Bedingung

ArgumentNullException

graphics is NULL (Nothing in Visual Basic).

Beispiel

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms vorgesehen und erfordert PaintEventArgse, wobei es sich um einen Parameter des Paint-Ereignishandlers handelt. Der Code ruft ein Array von verfügbaren FontFamily-Objekten ab und zeichnet dann unter Verwendung aller Schriftartfamilien Text auf dem Bildschirm, sofern die Schriftartfamilie den normalen Schriftschnitt unterstützt.

Public Sub GetFamilies_Example(ByVal e As PaintEventArgs)

    ' Get an array of the available font families.
    Dim families As FontFamily() = FontFamily.GetFamilies(e.Graphics)

    ' Draw text using each of the font families.
    Dim familiesFont As Font
    Dim familyString As String
    Dim spacing As Single = 0
    Dim family As FontFamily
    For Each family In families
        If (family.IsStyleAvailable(FontStyle.Regular)) Then
            familiesFont = New Font(family, 16)
            familyString = "This is the " + family.Name + " family."
            e.Graphics.DrawString(familyString, familiesFont, _
                Brushes.Black, New PointF(0, spacing))
            spacing += familiesFont.Height
        End If

    Next family
End Sub
public void GetFamilies_Example(PaintEventArgs e)
{
    // Get an array of the available font families.
    FontFamily[] families = FontFamily.GetFamilies(e.Graphics);
         
    // Draw text using each of the font families.
    Font familiesFont;
    string familyString;
    float spacing = 0;
    
    foreach (FontFamily family in families)
    {
       if (family.IsStyleAvailable(FontStyle.Regular)) 
        {
            familiesFont = new Font(family, 16);
            familyString = "This is the " + family.Name + " family.";
            e.Graphics.DrawString(
                familyString,
                familiesFont,
                Brushes.Black,
                new PointF(0, spacing));
            spacing += familiesFont.Height;
        }
    }
}
public:
   void GetFamilies_Example( PaintEventArgs^ e )
   {
      // Get an array of the available font families.
      array<FontFamily^>^families = FontFamily::GetFamilies( e->Graphics );

      // Draw text using each of the font families.
      System::Drawing::Font^ familiesFont;
      String^ familyString;
      float spacing = 0;
      IEnumerator^ myEnum = families->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         FontFamily^ family = safe_cast<FontFamily^>(myEnum->Current);
         if ( family->IsStyleAvailable( FontStyle::Regular ) )
         {
            familiesFont = gcnew System::Drawing::Font( family,16 );
            familyString = String::Format( "This is the {0} family.", family->Name );
            e->Graphics->DrawString( familyString, familiesFont, Brushes::Black, PointF(0,spacing) );
            spacing += familiesFont->Height;
         }
      }
   }
public void GetFamilies_Example(PaintEventArgs e)
{
    // Get an array of the available font families.
    FontFamily families[] = FontFamily.GetFamilies(e.get_Graphics());

    // Draw text using each of the font families.
    Font familiesFont;
    String familyString;
    float spacing = 0;

    for (int i=0; i < families.length; i++) {
        FontFamily family = families[i];
        if (family.IsStyleAvailable(FontStyle.Regular)) {
            familiesFont = new Font(family, 16);
            familyString = "This is the " + family.get_Name() + " family.";
            e.get_Graphics().DrawString(familyString, familiesFont, 
                Brushes.get_Black(), new PointF(0, spacing));
            spacing += familiesFont.get_Height();
        }
    }
} //GetFamilies_Example

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

FontFamily-Klasse
FontFamily-Member
System.Drawing-Namespace