Graphics.MeasureString Graphics.MeasureString Graphics.MeasureString Method

정의

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.Measures the specified string when drawn with the specified Font.

오버로드

MeasureString(String, Font) MeasureString(String, Font) MeasureString(String, Font)

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.Measures the specified string when drawn with the specified Font.

MeasureString(String, Font, SizeF) MeasureString(String, Font, SizeF) MeasureString(String, Font, SizeF)

지정된 레이아웃 영역 안에서 지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.Measures the specified string when drawn with the specified Font within the specified layout area.

MeasureString(String, Font, Int32) MeasureString(String, Font, Int32) MeasureString(String, Font, Int32)

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.Measures the specified string when drawn with the specified Font.

MeasureString(String, Font, PointF, StringFormat) MeasureString(String, Font, PointF, StringFormat) MeasureString(String, Font, PointF, StringFormat)

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

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

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

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

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

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

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.Measures the specified string when drawn with the specified Font and formatted with the specified StringFormat.

MeasureString(String, Font) MeasureString(String, Font) MeasureString(String, Font)

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.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

매개 변수

text
String String String

측정할 문자열입니다.String to measure.

font
Font Font Font

문자열의 텍스트 형식을 정의하는 Font입니다.Font that defines the text format of the string.

반환

이 메서드는 text 매개 변수를 사용하여 그린 대로 font 매개 변수에 지정된 문자열의 크기(SizeF 속성에 지정된 단위)를 나타내는 PageUnit 구조체를 반환합니다.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.

예외

fontnull입니다.font is null.

예제

다음 코드 예제는 Windows Forms에서 사용 하도록 설계 되었으며 필요 PaintEventArgs e의 매개 변수는 Paint 이벤트 처리기입니다.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. 이 코드에서는 다음 작업을 수행합니다.The code performs the following actions:

  • 측정할 문자열을 만듭니다.Creates a string to measure.

  • 글꼴 개체를 만들고 Arial (16 포인트)로 설정 합니다.Creates a font object and sets it to Arial (16 point).

  • 크기 개체를 만들고 문자열의 크기를 측정 하 고 글꼴 개체를 사용 합니다.Creates a size object and uses it and the font object to measure the size of the string.

  • 문자열의 측정 된 크기를 사용 하 여 빨간색 사각형을 그립니다.Draws a red rectangle using the measured size of the string.

  • 그려지는 사각형 내에 있는 문자열을 그립니다.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

설명

MeasureString 메서드는 개별 사용 하 여 문자열 및 문자 모양 있어 걸친 수 있도록 문자열 앞뒤 약간의 추가 공백 포함을 위해 설계 되었습니다.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. 또한 합니다 DrawString 메서드는 디스플레이 품질을 최적화 하기 위해 문자 모양 요소를 조정 하 고 보고 보다 좁은 문자열로 표시 될 수 있습니다 MeasureString합니다.Also, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. 메트릭 (예: 서식 있는 텍스트를 구현 하는 경우) 레이아웃에서 인접 문자열에 대 한 적합 한을 가져오려면를 MeasureCharacterRanges 메서드 또는 중 하나는 MeasureString 사용 하는 메서드를 StringFormat, 전달 및 GenericTypographic.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. 또한 확인 합니다 TextRenderingHint 에 대 한 합니다 GraphicsAntiAlias합니다.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

추가 정보

MeasureString(String, Font, SizeF) MeasureString(String, Font, SizeF) MeasureString(String, Font, SizeF)

지정된 레이아웃 영역 안에서 지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.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

매개 변수

text
String String String

측정할 문자열입니다.String to measure.

font
Font Font Font

문자열의 텍스트 형식을 정의하는 Font입니다.Font defines the text format of the string.

layoutArea
SizeF SizeF SizeF

텍스트에 대한 최대 레이아웃 영역을 지정하는 SizeF 구조체입니다.SizeF structure that specifies the maximum layout area for the text.

반환

이 메서드는 text 매개 변수를 사용하여 그린 대로 font 매개 변수에 지정된 문자열의 크기(SizeF 속성에 지정된 단위)를 나타내는 PageUnit 구조체를 반환합니다.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.

예외

fontnull입니다.font is null.

예제

