Graphics.MeasureString Methode

Definition

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet wird.Measures the specified string when drawn with the specified Font.

Überlädt

MeasureString(String, Font)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet wird.Measures the specified string when drawn with the specified Font.

MeasureString(String, Font, SizeF)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font innerhalb des angegebenen Layoutbereichs gezeichnet wird.Measures the specified string when drawn with the specified Font within the specified layout area.

MeasureString(String, Font, Int32)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet wird.Measures the specified string when drawn with the specified Font.

MeasureString(String, Font, PointF, StringFormat)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet und mit dem angegebenen StringFormat formatiert wird.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

MeasureString(String, Font, SizeF, StringFormat)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet und mit dem angegebenen StringFormat formatiert wird.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

MeasureString(String, Font, Int32, StringFormat)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet und mit dem angegebenen StringFormat formatiert wird.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

MeasureString(String, Font, SizeF, StringFormat, Int32, Int32)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet und mit dem angegebenen StringFormat formatiert wird.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

MeasureString(String, Font)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet wird.Measures the specified string when drawn with the specified Font.

public:
 System::Drawing::SizeF MeasureString(System::String ^ text, System::Drawing::Font ^ font);
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font);
member this.MeasureString : string * System.Drawing.Font -> System.Drawing.SizeF

Parameter

text
String

Zu messende Zeichenfolge.String to measure.

font
Font

Font, die das Textformat der Zeichenfolge definiert.Font that defines the text format of the string.

Gibt zurück

Diese Methode gibt eine SizeF-Struktur zurück, die die Größe der durch den PageUnit-Parameter angegebenen Zeichenfolge in der durch die text-Eigenschaft angegebenen Einheit darstellt, wenn diese mit dem font-Parameter gezeichnet wird.This method returns a SizeF structure that represents the size, in the units specified by the PageUnit property, of the string specified by the text parameter as drawn with the font parameter.

Ausnahmen

font ist null.font is null.

Beispiele

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms konzipiert und erfordert PaintEventArgse, bei dem es sich um einen Parameter des Paint Ereignis Handlers handelt.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Der Code führt die folgenden Aktionen aus:The code performs the following actions:

  • Erstellt eine zu messende Zeichenfolge.Creates a string to measure.

  • Erstellt ein Schriftart Objekt und legt es auf Arial (16 Punkt) fest.Creates a font object and sets it to Arial (16 point).

  • Erstellt ein Size-Objekt und verwendet dieses und das Schriftart Objekt, um die Größe der Zeichenfolge zu messen.Creates a size object and uses it and the font object to measure the size of the string.

  • Zeichnet ein rotes Rechteck mit der gemessenen Größe der Zeichenfolge.Draws a red rectangle using the measured size of the string.

  • Zeichnet die Zeichenfolge innerhalb des gezeichneten Rechtecks.Draws the string within the drawn rectangle.

public:
   void MeasureStringMin( PaintEventArgs^ e )
   {
      // Set up string.
      String^ measureString = "Measure String";
      System::Drawing::Font^ stringFont = gcnew System::Drawing::Font( "Arial",16 );

      // Measure string.
      SizeF stringSize = e->Graphics->MeasureString( measureString, stringFont );

      // Draw rectangle representing size of string.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red,1.0f ), 0.0F, 0.0F, stringSize.Width, stringSize.Height );

      // Draw string to screen.
      e->Graphics->DrawString( measureString, stringFont, Brushes::Black, PointF(0,0) );
   }
private void MeasureStringMin(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0));
}
Private Sub MeasureStringMin(ByVal e As PaintEventArgs)

    ' Set up string.
    Dim measureString As String = "Measure String"
    Dim stringFont As New Font("Arial", 16)

    ' Measure string.
    Dim stringSize As New SizeF
    stringSize = e.Graphics.MeasureString(measureString, stringFont)

    ' Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(New Pen(Color.Red, 1), 0.0F, 0.0F, _
    stringSize.Width, stringSize.Height)

    ' Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, _
    New PointF(0, 0))
End Sub

Hinweise

Die MeasureString-Methode wurde für die Verwendung mit einzelnen Zeichen folgen entwickelt und umfasst vor und nach der Zeichenfolge eine kleine Menge zusätzlicher Leerzeichen, um überhängende Symbole zuzulassen.The MeasureString method is designed for use with individual strings and includes a small amount of extra space before and after the string to allow for overhanging glyphs. Außerdem passt die DrawString-Methode Symbol Punkte an, um die Anzeigequalität zu optimieren, und zeigt möglicherweise eine Zeichenfolge an, die schmaler ist als von MeasureStringgemeldetAlso, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. Zum Abrufen von Metriken, die für angrenzende Zeichen folgen im Layout geeignet sind (z. b. bei der Implementierung von formatiertem Text), verwenden Sie die MeasureCharacterRanges-Methode oder eine der MeasureString Methoden, die eine StringFormatund GenericTypographicübergeben.To obtain metrics suitable for adjacent strings in layout (for example, when implementing formatted text), use the MeasureCharacterRanges method or one of the MeasureString methods that takes a StringFormat, and pass GenericTypographic. Stellen Sie außerdem sicher, dass der TextRenderingHint für die Graphics AntiAliasist.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

Siehe auch

MeasureString(String, Font, SizeF)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font innerhalb des angegebenen Layoutbereichs gezeichnet wird.Measures the specified string when drawn with the specified Font within the specified layout area.

