Graphics.MeasureString 메서드

정의

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

오버로드

MeasureString(ReadOnlySpan<Char>, Font, SizeF, StringFormat)

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

MeasureString(ReadOnlySpan<Char>, Font)

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

MeasureString(String, Font)

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

MeasureString(ReadOnlySpan<Char>, Font, SizeF)

지정된 레이아웃 영역 안에서 지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

MeasureString(ReadOnlySpan<Char>, Font, Int32)

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

MeasureString(String, Font, SizeF)

지정된 레이아웃 영역 안에서 지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

MeasureString(String, Font, Int32)

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

MeasureString(ReadOnlySpan<Char>, Font, PointF, StringFormat)

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

MeasureString(ReadOnlySpan<Char>, Font, Int32, StringFormat)

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

MeasureString(String, Font, PointF, StringFormat)

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

MeasureString(String, Font, SizeF, StringFormat)

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

MeasureString(String, Font, Int32, StringFormat)

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

MeasureString(ReadOnlySpan<Char>, Font, SizeF, StringFormat, Int32, Int32)

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

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

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

MeasureString(ReadOnlySpan<Char>, Font, SizeF, StringFormat)

Source:
Graphics.cs
Source:
Graphics.cs

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

public:
 System::Drawing::SizeF MeasureString(ReadOnlySpan<char> text, System::Drawing::Font ^ font, System::Drawing::SizeF layoutArea, System::Drawing::StringFormat ^ stringFormat);
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font, System.Drawing.SizeF layoutArea, System.Drawing.StringFormat? stringFormat);
member this.MeasureString : ReadOnlySpan<char> * System.Drawing.Font * System.Drawing.SizeF * System.Drawing.StringFormat -> System.Drawing.SizeF
Public Function MeasureString (text As ReadOnlySpan(Of Char), font As Font, layoutArea As SizeF, stringFormat As StringFormat) As SizeF

매개 변수

text
ReadOnlySpan<Char>

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

layoutArea
SizeF

텍스트에 대한 최대 레이아웃 영역을 지정하는 SizeF 구조체입니다.

stringFormat
StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.

반환

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

적용 대상

MeasureString(ReadOnlySpan<Char>, Font)

Source:
Graphics.cs
Source:
Graphics.cs

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

public:
 System::Drawing::SizeF MeasureString(ReadOnlySpan<char> text, System::Drawing::Font ^ font);
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font);
member this.MeasureString : ReadOnlySpan<char> * System.Drawing.Font -> System.Drawing.SizeF
Public Function MeasureString (text As ReadOnlySpan(Of Char), font As Font) As SizeF

매개 변수

text
ReadOnlySpan<Char>

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

반환

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

적용 대상

MeasureString(String, Font)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

public:
 System::Drawing::SizeF MeasureString(System::String ^ text, System::Drawing::Font ^ font);