다음 코드 예제는 Windows Forms에서 사용 하도록 설계 되었으며 필요 PaintEventArgs e의 매개 변수는 Paint 이벤트 처리기입니다.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. 이 코드에서는 다음 작업을 수행합니다.The code performs the following actions:

  • 측정할 문자열을 Arial (16 포인트)로 설정 글꼴 개체를 만듭니다.Creates a string to measure and a font object set to Arial (16 point).

  • 문자열의 최대 레이아웃 크기를 설정합니다.Sets the maximum layout size of the string.

  • Size 개체를 만들고, 글꼴 개체 및 레이아웃을 최대 크기를 사용 하 여 문자열의 크기를 측정 하 합니다.Creates a size object and uses it, the font object, and the maximum layout size to measure the size of the string.

  • 문자열의 측정 된 크기를 사용 하 여 빨간색 사각형을 그립니다.Draws a red rectangle using the measured size of the string.

  • 그려지는 사각형 내에 있는 문자열을 그립니다.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

설명

MeasureString 메서드는 개별 사용 하 여 문자열 및 문자 모양 있어 걸친 수 있도록 문자열 앞뒤 약간의 추가 공백 포함을 위해 설계 되었습니다.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. 또한 합니다 DrawString 메서드는 디스플레이 품질을 최적화 하기 위해 문자 모양 요소를 조정 하 고 보고 보다 좁은 문자열로 표시 될 수 있습니다 MeasureString합니다.Also, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. 메트릭 (예: 서식 있는 텍스트를 구현 하는 경우) 레이아웃에서 인접 문자열에 대 한 적합 한을 가져오려면를 MeasureCharacterRanges 메서드 또는 중 하나는 MeasureString 사용 하는 메서드를 StringFormat, 전달 및 GenericTypographic.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. 또한 확인 합니다 TextRenderingHint 에 대 한 합니다 GraphicsAntiAlias합니다.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

추가 정보

MeasureString(String, Font, Int32) MeasureString(String, Font, Int32) MeasureString(String, Font, Int32)

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.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

매개 변수

text
String String String

측정할 문자열입니다.String to measure.

font
Font Font Font

문자열의 형식을 정의하는 Font입니다.Font that defines the format of the string.

width
Int32 Int32 Int32

최대 문자열 너비(픽셀)입니다.Maximum width of the string in pixels.

반환

이 메서드는 text 매개 변수를 사용하여 그린 대로 font 매개 변수에 지정된 문자열의 크기(SizeF 속성에 지정된 단위)를 나타내는 PageUnit 구조체를 반환합니다.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.

예외

fontnull입니다.font is null.

예제

다음 코드 예제는 Windows Forms에서 사용 하도록 설계 되었으며 필요 PaintEventArgs e의 매개 변수는 Paint 이벤트 처리기입니다.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. 이 코드에서는 다음 작업을 수행합니다.The code performs the following actions:

  • 측정할 문자열을 Arial (16 포인트)로 설정 글꼴 개체를 만듭니다.Creates a string to measure and a font object set to Arial (16 point).

  • 문자열의 최대 너비를 설정합니다.Sets the maximum width of the string.

  • Size 개체를 만들고 글꼴 개체와 최대 문자열 너비를 사용 하 여 문자열의 크기를 측정 하 합니다.Creates a size object and uses it, the font object, and the maximum string width to measure the size of the string.

  • 문자열의 측정 된 크기를 사용 하 여 빨간색 사각형을 그립니다.Draws a red rectangle using the measured size of the string.

  • 그려지는 사각형 내에 있는 문자열을 그립니다.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

설명

합니다 width 반환 된 너비 요소의 최대값을 지정 하는 매개 변수 SizeF 구조 (Width).The width parameter specifies the maximum value of the width component of the returned SizeF structure (Width). 경우는 width 매개 변수를 사용 하면 반환된 된 문자열의 실제 너비 보다 작으면 Width 구성 요소는 지정된 된 너비에 맞춰 문자의 최대 수를 나타내는 값으로 잘립니다.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. 반환된 된 전체 문자열에 맞게 Height 구성 요소는 줄 바꿈 문자를 사용 하 여 문자열을 표시할 수 있는 값으로 조정 됩니다.To accommodate the entire string, the returned Height component is adjusted to a value that allows displaying the string with character wrap.

MeasureString 메서드는 개별 사용 하 여 문자열 및 문자 모양 있어 걸친 수 있도록 문자열 앞뒤 약간의 추가 공백 포함을 위해 설계 되었습니다.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. 또한 합니다 DrawString 메서드는 디스플레이 품질을 최적화 하기 위해 문자 모양 요소를 조정 하 고 보고 보다 좁은 문자열로 표시 될 수 있습니다 MeasureString합니다.Also, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. 메트릭 (예: 서식 있는 텍스트를 구현 하는 경우) 레이아웃에서 인접 문자열에 대 한 적합 한을 가져오려면를 MeasureCharacterRanges 메서드 또는 중 하나는 MeasureString 사용 하는 메서드를 StringFormat, 전달 및 GenericTypographic.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. 또한 확인 합니다 TextRenderingHint 에 대 한 합니다 GraphicsAntiAlias합니다.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