public:
 System::Drawing::SizeF MeasureString(System::String ^ text, System::Drawing::Font ^ font, System::Drawing::SizeF layoutArea);
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, System.Drawing.SizeF layoutArea);
member this.MeasureString : string * System.Drawing.Font * System.Drawing.SizeF -> System.Drawing.SizeF

Parameter

text
String

Zu messende Zeichenfolge.String to measure.

font
Font

Font, die das Textformat der Zeichenfolge definiert.Font defines the text format of the string.

layoutArea
SizeF

SizeF-Struktur, die den maximalen Layoutbereich für den Text angibt.SizeF structure that specifies the maximum layout area for the text.

Gibt zurück

Diese Methode gibt eine SizeF-Struktur zurück, die die Größe der durch den PageUnit-Parameter angegebenen Zeichenfolge in der durch die text-Eigenschaft angegebenen Einheit darstellt, wenn diese mit dem font-Parameter gezeichnet wird.This method returns a SizeF structure that represents the size, in the units specified by the PageUnit property, of the string specified by the text parameter as drawn with the font parameter.

Ausnahmen

font ist null.font is null.

Beispiele

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms konzipiert und erfordert PaintEventArgse, bei dem es sich um einen Parameter des Paint Ereignis Handlers handelt.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Der Code führt die folgenden Aktionen aus:The code performs the following actions:

  • Erstellt eine zu messende Zeichenfolge und ein Font-Objekt, das auf Arial (16 Punkt) festgelegt ist.Creates a string to measure and a font object set to Arial (16 point).

  • Legt die maximale Layoutgröße der Zeichenfolge fest.Sets the maximum layout size of the string.

  • Erstellt ein Size-Objekt und verwendet es, das Schriftart Objekt und die maximale Layoutgröße, um die Größe der Zeichenfolge zu messen.Creates a size object and uses it, the font object, and the maximum layout size to measure the size of the string.

  • Zeichnet ein rotes Rechteck mit der gemessenen Größe der Zeichenfolge.Draws a red rectangle using the measured size of the string.

  • Zeichnet die Zeichenfolge innerhalb des gezeichneten Rechtecks.Draws the string within the drawn rectangle.

public:
   void MeasureStringSizeF( PaintEventArgs^ e )
   {

      // Set up string.
      String^ measureString = "Measure String";
      System::Drawing::Font^ stringFont = gcnew System::Drawing::Font( "Arial",16 );

      // Set maximum layout size.
      SizeF layoutSize = SizeF(200.0F,50.0F);

      // Measure string.
      SizeF stringSize = e->Graphics->MeasureString( measureString, stringFont, layoutSize );

      // Draw rectangle representing size of string.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red,1.0f ), 0.0F, 0.0F, stringSize.Width, stringSize.Height );

      // Draw string to screen.
      e->Graphics->DrawString( measureString, stringFont, Brushes::Black, PointF(0,0) );
   }
private void MeasureStringSizeF(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set maximum layout size.
    SizeF layoutSize = new SizeF(200.0F, 50.0F);

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, layoutSize);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0));
}
Private Sub MeasureStringSizeF(ByVal e As PaintEventArgs)

    ' Set up string.
    Dim measureString As String = "Measure String"
    Dim stringFont As New Font("Arial", 16)

    ' Set maximum layout size.
    Dim layoutSize As New SizeF(200.0F, 50.0F)

    ' Measure string.
    Dim stringSize As New SizeF
    stringSize = e.Graphics.MeasureString(measureString, stringFont, _
    layoutSize)

    ' Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(New Pen(Color.Red, 1), 0.0F, 0.0F, _
    stringSize.Width, stringSize.Height)

    ' Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, _
    New PointF(0, 0))
End Sub

Hinweise

Die MeasureString-Methode wurde für die Verwendung mit einzelnen Zeichen folgen entwickelt und umfasst vor und nach der Zeichenfolge eine kleine Menge zusätzlicher Leerzeichen, um überhängende Symbole zuzulassen.The MeasureString method is designed for use with individual strings and includes a small amount of extra space before and after the string to allow for overhanging glyphs. Außerdem passt die DrawString-Methode Symbol Punkte an, um die Anzeigequalität zu optimieren, und zeigt möglicherweise eine Zeichenfolge an, die schmaler ist als von MeasureStringgemeldetAlso, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. Zum Abrufen von Metriken, die für angrenzende Zeichen folgen im Layout geeignet sind (z. b. bei der Implementierung von formatiertem Text), verwenden Sie die MeasureCharacterRanges-Methode oder eine der MeasureString Methoden, die eine StringFormatund GenericTypographicübergeben.To obtain metrics suitable for adjacent strings in layout (for example, when implementing formatted text), use the MeasureCharacterRanges method or one of the MeasureString methods that takes a StringFormat, and pass GenericTypographic. Stellen Sie außerdem sicher, dass der TextRenderingHint für die Graphics AntiAliasist.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

Siehe auch

MeasureString(String, Font, Int32)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet wird.Measures the specified string when drawn with the specified Font.

public:
 System::Drawing::SizeF MeasureString(System::String ^ text, System::Drawing::Font ^ font, int width);
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, int width);
member this.MeasureString : string * System.Drawing.Font * int -> System.Drawing.SizeF

Parameter

text
String

Zu messende Zeichenfolge.String to measure.

font
Font