public System.Drawing.SizeF MeasureString (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
Public Function MeasureString (text As String, font As Font) As SizeF

매개 변수

text
String

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

반환

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

예외

font이(가) null인 경우

font이(가) null인 경우

예제

다음 코드 예제는 Windows Forms 사용하도록 설계되었으며 이벤트 처리기의 Paint 매개 변수인 가 필요합니다.PaintEventArgse 코드는 다음 작업을 수행합니다.

  • 측정할 문자열을 만듭니다.

  • 글꼴 개체를 만들고 Arial(16포인트)으로 설정합니다.

  • 크기 개체를 만들고 해당 개체와 글꼴 개체를 사용하여 문자열의 크기를 측정합니다.

  • 문자열의 측정된 크기를 사용하여 빨간색 사각형을 그립니다.

  • 그려진 사각형 내에 문자열을 그립니다.

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 개별 문자열과 함께 사용하도록 설계되었으며 문자 모양을 돌출할 수 있도록 문자열 전후에 약간의 추가 공간을 포함합니다. 또한 메서드는 DrawString 문자 모양 점을 조정하여 디스플레이 품질을 최적화하고 에서 보고 MeasureString한 것보다 더 좁은 문자열을 표시할 수 있습니다. 레이아웃의 인접 문자열에 적합한 메트릭을 가져오려면(예: 형식이 지정된 텍스트를 구현할 때) 메서드 또는 를 사용하는 StringFormat메서드 중 MeasureString 하나를 사용하고 MeasureCharacterRanges 를 전달GenericTypographic합니다. 또한 의 가 TextRenderingHintGraphics 지 확인합니다 AntiAlias.

추가 정보

적용 대상

MeasureString(ReadOnlySpan<Char>, Font, SizeF)

Source:
Graphics.cs
Source:
Graphics.cs

지정된 레이아웃 영역 안에서 지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

public:
 System::Drawing::SizeF MeasureString(ReadOnlySpan<char> text, System::Drawing::Font ^ font, System::Drawing::SizeF layoutArea);
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font, System.Drawing.SizeF layoutArea);
member this.MeasureString : ReadOnlySpan<char> * System.Drawing.Font * System.Drawing.SizeF -> System.Drawing.SizeF
Public Function MeasureString (text As ReadOnlySpan(Of Char), font As Font, layoutArea As SizeF) As SizeF

매개 변수

text
ReadOnlySpan<Char>

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

layoutArea
SizeF

텍스트에 대한 최대 레이아웃 영역을 지정하는 SizeF 구조체입니다.

반환

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

적용 대상

MeasureString(ReadOnlySpan<Char>, Font, Int32)

Source:
Graphics.cs
Source:
Graphics.cs

지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

public:
 System::Drawing::SizeF MeasureString(ReadOnlySpan<char> text, System::Drawing::Font ^ font, int width);
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font, int width);
member this.MeasureString : ReadOnlySpan<char> * System.Drawing.Font * int -> System.Drawing.SizeF
Public Function MeasureString (text As ReadOnlySpan(Of Char), font As Font, width As Integer) As SizeF

매개 변수

text
ReadOnlySpan<Char>

측정할 문자열입니다.

font
Font

문자열의 형식을 정의하는 Font입니다.

width
Int32

최대 문자열 너비(픽셀)입니다.

반환

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

적용 대상

MeasureString(String, Font, SizeF)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

지정된 레이아웃 영역 안에서 지정된 Font를 사용하여 그릴 때 지정된 문자열을 측정합니다.

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);
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
Public Function MeasureString (text As String, font As Font, layoutArea As SizeF) As SizeF

매개 변수

text
String

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

layoutArea
SizeF

텍스트에 대한 최대 레이아웃 영역을 지정하는 SizeF 구조체입니다.

반환

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

예외

font이(가) null인 경우

예제

다음 코드 예제는 Windows Forms 사용하도록 설계되었으며 이벤트 처리기의 Paint 매개 변수인 가 필요합니다.PaintEventArgse 코드는 다음 작업을 수행합니다.

  • 측정할 문자열을 만들고 글꼴 개체를 Arial(16포인트)으로 설정합니다.

  • 문자열의 최대 레이아웃 크기를 설정합니다.

  • 크기 개체를 만들고 이 개체, 글꼴 개체 및 최대 레이아웃 크기를 사용하여 문자열 크기를 측정합니다.

  • 문자열의 측정된 크기를 사용하여 빨간색 사각형을 그립니다.

  • 그려진 사각형 내에 문자열을 그립니다.

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 개별 문자열과 함께 사용하도록 설계되었으며 문자 모양을 돌출할 수 있도록 문자열 전후에 약간의 추가 공간을 포함합니다. 또한 메서드는 DrawString 문자 모양 점을 조정하여 디스플레이 품질을 최적화하고 에서 보고 MeasureString한 것보다 더 좁은 문자열을 표시할 수 있습니다. 레이아웃의 인접 문자열에 적합한 메트릭을 가져오려면(예: 형식이 지정된 텍스트를 구현할 때) 메서드 또는 를 사용하는 StringFormat메서드 중 MeasureString 하나를 사용하고 MeasureCharacterRanges 를 전달GenericTypographic합니다. 또한 의 가 TextRenderingHintGraphics 지 확인합니다 AntiAlias.