추가 정보

MeasureString(String, Font, PointF, StringFormat) MeasureString(String, Font, PointF, StringFormat) MeasureString(String, Font, PointF, StringFormat)

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.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

매개 변수

text
String String String

측정할 문자열입니다.String to measure.

font
Font Font Font

문자열의 텍스트 형식을 정의하는 Font입니다.Font defines the text format of the string.

origin
PointF PointF PointF

문자열의 왼쪽 위 모퉁이를 나타내는 PointF 구조체입니다.PointF structure that represents the upper-left corner of the string.

stringFormat
StringFormat StringFormat StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.StringFormat that represents formatting information, such as line spacing, for the string.

반환

이 메서드는 text 매개 변수와 font 매개 변수를 사용하여 그린 대로 stringFormat 매개 변수에 지정된 문자열의 크기(SizeF 속성에 지정된 단위)를 나타내는 PageUnit 구조체를 반환합니다.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.

예외

fontnull인 경우font is null.

예제

다음 코드 예제는 Windows Forms에서 사용 하도록 설계 되었으며 필요 PaintEventArgs e의 매개 변수는 Paint 이벤트 처리기입니다.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. 이 코드에서는 다음 작업을 수행합니다.The code performs the following actions:

  • 측정할 문자열을 만들고 Arial (16 포인트)로 설정 하는 글꼴 개체Creates a string to measure and a font object set to Arial (16 point)

  • 문자열의 왼쪽 위 모퉁이 찾으려고 지점을 만듭니다.Creates a point to locate the upper-left corner of the string.

  • 문자열 형식 개체를 만들고 그 형식 플래그 설정 하는 DirectionVertical합니다.Creates a string format object and sets its format flags to DirectionVertical.

  • 문자열을 크기 개체를 만듭니다.Creates a size object to measure the string.

  • 문자열, 글꼴 개체, 위치 지정 점 및 문자열 형식을 사용 하 여 문자열의 크기를 측정 합니다.Measures the size of the string, using the string, the font object, the locating point, and the string format.

  • 찾기 지점과 문자열의 측정된 크기를 사용 하 여 빨간색 사각형을 그립니다.Draws a red rectangle using the locating point and the measured size of the string.

  • 그려지는 사각형 내에 있는 문자열을 그립니다.Draws the string within the drawn rectangle.

결과 세로 문자열을 둘러싸는 세로 사각형입니다.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

설명

MeasureString 메서드는 개별 사용 하 여 문자열 및 문자 모양 있어 걸친 수 있도록 문자열 앞뒤 약간의 추가 공백 포함을 위해 설계 되었습니다.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. 또한 합니다 DrawString 메서드는 디스플레이 품질을 최적화 하기 위해 문자 모양 요소를 조정 하 고 보고 보다 좁은 문자열로 표시 될 수 있습니다 MeasureString합니다.Also, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. 메트릭 (예: 서식 있는 텍스트를 구현 하는 경우) 레이아웃에서 인접 문자열에 대 한 적합 한을 가져오려면를 MeasureCharacterRanges 메서드 또는 중 하나는 MeasureString 사용 하는 메서드를 StringFormat, 전달 및 GenericTypographic.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. 또한 확인 합니다 TextRenderingHint 에 대 한 합니다 GraphicsAntiAlias합니다.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

추가 정보

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

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.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

매개 변수

text
String String String

측정할 문자열입니다.String to measure.

font
Font Font Font

문자열의 텍스트 형식을 정의하는 Font입니다.Font defines the text format of the string.

layoutArea
SizeF SizeF SizeF

텍스트에 대한 최대 레이아웃 영역을 지정하는 SizeF 구조체입니다.SizeF structure that specifies the maximum layout area for the text.

stringFormat
StringFormat StringFormat StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.StringFormat that represents formatting information, such as line spacing, for the string.

반환

이 메서드는 text 매개 변수와 font 매개 변수를 사용하여 그린 대로 stringFormat 매개 변수에 지정된 문자열의 크기(SizeF 속성에 지정된 단위)를 나타내는 PageUnit 구조체를 반환합니다.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.

예외

fontnull인 경우font is null.

예제