Font, die das Format der Zeichenfolge definiert.Font that defines the format of the string.

width
Int32

Maximale Breite der Zeichenfolge in Pixel.Maximum width of the string in pixels.

Gibt zurück

Diese Methode gibt eine SizeF-Struktur zurück, die die Größe der durch den PageUnit-Parameter angegebenen Zeichenfolge in der durch die text-Eigenschaft angegebenen Einheit darstellt, wenn diese mit dem font-Parameter gezeichnet wird.This method returns a SizeF structure that represents the size, in the units specified by the PageUnit property, of the string specified in the text parameter as drawn with the font parameter.

Ausnahmen

font ist null.font is null.

Beispiele

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms konzipiert und erfordert PaintEventArgse, bei dem es sich um einen Parameter des Paint Ereignis Handlers handelt.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Der Code führt die folgenden Aktionen aus:The code performs the following actions:

  • Erstellt eine zu messende Zeichenfolge und ein Font-Objekt, das auf Arial (16 Punkt) festgelegt ist.Creates a string to measure and a font object set to Arial (16 point).

  • Legt die maximale Breite der Zeichenfolge fest.Sets the maximum width of the string.

  • Erstellt ein Size-Objekt und verwendet es, das Schriftart Objekt und die maximale Zeichen folgen Breite, um die Größe der Zeichenfolge zu messen.Creates a size object and uses it, the font object, and the maximum string width to measure the size of the string.

  • Zeichnet ein rotes Rechteck mit der gemessenen Größe der Zeichenfolge.Draws a red rectangle using the measured size of the string.

  • Zeichnet die Zeichenfolge innerhalb des gezeichneten Rechtecks.Draws the string within the drawn rectangle.

public:
   void MeasureStringWidth( PaintEventArgs^ e )
   {
      // Set up string.
      String^ measureString = "Measure String";
      System::Drawing::Font^ stringFont = gcnew System::Drawing::Font( "Arial",16 );

      // Set maximum width of string.
      int stringWidth = 200;

      // Measure string.
      SizeF stringSize = e->Graphics->MeasureString( measureString, stringFont, stringWidth );

      // Draw rectangle representing size of string.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red,1.0f ), 0.0F, 0.0F, stringSize.Width, stringSize.Height );

      // Draw string to screen.
      e->Graphics->DrawString( measureString, stringFont, Brushes::Black, PointF(0,0) );
   }
private void MeasureStringWidth(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set maximum width of string.
    int stringWidth = 200;

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, stringWidth);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0));
}
Private Sub MeasureStringWidth(ByVal e As PaintEventArgs)

    ' Set up string.
    Dim measureString As String = "Measure String"
    Dim stringFont As New Font("Arial", 16)

    ' Set maximum width of string.
    Dim stringWidth As Integer = 200

    ' Measure string.
    Dim stringSize As New SizeF
    stringSize = e.Graphics.MeasureString(measureString, _
    stringFont, stringWidth)

    ' Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(New Pen(Color.Red, 1), 0.0F, 0.0F, _
    stringSize.Width, stringSize.Height)

    ' Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, _
    New PointF(0, 0))
End Sub

Hinweise

Der width-Parameter gibt den maximalen Wert der Width-Komponente der zurückgegebenen SizeF Struktur an (Width).The width parameter specifies the maximum value of the width component of the returned SizeF structure (Width). Wenn der width-Parameter kleiner als die tatsächliche Breite der Zeichenfolge ist, wird die zurückgegebene Width Komponente auf einen Wert gekürzt, der die maximale Anzahl von Zeichen darstellt, die in die angegebene Breite passen.If the width parameter is less than the actual width of the string, the returned Width component is truncated to a value representing the maximum number of characters that will fit within the specified width. Um die gesamte Zeichenfolge anzupassen, wird die zurückgegebene Height Komponente an einen Wert angepasst, der die Anzeige der Zeichenfolge mit dem Zeichen Umbruch ermöglicht.To accommodate the entire string, the returned Height component is adjusted to a value that allows displaying the string with character wrap.

Die MeasureString-Methode wurde für die Verwendung mit einzelnen Zeichen folgen entwickelt und umfasst vor und nach der Zeichenfolge eine kleine Menge zusätzlicher Leerzeichen, um überhängende Symbole zuzulassen.The MeasureString method is designed for use with individual strings and includes a small amount of extra space before and after the string to allow for overhanging glyphs. Außerdem passt die DrawString-Methode Symbol Punkte an, um die Anzeigequalität zu optimieren, und zeigt möglicherweise eine Zeichenfolge an, die schmaler ist als von MeasureStringgemeldetAlso, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. Zum Abrufen von Metriken, die für angrenzende Zeichen folgen im Layout geeignet sind (z. b. bei der Implementierung von formatiertem Text), verwenden Sie die MeasureCharacterRanges-Methode oder eine der MeasureString Methoden, die eine StringFormatund GenericTypographicübergeben.To obtain metrics suitable for adjacent strings in layout (for example, when implementing formatted text), use the MeasureCharacterRanges method or one of the MeasureString methods that takes a StringFormat, and pass GenericTypographic. Stellen Sie außerdem sicher, dass der TextRenderingHint für die Graphics AntiAliasist.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

Siehe auch

MeasureString(String, Font, PointF, StringFormat)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet und mit dem angegebenen StringFormat formatiert wird.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