추가 정보

적용 대상

MeasureString(String, Font, Int32)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

지정된 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);
public System.Drawing.SizeF MeasureString (string? text, System.Drawing.Font font, int width);
member this.MeasureString : string * System.Drawing.Font * int -> System.Drawing.SizeF
Public Function MeasureString (text As String, font As Font, width As Integer) As SizeF

매개 변수

text
String

측정할 문자열입니다.

font
Font

문자열의 형식을 정의하는 Font입니다.

width
Int32

최대 문자열 너비(픽셀)입니다.

반환

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

예외

font이(가) null인 경우

예제

다음 코드 예제는 Windows Forms 사용하도록 설계되었으며 이벤트 처리기의 Paint 매개 변수인 가 필요합니다.PaintEventArgse 코드는 다음 작업을 수행합니다.

  • 측정할 문자열을 만들고 글꼴 개체를 Arial(16포인트)으로 설정합니다.

  • 문자열의 최대 너비를 설정합니다.

  • 크기 개체를 만들고 이 개체, 글꼴 개체 및 최대 문자열 너비를 사용하여 문자열 크기를 측정합니다.

  • 문자열의 측정된 크기를 사용하여 빨간색 사각형을 그립니다.

  • 그려진 사각형 내에 문자열을 그립니다.

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)의 너비 구성 요소의 최대값을 지정합니다. 매개 변수가 width 문자열의 실제 너비보다 작으면 반환 Width 된 구성 요소가 지정된 너비 내에 맞는 최대 문자 수를 나타내는 값으로 잘립니다. 전체 문자열을 수용하기 위해 반환 Height 된 구성 요소는 문자열을 문자 줄 바꿈으로 표시할 수 있는 값으로 조정됩니다.

메서드는 MeasureString 개별 문자열과 함께 사용하도록 설계되었으며 문자 모양을 돌출할 수 있도록 문자열 전후에 약간의 추가 공간을 포함합니다. 또한 메서드는 DrawString 문자 모양 점을 조정하여 디스플레이 품질을 최적화하고 에서 보고 MeasureString한 것보다 더 좁은 문자열을 표시할 수 있습니다. 레이아웃의 인접 문자열에 적합한 메트릭을 가져오려면(예: 형식이 지정된 텍스트를 구현할 때) 메서드 또는 를 사용하는 StringFormat메서드 중 MeasureString 하나를 사용하고 MeasureCharacterRanges 를 전달GenericTypographic합니다. 또한 의 가 TextRenderingHintGraphics 지 확인합니다 AntiAlias.

추가 정보

적용 대상

MeasureString(ReadOnlySpan<Char>, Font, PointF, StringFormat)

Source:
Graphics.cs
Source:
Graphics.cs

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

public:
 System::Drawing::SizeF MeasureString(ReadOnlySpan<char> text, System::Drawing::Font ^ font, System::Drawing::PointF origin, System::Drawing::StringFormat ^ stringFormat);
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font, System.Drawing.PointF origin, System.Drawing.StringFormat? stringFormat);
member this.MeasureString : ReadOnlySpan<char> * System.Drawing.Font * System.Drawing.PointF * System.Drawing.StringFormat -> System.Drawing.SizeF
Public Function MeasureString (text As ReadOnlySpan(Of Char), font As Font, origin As PointF, stringFormat As StringFormat) As SizeF

매개 변수

text
ReadOnlySpan<Char>

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

origin
PointF

문자열의 왼쪽 위 모퉁이를 나타내는 PointF 구조체입니다.

stringFormat
StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.

반환

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

적용 대상