다음 코드 예제는 Windows Forms에서 사용 하도록 설계 되었으며 필요 PaintEventArgs e의 매개 변수는 Paint 이벤트 처리기입니다.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. 이 코드에서는 다음 작업을 수행합니다.The code performs the following actions:

  • 측정할 문자열을 Arial (16 포인트)로 설정 글꼴 개체를 만듭니다.Creates a string to measure and a font object set to Arial (16 point).

  • 문자열을 크기 개체를 만들고 문자열의 최대 레이아웃 크기를 설정 합니다.Sets the maximum layout size of the string, creating a size object to measure the string.

  • 문자열 형식 개체를 만들고 그 형식 플래그 설정 하는 DirectionVertical합니다.Creates a string format object and sets its format flags to DirectionVertical.

  • 문자열 및 글꼴 개체, 최대 레이아웃 크기 문자열 형식을 사용 하 여 문자열의 크기를 측정 합니다.Measures the size of the string, using the string, the font object, the maximum layout size, and the string format.

  • 문자열의 측정 된 크기를 사용 하 여 빨간색 사각형을 그립니다.Draws a red rectangle using the measured size of the string.

  • 그려지는 사각형 내에 있는 문자열을 그립니다.Draws the string within the drawn rectangle.

결과 세로 문자열을 둘러싸는 세로 사각형입니다.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

설명

MeasureString 메서드는 개별 사용 하 여 문자열 및 문자 모양 있어 걸친 수 있도록 문자열 앞뒤 약간의 추가 공백 포함을 위해 설계 되었습니다.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. 또한 합니다 DrawString 메서드는 디스플레이 품질을 최적화 하기 위해 문자 모양 요소를 조정 하 고 보고 보다 좁은 문자열로 표시 될 수 있습니다 MeasureString합니다.Also, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. 메트릭 (예: 서식 있는 텍스트를 구현 하는 경우) 레이아웃에서 인접 문자열에 대 한 적합 한을 가져오려면를 MeasureCharacterRanges 메서드 또는 중 하나는 MeasureString 사용 하는 메서드를 StringFormat, 전달 및 GenericTypographic.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. 또한 확인 합니다 TextRenderingHint 에 대 한 합니다 GraphicsAntiAlias합니다.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

추가 정보

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

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.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

매개 변수

text
String String String

측정할 문자열입니다.String to measure.

font
Font Font Font

문자열의 텍스트 형식을 정의하는 Font입니다.Font that defines the text format of the string.

width
Int32 Int32 Int32

문자열의 최대 너비입니다.Maximum width of the string.

format
StringFormat StringFormat StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.StringFormat that represents formatting information, such as line spacing, for the string.

반환

이 메서드는 text 매개 변수와 font 매개 변수를 사용하여 그린 대로 stringFormat 매개 변수에 지정된 문자열의 크기(SizeF 속성에 지정된 단위)를 나타내는 PageUnit 구조체를 반환합니다.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.

예외

fontnull입니다.font is null.

예제

다음 코드 예제는 Windows Forms에서 사용 하도록 설계 되었으며 필요 PaintEventArgs e의 매개 변수는 Paint 이벤트 처리기입니다.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. 이 코드에서는 다음 작업을 수행합니다.The code performs the following actions:

  • 측정값 및 글꼴을 문자열로 만듭니다 개체 Arial (16 포인트)로 설정 합니다.Creates a string to measure and a font object set it to Arial (16 point).

  • 문자열의 최대 너비를 설정합니다.Sets the maximum width of the string.

  • 문자열 형식 개체를 만들고 그 형식 플래그 설정 하는 DirectionVertical합니다.Creates a string format object and sets its format flags to DirectionVertical.

  • 문자열을 크기 개체를 만듭니다.Creates a size object to measure the string.

  • 문자열, font 개체, 최대 너비와 문자열 형식으로 사용 하 여 문자열의 크기를 측정 합니다.Measures the size of the string, using the string, the font object, the maximum width, and the string format.

  • 문자열의 측정 된 크기를 사용 하 여 빨간색 사각형을 그립니다.Draws a red rectangle using the measured size of the string.

  • 그려지는 사각형 내에 있는 문자열을 그립니다.Draws the string within the drawn rectangle.

결과 세로 문자열을 둘러싸는 세로 사각형입니다.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

설명