public:
 System::Drawing::SizeF MeasureString(System::String ^ text, System::Drawing::Font ^ font, System::Drawing::PointF origin, System::Drawing::StringFormat ^ stringFormat);
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, System.Drawing.PointF origin, System.Drawing.StringFormat stringFormat);
member this.MeasureString : string * System.Drawing.Font * System.Drawing.PointF * System.Drawing.StringFormat -> System.Drawing.SizeF

Parameter

text
String

Zu messende Zeichenfolge.String to measure.

font
Font

Font, die das Textformat der Zeichenfolge definiert.Font defines the text format of the string.

origin
PointF

PointF-Struktur, die die obere linke Ecke der Zeichenfolge darstellt.PointF structure that represents the upper-left corner of the string.

stringFormat
StringFormat

StringFormat, das Formatierungsinformationen für die Zeichenfolge darstellt, z. B. Zeilenabstand.StringFormat that represents formatting information, such as line spacing, for the string.

Gibt zurück

Diese Methode gibt eine SizeF-Struktur zurück, die die Größe der durch den PageUnit-Parameter angegebenen Zeichenfolge in der durch die text-Eigenschaft angegebenen Einheit darstellt, wenn diese mit dem font-Parameter und dem stringFormat-Parameter gezeichnet wird.This method returns a SizeF structure that represents the size, in the units specified by the PageUnit property, of the string specified by the text parameter as drawn with the font parameter and the stringFormat parameter.

Ausnahmen

font ist null.font is null.

Beispiele

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms konzipiert und erfordert PaintEventArgse, bei dem es sich um einen Parameter des Paint Ereignis Handlers handelt.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Der Code führt die folgenden Aktionen aus:The code performs the following actions:

  • Erstellt eine zu messende Zeichenfolge und ein Schriftart Objekt, das auf Arial (16 Punkt) festgelegt ist.Creates a string to measure and a font object set to Arial (16 point)

  • Erstellt einen Punkt, um die linke obere Ecke der Zeichenfolge zu suchen.Creates a point to locate the upper-left corner of the string.

  • Erstellt ein Zeichen folgen Format Objekt und legt seine Formatflags auf DirectionVerticalfest.Creates a string format object and sets its format flags to DirectionVertical.

  • Erstellt ein Size-Objekt zum Messen der Zeichenfolge.Creates a size object to measure the string.

  • Misst die Größe der Zeichenfolge mithilfe der Zeichenfolge, des Schriftart Objekts, des suchen Punkts und des Zeichen folgen Formats.Measures the size of the string, using the string, the font object, the locating point, and the string format.

  • Zeichnet ein rotes Rechteck mithilfe des suchen Punkts und der gemessenen Größe der Zeichenfolge.Draws a red rectangle using the locating point and the measured size of the string.

  • Zeichnet die Zeichenfolge innerhalb des gezeichneten Rechtecks.Draws the string within the drawn rectangle.

Das Ergebnis ist ein vertikales Rechteck, das eine vertikale Zeichenfolge einschließt.The result is a vertical rectangle enclosing a vertical string.

public:
   void MeasureStringPointFFormat( PaintEventArgs^ e )
   {

      // Set up string.
      String^ measureString = "Measure String";
      System::Drawing::Font^ stringFont = gcnew System::Drawing::Font( "Arial",16 );

      // Set point for upper-left corner of string.
      float x = 50.0F;
      float y = 50.0F;
      PointF ulCorner = PointF(x,y);

      // Set string format.
      StringFormat^ newStringFormat = gcnew StringFormat;
      newStringFormat->FormatFlags = StringFormatFlags::DirectionVertical;

      // Measure string.
      SizeF stringSize = e->Graphics->MeasureString( measureString, stringFont, ulCorner, newStringFormat );

      // Draw rectangle representing size of string.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red,1.0f ), x, y, stringSize.Width, stringSize.Height );

      // Draw string to screen.
      e->Graphics->DrawString( measureString, stringFont, Brushes::Black, ulCorner, newStringFormat );
   }
private void MeasureStringPointFFormat(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set point for upper-left corner of string.
    float x = 50.0F;
    float y = 50.0F;
    PointF ulCorner = new PointF(x, y);

    // Set string format.
    StringFormat newStringFormat = new StringFormat();
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical;

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, ulCorner, newStringFormat);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), x, y, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, ulCorner, newStringFormat);
}
Private Sub MeasureStringPointFFormat(ByVal e As PaintEventArgs)

    ' Set up string.
    Dim measureString As String = "Measure String"
    Dim stringFont As New Font("Arial", 16)

    ' Set point for upper-left corner of string.
    Dim x As Single = 50.0F
    Dim y As Single = 50.0F
    Dim ulCorner As New PointF(x, y)

    ' Set string format.
    Dim newStringFormat As New StringFormat
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical

    ' Measure string.
    Dim stringSize As New SizeF
    stringSize = e.Graphics.MeasureString(measureString, stringFont, _
    ulCorner, newStringFormat)

    ' Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(New Pen(Color.Red, 1), x, y, _
    stringSize.Width, stringSize.Height)

    ' Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, _
    ulCorner, newStringFormat)
End Sub

Hinweise