MeasureString(ReadOnlySpan<Char>, Font, Int32, StringFormat)

Source:
Graphics.cs
Source:
Graphics.cs

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

public:
 System::Drawing::SizeF MeasureString(ReadOnlySpan<char> text, System::Drawing::Font ^ font, int width, System::Drawing::StringFormat ^ format);
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font, int width, System.Drawing.StringFormat? format);
member this.MeasureString : ReadOnlySpan<char> * System.Drawing.Font * int * System.Drawing.StringFormat -> System.Drawing.SizeF
Public Function MeasureString (text As ReadOnlySpan(Of Char), font As Font, width As Integer, format As StringFormat) As SizeF

매개 변수

text
ReadOnlySpan<Char>

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

width
Int32

문자열의 최대 너비입니다.

format
StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.

반환

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

적용 대상

MeasureString(String, Font, PointF, StringFormat)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

지정된 Font로 그리고, 지정된 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);
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
Public Function MeasureString (text As String, font As Font, origin As PointF, stringFormat As StringFormat) As SizeF

매개 변수

text
String

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

origin
PointF

문자열의 왼쪽 위 모퉁이를 나타내는 PointF 구조체입니다.

stringFormat
StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.

반환

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

예외

font이(가) null인 경우

예제

다음 코드 예제는 Windows Forms 사용하도록 설계되었으며 이벤트 처리기의 Paint 매개 변수인 가 필요합니다.PaintEventArgse 코드는 다음 작업을 수행합니다.

  • 측정할 문자열을 만들고 글꼴 개체를 Arial(16포인트)으로 설정합니다.

  • 문자열의 왼쪽 위 모서리를 찾는 점을 만듭니다.

  • 문자열 형식 개체를 만들고 해당 형식 플래그를 로 DirectionVertical설정합니다.

  • 문자열을 측정하는 size 개체를 만듭니다.

  • 문자열, 글꼴 개체, 찾기 지점 및 문자열 형식을 사용하여 문자열의 크기를 측정합니다.

  • 문자열의 위치 지점 및 측정된 크기를 사용하여 빨간색 사각형을 그립니다.

  • 그려진 사각형 내에 문자열을 그립니다.

그 결과 세로 문자열을 묶은 세로 사각형이 생성됩니다.

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 개별 문자열과 함께 사용하도록 설계되었으며 문자 모양을 돌출할 수 있도록 문자열 전후에 약간의 추가 공간을 포함합니다. 또한 메서드는 DrawString 문자 모양 점을 조정하여 디스플레이 품질을 최적화하고 에서 보고 MeasureString한 것보다 더 좁은 문자열을 표시할 수 있습니다. 레이아웃의 인접 문자열에 적합한 메트릭을 가져오려면(예: 형식이 지정된 텍스트를 구현할 때) 메서드 또는 를 사용하는 StringFormat메서드 중 MeasureString 하나를 사용하고 MeasureCharacterRanges 를 전달GenericTypographic합니다. 또한 의 가 TextRenderingHintGraphics 지 확인합니다 AntiAlias.

추가 정보

적용 대상

MeasureString(String, Font, SizeF, StringFormat)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

지정된 Font로 그리고, 지정된 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);
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
Public Function MeasureString (text As String, font As Font, layoutArea As SizeF, stringFormat As StringFormat) As SizeF

매개 변수

text
String

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

layoutArea
SizeF

텍스트에 대한 최대 레이아웃 영역을 지정하는 SizeF 구조체입니다.

stringFormat
StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.

반환

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

예외

font이(가) null인 경우

예제