MeasureString 메서드는 개별 사용 하 여 문자열 및 문자 모양 있어 걸친 수 있도록 문자열 앞뒤 약간의 추가 공백 포함을 위해 설계 되었습니다.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. 또한 합니다 DrawString 메서드는 디스플레이 품질을 최적화 하기 위해 문자 모양 요소를 조정 하 고 보고 보다 좁은 문자열로 표시 될 수 있습니다 MeasureString합니다.Also, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. 메트릭 (예: 서식 있는 텍스트를 구현 하는 경우) 레이아웃에서 인접 문자열에 대 한 적합 한을 가져오려면를 MeasureCharacterRanges 메서드 또는 중 하나는 MeasureString 사용 하는 메서드를 StringFormat, 전달 및 GenericTypographic.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. 또한 확인 합니다 TextRenderingHint 에 대 한 합니다 GraphicsAntiAlias합니다.Also, ensure the TextRenderingHint for the Graphics is AntiAlias.

추가 정보

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

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.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

매개 변수

text
String String String

측정할 문자열입니다.String to measure.

font
Font Font Font

문자열의 텍스트 형식을 정의하는 Font입니다.Font that defines the text format of the string.

layoutArea
SizeF SizeF SizeF

텍스트에 대한 최대 레이아웃 영역을 지정하는 SizeF 구조체입니다.SizeF structure that specifies the maximum layout area for the text.

stringFormat
StringFormat StringFormat StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.StringFormat that represents formatting information, such as line spacing, for the string.

charactersFitted
Int32 Int32 Int32

문자열에 있는 문자의 수입니다.Number of characters in the string.

linesFilled
Int32 Int32 Int32

문자열에 있는 텍스트 줄의 수입니다.Number of text lines in the string.

반환

이 메서드는 text 매개 변수와 font 매개 변수를 사용하여 그린 대로 stringFormat 매개 변수의 문자열 크기(SizeF 속성에 지정된 단위)를 나타내는 PageUnit 구조체를 반환합니다.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.

예외

fontnull입니다.font is null.

예제

다음 코드 예제는 Windows Forms에서 사용 하도록 설계 되었으며 필요 PaintEventArgs e의 매개 변수는 Paint 이벤트 처리기입니다.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. 이 코드에서는 다음 작업을 수행합니다.The code performs the following actions:

  • 측정할 문자열을 만들고 Arial (16 포인트)로 설정 하는 글꼴 개체Creates a string to measure and a font object set to Arial (16 point)

  • 문자열의 최대 레이아웃 크기를 설정합니다.Sets the maximum layout size of the string.

  • 문자열 형식 개체를 만들고 그 형식 플래그 설정 하는 DirectionVertical합니다.Creates a string format object and sets its format flags to DirectionVertical.

  • 정수 변수를 만듭니다 charactersFittedlinesFilled 및 크기 개체를 문자열을 측정 합니다.Creates the integer variables charactersFitted and linesFilled and a size object to measure the string.

  • 문자열의 크기를 측정 하 고 맞추는 문자 및 문자열, font 개체, 최대 레이아웃 크기 및 문자열 형식을 사용 하 여 채워진 줄의 수를 결정 합니다.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.

  • 문자열의 측정 된 크기를 사용 하 여 빨간색 사각형을 그립니다.Draws a red rectangle using the measured size of the string.

  • 그려지는 사각형 내에 있는 문자열을 그립니다.Draws the string within the drawn rectangle.

  • 맞추는 문자와 채워진 줄 번호의 값을 그립니다.Draws the values of the number of characters fitted and lines filled.

결과 세로 문자열을 둘러싸는 세로 사각형입니다.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

설명

MeasureString 메서드는 개별 사용 하 여 문자열 및 문자 모양 있어 걸친 수 있도록 문자열 앞뒤 약간의 추가 공백 포함을 위해 설계 되었습니다.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. 또한 합니다 DrawString 메서드는 디스플레이 품질을 최적화 하기 위해 문자 모양 요소를 조정 하 고 보고 보다 좁은 문자열로 표시 될 수 있습니다 MeasureString합니다.Also, the DrawString method adjusts glyph points to optimize display quality and might display a string narrower than reported by MeasureString. 인접 문자열 레이아웃 (예: 서식 있는 텍스트를 구현 하는 경우)에 대해 적합 한 메트릭을 가져오려면를 MeasureCharacterRanges 메서드 또는 중 하나는 MeasureString 사용 하는 메서드를 StringFormat 전달 GenericTypographic합니다.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. 또한 확인 합니다 TextRenderingHint 에 대 한는 GraphicsAntiAlias합니다.Also ensure the TextRenderingHint for the Graphics is AntiAlias.

추가 정보

적용 대상