Die MeasureString-Methode wurde für die Verwendung mit einzelnen Zeichen folgen entwickelt und umfasst vor und nach der Zeichenfolge eine kleine Menge zusätzlicher Leerzeichen, um überhängende Symbole zuzulassen.The MeasureString method is designed for use with individual strings and includes a small amount of extra space before and after the string to allow for overhanging glyphs. Außerdem passt die DrawString-Methode Symbol Punkte an, um die Anzeigequalität zu optimieren, und zeigt möglicherweise eine Zeichenfolge an, die schmaler ist als von MeasureStringgemeldetAlso, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. Zum Abrufen von Metriken, die für angrenzende Zeichen folgen im Layout geeignet sind (z. b. bei der Implementierung von formatiertem Text), verwenden Sie die MeasureCharacterRanges-Methode oder eine der MeasureString Methoden, die eine StringFormatund GenericTypographicübergeben.To obtain metrics suitable for adjacent strings in layout (for example, when implementing formatted text), use the MeasureCharacterRanges method or one of the MeasureString methods that takes a StringFormat, and pass GenericTypographic. Stellen Sie außerdem sicher, dass der TextRenderingHint für die Graphics AntiAliasist.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

Siehe auch

MeasureString(String, Font, SizeF, StringFormat)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet und mit dem angegebenen StringFormat formatiert wird.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

public:
 System::Drawing::SizeF MeasureString(System::String ^ text, System::Drawing::Font ^ font, System::Drawing::SizeF layoutArea, System::Drawing::StringFormat ^ stringFormat);
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, System.Drawing.SizeF layoutArea, System.Drawing.StringFormat stringFormat);
member this.MeasureString : string * System.Drawing.Font * System.Drawing.SizeF * System.Drawing.StringFormat -> System.Drawing.SizeF

Parameter

text
String

Zu messende Zeichenfolge.String to measure.

font
Font

Font, die das Textformat der Zeichenfolge definiert.Font defines the text format of the string.

layoutArea
SizeF

SizeF-Struktur, die den maximalen Layoutbereich für den Text angibt.SizeF structure that specifies the maximum layout area for the text.

stringFormat
StringFormat

StringFormat, das Formatierungsinformationen für die Zeichenfolge darstellt, z. B. Zeilenabstand.StringFormat that represents formatting information, such as line spacing, for the string.

Gibt zurück

Diese Methode gibt eine SizeF-Struktur zurück, die die Größe der durch den PageUnit-Parameter angegebenen Zeichenfolge in der durch dietext-Eigenschaft angegebenen Einheit darstellt, wenn diese mit dem font-Parameter und dem stringFormat-Parameter gezeichnet wird.This method returns a SizeF structure that represents the size, in the units specified by the PageUnit property, of the string specified in the text parameter as drawn with the font parameter and the stringFormat parameter.

Ausnahmen

font ist null.font is null.

Beispiele

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms konzipiert und erfordert PaintEventArgse, bei dem es sich um einen Parameter des Paint Ereignis Handlers handelt.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Der Code führt die folgenden Aktionen aus:The code performs the following actions:

  • Erstellt eine zu messende Zeichenfolge und ein Font-Objekt, das auf Arial (16 Punkt) festgelegt ist.Creates a string to measure and a font object set to Arial (16 point).

  • Legt die maximale Layoutgröße der Zeichenfolge fest, wobei ein Size-Objekt zum Messen der Zeichenfolge erstellt wird.Sets the maximum layout size of the string, creating a size object to measure the string.

  • Erstellt ein Zeichen folgen Format Objekt und legt seine Formatflags auf DirectionVerticalfest.Creates a string format object and sets its format flags to DirectionVertical.

  • Misst die Größe der Zeichenfolge, indem die Zeichenfolge, das Schriftart Objekt, die maximale Layoutgröße und das Zeichen folgen Format verwendet werden.Measures the size of the string, using the string, the font object, the maximum layout size, and the string format.

  • Zeichnet ein rotes Rechteck mit der gemessenen Größe der Zeichenfolge.Draws a red rectangle using the measured size of the string.

  • Zeichnet die Zeichenfolge innerhalb des gezeichneten Rechtecks.Draws the string within the drawn rectangle.

Das Ergebnis ist ein vertikales Rechteck, das eine vertikale Zeichenfolge einschließt.The result is a vertical rectangle enclosing a vertical string.

public:
   void MeasureStringSizeFFormat( PaintEventArgs^ e )
   {
      // Set up string.
      String^ measureString = "Measure String";
      System::Drawing::Font^ stringFont = gcnew System::Drawing::Font( "Arial",16 );

      // Set maximum layout size.
      SizeF layoutSize = SizeF(100.0F,200.0F);

      // Set string format.
      StringFormat^ newStringFormat = gcnew StringFormat;
      newStringFormat->FormatFlags = StringFormatFlags::DirectionVertical;

      // Measure string.
      SizeF stringSize = e->Graphics->MeasureString( measureString, stringFont, layoutSize, newStringFormat );

      // Draw rectangle representing size of string.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red,1.0f ), 0.0F, 0.0F, stringSize.Width, stringSize.Height );

      // Draw string to screen.
      e->Graphics->DrawString( measureString, stringFont, Brushes::Black, PointF(0,0), newStringFormat );
   }