다음 코드 예제는 Windows Forms 사용하도록 설계되었으며 이벤트 처리기의 Paint 매개 변수인 가 필요합니다.PaintEventArgse 코드는 다음 작업을 수행합니다.

  • 측정할 문자열을 만들고 글꼴 개체를 Arial(16포인트)으로 설정합니다.

  • 문자열의 최대 레이아웃 크기를 설정하여 문자열을 측정하는 크기 개체를 만듭니다.

  • 문자열 형식 개체를 만들고 해당 형식 플래그를 로 DirectionVertical설정합니다.

  • 문자열, 글꼴 개체, 최대 레이아웃 크기 및 문자열 형식을 사용하여 문자열의 크기를 측정합니다.

  • 문자열의 측정된 크기를 사용하여 빨간색 사각형을 그립니다.

  • 그려진 사각형 내에 문자열을 그립니다.

그 결과 세로 문자열을 묶은 세로 사각형이 생성됩니다.

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 개별 문자열과 함께 사용하도록 설계되었으며 문자 모양을 돌출할 수 있도록 문자열 전후에 약간의 추가 공간을 포함합니다. 또한 메서드는 DrawString 문자 모양 점을 조정하여 디스플레이 품질을 최적화하고 에서 보고 MeasureString한 것보다 더 좁은 문자열을 표시할 수 있습니다. 레이아웃의 인접 문자열에 적합한 메트릭을 가져오려면(예: 형식이 지정된 텍스트를 구현할 때) 메서드 또는 를 사용하는 StringFormat메서드 중 MeasureString 하나를 사용하고 MeasureCharacterRanges 를 전달GenericTypographic합니다. 또한 의 가 TextRenderingHintGraphics 지 확인합니다 AntiAlias.

추가 정보

적용 대상

MeasureString(String, Font, Int32, StringFormat)

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

지정된 Font로 그리고, 지정된 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);
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
Public Function MeasureString (text As String, font As Font, width As Integer, format As StringFormat) As SizeF

매개 변수

text
String

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

width
Int32

문자열의 최대 너비입니다.

format
StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.

반환

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

예외

font이(가) null인 경우

예제

다음 코드 예제는 Windows Forms 사용하도록 설계되었으며 이벤트 처리기의 Paint 매개 변수인 가 필요합니다.PaintEventArgse 코드는 다음 작업을 수행합니다.

  • 측정할 문자열을 만들고 글꼴 개체를 Arial(16포인트)으로 설정합니다.

  • 문자열의 최대 너비를 설정합니다.

  • 문자열 형식 개체를 만들고 해당 형식 플래그를 로 DirectionVertical설정합니다.

  • 문자열을 측정하는 size 개체를 만듭니다.

  • 문자열, 글꼴 개체, 최대 너비 및 문자열 형식을 사용하여 문자열의 크기를 측정합니다.

  • 문자열의 측정된 크기를 사용하여 빨간색 사각형을 그립니다.

  • 그려진 사각형 내에 문자열을 그립니다.

그 결과 세로 문자열을 묶은 세로 사각형이 생성됩니다.

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 개별 문자열과 함께 사용하도록 설계되었으며 문자 모양을 돌출할 수 있도록 문자열 전후에 약간의 추가 공간을 포함합니다. 또한 메서드는 DrawString 문자 모양 점을 조정하여 디스플레이 품질을 최적화하고 에서 보고 MeasureString한 것보다 더 좁은 문자열을 표시할 수 있습니다. 레이아웃의 인접 문자열에 적합한 메트릭을 가져오려면(예: 형식이 지정된 텍스트를 구현할 때) 메서드 또는 를 사용하는 StringFormat메서드 중 MeasureString 하나를 사용하고 MeasureCharacterRanges 를 전달GenericTypographic합니다. 또한 의 가 TextRenderingHintGraphics 지 확인합니다 AntiAlias.

추가 정보

적용 대상

MeasureString(ReadOnlySpan<Char>, Font, SizeF, StringFormat, Int32, Int32)

Source:
Graphics.cs
Source:
Graphics.cs

지정된 Font로 그리고, 지정된 StringFormat으로 형식을 지정할 때 지정된 문자열을 측정합니다.