private void MeasureStringSizeFFormat(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set maximum layout size.
    SizeF layoutSize = new SizeF(100.0F, 200.0F);

    // Set string format.
    StringFormat newStringFormat = new StringFormat();
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical;

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, layoutSize, newStringFormat);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0), newStringFormat);
}
Private Sub MeasureStringSizeFFormat(ByVal e As PaintEventArgs)

    ' Set up string.
    Dim measureString As String = "Measure String"
    Dim stringFont As New Font("Arial", 16)

    ' Set maximum layout size.
    Dim layoutSize As New SizeF(100.0F, 200.0F)

    ' Set string format.
    Dim newStringFormat As New StringFormat
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical

    ' Measure string.
    Dim stringSize As New SizeF
    stringSize = e.Graphics.MeasureString(measureString, stringFont, _
    layoutSize, newStringFormat)

    ' Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(New Pen(Color.Red, 1), 0.0F, 0.0F, _
    stringSize.Width, stringSize.Height)

    ' Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, _
    New PointF(0, 0), newStringFormat)
End Sub

Hinweise

Die MeasureString-Methode wurde für die Verwendung mit einzelnen Zeichen folgen entwickelt und umfasst vor und nach der Zeichenfolge eine kleine Menge zusätzlicher Leerzeichen, um überhängende Symbole zuzulassen.The MeasureString method is designed for use with individual strings and includes a small amount of extra space before and after the string to allow for overhanging glyphs. Außerdem passt die DrawString-Methode Symbol Punkte an, um die Anzeigequalität zu optimieren, und zeigt möglicherweise eine Zeichenfolge an, die schmaler ist als von MeasureStringgemeldetAlso, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. Zum Abrufen von Metriken, die für angrenzende Zeichen folgen im Layout geeignet sind (z. b. bei der Implementierung von formatiertem Text), verwenden Sie die MeasureCharacterRanges-Methode oder eine der MeasureString Methoden, die eine StringFormatund GenericTypographicübergeben.To obtain metrics suitable for adjacent strings in layout (for example, when implementing formatted text), use the MeasureCharacterRanges method or one of the MeasureString methods that takes a StringFormat, and pass GenericTypographic. Stellen Sie außerdem sicher, dass der TextRenderingHint für die Graphics AntiAliasist.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

Siehe auch

MeasureString(String, Font, Int32, StringFormat)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet und mit dem angegebenen StringFormat formatiert wird.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

public:
 System::Drawing::SizeF MeasureString(System::String ^ text, System::Drawing::Font ^ font, int width, System::Drawing::StringFormat ^ format);
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, int width, System.Drawing.StringFormat format);
member this.MeasureString : string * System.Drawing.Font * int * System.Drawing.StringFormat -> System.Drawing.SizeF

Parameter

text
String

Zu messende Zeichenfolge.String to measure.

font
Font

Font, die das Textformat der Zeichenfolge definiert.Font that defines the text format of the string.

width
Int32

Maximale Breite der Zeichenfolge.Maximum width of the string.

format
StringFormat

StringFormat, das Formatierungsinformationen für die Zeichenfolge darstellt, z. B. Zeilenabstand.StringFormat that represents formatting information, such as line spacing, for the string.

Gibt zurück

Diese Methode gibt eine SizeF-Struktur zurück, die die Größe der durch den PageUnit-Parameter angegebenen Zeichenfolge in der durch dietext-Eigenschaft angegebenen Einheit darstellt, wenn diese mit dem font-Parameter und dem stringFormat-Parameter gezeichnet wird.This method returns a SizeF structure that represents the size, in the units specified by the PageUnit property, of the string specified in the text parameter as drawn with the font parameter and the stringFormat parameter.

Ausnahmen

font ist null.font is null.

Beispiele

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms konzipiert und erfordert PaintEventArgse, bei dem es sich um einen Parameter des Paint Ereignis Handlers handelt.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Der Code führt die folgenden Aktionen aus:The code performs the following actions:

  • Erstellt eine zu messende Zeichenfolge und ein Font-Objekt wird auf Arial (16 Punkt) festgelegt.Creates a string to measure and a font object set it to Arial (16 point).

  • Legt die maximale Breite der Zeichenfolge fest.Sets the maximum width of the string.

  • Erstellt ein Zeichen folgen Format Objekt und legt seine Formatflags auf DirectionVerticalfest.Creates a string format object and sets its format flags to DirectionVertical.

  • Erstellt ein Size-Objekt zum Messen der Zeichenfolge.Creates a size object to measure the string.

  • Misst die Größe der Zeichenfolge unter Verwendung der Zeichenfolge, des Schriftart Objekts, der maximalen Breite und des Zeichen folgen Formats.Measures the size of the string, using the string, the font object, the maximum width, and the string format.

  • Zeichnet ein rotes Rechteck mit der gemessenen Größe der Zeichenfolge.Draws a red rectangle using the measured size of the string.

  • Zeichnet die Zeichenfolge innerhalb des gezeichneten Rechtecks.Draws the string within the drawn rectangle.

Das Ergebnis ist ein vertikales Rechteck, das eine vertikale Zeichenfolge einschließt.The result is a vertical rectangle enclosing a vertical string.

public:
   void MeasureStringWidthFormat( PaintEventArgs^ e )
   {
      // Set up string.
      String^ measureString = "Measure String";
      System::Drawing::Font^ stringFont = gcnew System::Drawing::Font( "Arial",16 );

      // Set maximum width of string.
      int stringWidth = 100;

      // Set string format.
      StringFormat^ newStringFormat = gcnew StringFormat;
      newStringFormat->FormatFlags = StringFormatFlags::DirectionVertical;

      // Measure string.
      SizeF stringSize = e->Graphics->MeasureString( measureString, stringFont, stringWidth, newStringFormat );

      // Draw rectangle representing size of string.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red,1.0f ), 0.0F, 0.0F, stringSize.Width, stringSize.Height );

      // Draw string to screen.
      e->Graphics->DrawString( measureString, stringFont, Brushes::Black, PointF(0,0), newStringFormat );
   }