public:
 System::Drawing::SizeF MeasureString(ReadOnlySpan<char> 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 (ReadOnlySpan<char> text, System.Drawing.Font font, System.Drawing.SizeF layoutArea, System.Drawing.StringFormat? stringFormat, out int charactersFitted, out int linesFilled);
member this.MeasureString : ReadOnlySpan<char> * System.Drawing.Font * System.Drawing.SizeF * System.Drawing.StringFormat * int * int -> System.Drawing.SizeF
Public Function MeasureString (text As ReadOnlySpan(Of Char), font As Font, layoutArea As SizeF, stringFormat As StringFormat, ByRef charactersFitted As Integer, ByRef linesFilled As Integer) As SizeF

매개 변수

text
ReadOnlySpan<Char>

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

layoutArea
SizeF

텍스트에 대한 최대 레이아웃 영역을 지정하는 SizeF 구조체입니다.

stringFormat
StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.

charactersFitted
Int32

문자열에 있는 문자의 수입니다.

linesFilled
Int32

문자열에 있는 텍스트 줄의 수입니다.

반환

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

적용 대상

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

Source:
Graphics.cs
Source:
Graphics.cs
Source:
Graphics.cs

지정된 Font로 그리고, 지정된 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);
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
Public Function MeasureString (text As String, font As Font, layoutArea As SizeF, stringFormat As StringFormat, ByRef charactersFitted As Integer, ByRef linesFilled As Integer) As SizeF

매개 변수

text
String

측정할 문자열입니다.

font
Font

문자열의 텍스트 형식을 정의하는 Font입니다.

layoutArea
SizeF

텍스트에 대한 최대 레이아웃 영역을 지정하는 SizeF 구조체입니다.

stringFormat
StringFormat

줄 간격과 같은 문자열에 대한 서식 정보를 나타내는 StringFormat입니다.

charactersFitted
Int32

문자열에 있는 문자의 수입니다.

linesFilled
Int32

문자열에 있는 텍스트 줄의 수입니다.

반환

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

예외

font이(가) null인 경우

예제

다음 코드 예제는 Windows Forms 사용하도록 설계되었으며 이벤트 처리기의 Paint 매개 변수인 가 필요합니다.PaintEventArgse 코드는 다음 작업을 수행합니다.

  • 측정할 문자열을 만들고 글꼴 개체를 Arial(16포인트)으로 설정합니다.

  • 문자열의 최대 레이아웃 크기를 설정합니다.

  • 문자열 형식 개체를 만들고 해당 형식 플래그를 로 DirectionVertical설정합니다.

  • 정수 변수 charactersFittedlinesFilled 크기 개체를 만들어 문자열을 측정합니다.

  • 문자열의 크기를 측정하고 문자열, 글꼴 개체, 최대 레이아웃 크기 및 문자열 형식을 사용하여 맞춤 문자 수와 채워진 줄을 결정합니다.

  • 문자열의 측정된 크기를 사용하여 빨간색 사각형을 그립니다.

  • 그려진 사각형 내에 문자열을 그립니다.

  • 맞춤된 문자 수와 채워진 선의 값을 그립니다.

그 결과 세로 문자열을 묶은 세로 사각형이 생성됩니다.

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 개별 문자열과 함께 사용하도록 설계되었으며 문자 모양을 돌출할 수 있도록 문자열 전후에 약간의 추가 공간을 포함합니다. 또한 메서드는 DrawString 문자 모양 점을 조정하여 디스플레이 품질을 최적화하고 에서 보고 MeasureString한 것보다 더 좁은 문자열을 표시할 수 있습니다. 레이아웃의 인접 문자열에 적합한 메트릭을 가져오려면(예: 형식이 지정된 텍스트를 구현할 때) 메서드 또는 를 사용하여 StringFormat 를 전달하는 GenericTypographic메서드 중 MeasureString 하나를 사용합니다MeasureCharacterRanges. 또한 에 대한 가 TextRenderingHintGraphics 지 확인합니다 AntiAlias.

추가 정보

적용 대상