private void MeasureStringWidthFormat(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set maximum width of string.
    int stringWidth = 100;

    // Set string format.
    StringFormat newStringFormat = new StringFormat();
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical;

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, stringWidth, newStringFormat);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0), newStringFormat);
}
Private Sub MeasureStringWidthFormat(ByVal e As PaintEventArgs)

    ' Set up string.
    Dim measureString As String = "Measure String"
    Dim stringFont As New Font("Arial", 16)

    ' Set maximum width of string.
    Dim stringWidth As Integer = 100

    ' Set string format.
    Dim newStringFormat As New StringFormat
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical

    ' Measure string.
    Dim stringSize As New SizeF
    stringSize = e.Graphics.MeasureString(measureString, stringFont, _
    stringWidth, newStringFormat)

    ' Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(New Pen(Color.Red, 1), 0.0F, 0.0F, _
    stringSize.Width, stringSize.Height)

    ' Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, _
    New PointF(0, 0), newStringFormat)
End Sub

Hinweise

Die MeasureString-Methode wurde für die Verwendung mit einzelnen Zeichen folgen entwickelt und umfasst vor und nach der Zeichenfolge eine kleine Menge zusätzlicher Leerzeichen, um überhängende Symbole zuzulassen.The MeasureString method is designed for use with individual strings and includes a small amount of extra space before and after the string to allow for overhanging glyphs. Außerdem passt die DrawString-Methode Symbol Punkte an, um die Anzeigequalität zu optimieren, und zeigt möglicherweise eine Zeichenfolge an, die schmaler ist als von MeasureStringgemeldetAlso, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. Zum Abrufen von Metriken, die für angrenzende Zeichen folgen im Layout geeignet sind (z. b. bei der Implementierung von formatiertem Text), verwenden Sie die MeasureCharacterRanges-Methode oder eine der MeasureString Methoden, die eine StringFormatund GenericTypographicübergeben.To obtain metrics suitable for adjacent strings in layout (for example, when implementing formatted text), use the MeasureCharacterRanges method or one of the MeasureString methods that takes a StringFormat, and pass GenericTypographic. Stellen Sie außerdem sicher, dass der TextRenderingHint für die Graphics AntiAliasist.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

Siehe auch

MeasureString(String, Font, SizeF, StringFormat, Int32, Int32)

Misst die angegebene Zeichenfolge, wenn diese mit der angegebenen Font gezeichnet und mit dem angegebenen StringFormat formatiert wird.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

public:
 System::Drawing::SizeF MeasureString(System::String ^ text, System::Drawing::Font ^ font, System::Drawing::SizeF layoutArea, System::Drawing::StringFormat ^ stringFormat, [Runtime::InteropServices::Out] int % charactersFitted, [Runtime::InteropServices::Out] int % linesFilled);
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, System.Drawing.SizeF layoutArea, System.Drawing.StringFormat stringFormat, out int charactersFitted, out int linesFilled);
member this.MeasureString : string * System.Drawing.Font * System.Drawing.SizeF * System.Drawing.StringFormat * int * int -> System.Drawing.SizeF

Parameter

text
String

Zu messende Zeichenfolge.String to measure.

font
Font

Font, die das Textformat der Zeichenfolge definiert.Font that defines the text format of the string.

layoutArea
SizeF

SizeF-Struktur, die den maximalen Layoutbereich für den Text angibt.SizeF structure that specifies the maximum layout area for the text.

stringFormat
StringFormat

StringFormat, das Formatierungsinformationen für die Zeichenfolge darstellt, z. B. Zeilenabstand.StringFormat that represents formatting information, such as line spacing, for the string.

charactersFitted
Int32

Anzahl der Zeichen in der Zeichenfolge.Number of characters in the string.

linesFilled
Int32

Anzahl der Textzeilen in der Zeichenfolge.Number of text lines in the string.

Gibt zurück

Diese Methode gibt eine SizeF-Struktur zurück, die die Größe der Zeichenfolge des PageUnit-Parameters in der durch die text-Eigenschaft angegebenen Einheit darstellt, wenn diese mit dem font-Parameter und dem stringFormat-Parameter gezeichnet wird.This method returns a SizeF structure that represents the size of the string, in the units specified by the PageUnit property, of the text parameter as drawn with the font parameter and the stringFormat parameter.

Ausnahmen

font ist null.font is null.

Beispiele

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms konzipiert und erfordert PaintEventArgse, bei dem es sich um einen Parameter des Paint Ereignis Handlers handelt.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Der Code führt die folgenden Aktionen aus:The code performs the following actions:

  • Erstellt eine zu messende Zeichenfolge und ein Schriftart Objekt, das auf Arial (16 Punkt) festgelegt ist.Creates a string to measure and a font object set to Arial (16 point)

  • Legt die maximale Layoutgröße der Zeichenfolge fest.Sets the maximum layout size of the string.

  • Erstellt ein Zeichen folgen Format Objekt und legt seine Formatflags auf DirectionVerticalfest.Creates a string format object and sets its format flags to DirectionVertical.

  • Erstellt die ganzzahligen Variablen charactersFitted und linesFilled und ein Size-Objekt, um die Zeichenfolge zu messen.Creates the integer variables charactersFitted and linesFilled and a size object to measure the string.

  • Misst die Größe der Zeichenfolge und bestimmt die Anzahl von Zeichen, die mit der Zeichenfolge, dem Schriftart Objekt, der maximalen Layoutgröße und dem Zeichen folgen Format eingefügt werden.Measures the size of the string and determines the number of characters fitted and lines filled, using the string, the font object, the maximum layout size, and the string format.

  • Zeichnet ein rotes Rechteck mit der gemessenen Größe der Zeichenfolge.Draws a red rectangle using the measured size of the string.

  • Zeichnet die Zeichenfolge innerhalb des gezeichneten Rechtecks.Draws the string within the drawn rectangle.

  • Zeichnet die Werte für die Anzahl der eingefügt Zeichen und die ausgefüllten Zeilen.Draws the values of the number of characters fitted and lines filled.

Das Ergebnis ist ein vertikales Rechteck, das eine vertikale Zeichenfolge einschließt.The result is a vertical rectangle enclosing a vertical string.

public:
   void MeasureStringSizeFFormatInts( PaintEventArgs^ e )
   {
      // Set up string.
      String^ measureString = "Measure String";
      System::Drawing::Font^ stringFont = gcnew System::Drawing::Font( "Arial",16 );

      // Set maximum layout size.
      SizeF layoutSize = SizeF(100.0F,200.0F);

      // Set string format.
      StringFormat^ newStringFormat = gcnew StringFormat;
      newStringFormat->FormatFlags = StringFormatFlags::DirectionVertical;

      // Measure string.
      int charactersFitted;
      int linesFilled;
      SizeF stringSize = e->Graphics->MeasureString( measureString, stringFont, layoutSize, newStringFormat, charactersFitted, linesFilled );

      // Draw rectangle representing size of string.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red,1.0f ), 0.0F, 0.0F, stringSize.Width, stringSize.Height );

      // Draw string to screen.
      e->Graphics->DrawString( measureString, stringFont, Brushes::Black, PointF(0,0), newStringFormat );

      // Draw output parameters to screen.
      String^ outString = String::Format( "chars {0}, lines {1}", charactersFitted, linesFilled );
      e->Graphics->DrawString( outString, stringFont, Brushes::Black, PointF(100,0) );
   }
private void MeasureStringSizeFFormatInts(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set maximum layout size.
    SizeF layoutSize = new SizeF(100.0F, 200.0F);

    // Set string format.
    StringFormat newStringFormat = new StringFormat();
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical;

    // Measure string.
    int charactersFitted;
    int linesFilled;
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, layoutSize, newStringFormat, out charactersFitted, out linesFilled);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0), newStringFormat);

    // Draw output parameters to screen.
    string outString = "chars " + charactersFitted + ", lines " + linesFilled;
    e.Graphics.DrawString(outString, stringFont, Brushes.Black, new PointF(100, 0));
}
Private Sub MeasureStringSizeFFormatInts(ByVal e As PaintEventArgs)

    ' Set up string.
    Dim measureString As String = "Measure String"
    Dim stringFont As New Font("Arial", 16)

    ' Set maximum layout size.
    Dim layoutSize As New SizeF(100.0F, 200.0F)

    ' Set string format.
    Dim newStringFormat As New StringFormat
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical

    ' Measure string.
    Dim charactersFitted As Integer
    Dim linesFilled As Integer
    Dim stringSize As New SizeF
    stringSize = e.Graphics.MeasureString(measureString, stringFont, _
    layoutSize, newStringFormat, charactersFitted, linesFilled)

    ' Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(New Pen(Color.Red, 1), 0.0F, 0.0F, _
    stringSize.Width, stringSize.Height)

    ' Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, _
    New PointF(0, 0), newStringFormat)

    ' Draw output parameters to screen.
    Dim outString As String = "chars " & charactersFitted & _
    ", lines " & linesFilled
    e.Graphics.DrawString(outString, stringFont, Brushes.Black, _
    New PointF(100, 0))
End Sub

Hinweise

Die MeasureString-Methode wurde für die Verwendung mit einzelnen Zeichen folgen entwickelt und umfasst vor und nach der Zeichenfolge eine kleine Menge zusätzlicher Leerzeichen, um überhängende Symbole zuzulassen.The MeasureString method is designed for use with individual strings and includes a small amount of extra space before and after the string to allow for overhanging glyphs. Außerdem passt die DrawString-Methode Symbol Punkte an, um die Anzeigequalität zu optimieren, und zeigt möglicherweise eine Zeichenfolge an, die schmaler ist als von MeasureStringgemeldetAlso, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. Zum Abrufen von Metriken, die für angrenzende Zeichen folgen im Layout geeignet sind (z. b. bei der Implementierung von formatiertem Text), verwenden Sie die MeasureCharacterRanges-Methode oder eine der MeasureString Methoden, die eine StringFormat und GenericTypographicübergeben.To obtain metrics suitable for adjacent strings in layout (for example, when implementing formatted text), use the MeasureCharacterRanges method or one of the MeasureString methods that takes a StringFormat and pass GenericTypographic. Stellen Sie außerdem sicher, dass der TextRenderingHint für die Graphics AntiAliasist.Also ensure the TextRenderingHint for the Graphics is AntiAlias.

Siehe auch

Gilt für: