Graphics.MeasureString Yöntem

Tanım

Belirtilen Fontile çizildiğinde belirtilen dizeyi ölçer.

Aşırı Yüklemeler

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

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

MeasureString(String, Font, Int32, StringFormat)

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

MeasureString(String, Font, SizeF, StringFormat)

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

MeasureString(String, Font, PointF, StringFormat)

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

MeasureString(ReadOnlySpan<Char>, Font)

Belirtilen Fontile çizildiğinde belirtilen dizeyi ölçer.

MeasureString(String, Font, Int32)

Belirtilen Fontile çizildiğinde belirtilen dizeyi ölçer.

MeasureString(String, Font, SizeF)

Belirtilen düzen alanında belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer.

MeasureString(ReadOnlySpan<Char>, Font, Int32)

Belirtilen Fontile çizildiğinde belirtilen dizeyi ölçer.

MeasureString(ReadOnlySpan<Char>, Font, SizeF)

Belirtilen düzen alanında belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer.

MeasureString(String, Font)

Belirtilen Fontile çizildiğinde belirtilen dizeyi ölçer.

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

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Parametreler

text
ReadOnlySpan<Char>

Ölçülecek dize.

font
Font

Dizenin metin biçimini tanımlayan Font.

width
Int32

Dizenin en büyük genişliği.

format
StringFormat

dize için satır aralığı gibi biçimlendirme bilgilerini temsil eden StringFormat.

Döndürülenler

Bu yöntem, font parametresi ve stringFormat parametresiyle çizildiği şekilde text parametresinde belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden SizeF bir yapı döndürür.

Şunlara uygulanır

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

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Parametreler

text
String

Ölçülecek dize.

font
Font

Dizenin metin biçimini tanımlayan Font.

layoutArea
SizeF

Metnin en büyük düzen alanını belirten SizeF yapısı.

stringFormat
StringFormat

dize için satır aralığı gibi biçimlendirme bilgilerini temsil eden StringFormat.

charactersFitted
Int32

Dizedeki karakter sayısı.

linesFilled
Int32

Dizedeki metin satırlarının sayısı.

Döndürülenler

Bu yöntem, font parametresi ve stringFormat parametresiyle çizildiği şekilde text parametresinin PageUnit özelliği tarafından belirtilen birimlerde dizenin boyutunu temsil eden SizeF bir yapı döndürür.

Özel durumlar

font null.

Örnekler

Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgsegerektirir. Kod aşağıdaki eylemleri gerçekleştirir:

  • Ölçülecek bir dize ve Arial olarak ayarlanmış bir yazı tipi nesnesi oluşturur (16 nokta)

  • Dizenin en büyük düzen boyutunu ayarlar.

  • Bir dize biçimi nesnesi oluşturur ve biçim bayraklarını DirectionVerticalolarak ayarlar.

  • charactersFitted ve linesFilled tamsayı değişkenlerini ve dizeyi ölçmek için bir boyut nesnesi oluşturur.

  • Dizenin boyutunu ölçür ve dizeyi, yazı tipi nesnesini, en büyük düzen boyutunu ve dize biçimini kullanarak uydurup doldurulan karakter sayısını belirler.

  • Dizenin ölçülen boyutunu kullanarak kırmızı bir dikdörtgen çizer.

  • Dizeyi çizilen dikdörtgenin içine çizer.

  • Uydurılan karakter sayısının ve doldurulan çizgilerin değerlerini çizer.

Sonuç, dikey dizeyi kapsayan dikey bir dikdörtgendir.

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

Açıklamalar

MeasureString yöntemi tek tek dizelerle kullanılmak üzere tasarlanmıştır ve dizeden önce ve sonra az miktarda fazladan alan içerir ve bu da karakter sayısını aşmaya olanak sağlar. Ayrıca, DrawString yöntemi görüntü kalitesini iyileştirmek için karakter noktalarını ayarlar ve MeasureStringtarafından bildirilenden daha dar bir dize görüntüleyebilir. Düzendeki bitişik dizelere uygun ölçümler elde etmek için (örneğin, biçimlendirilmiş metin uygularken), MeasureCharacterRanges yöntemini veya StringFormat alan ve GenericTypographicgeçiren MeasureString yöntemlerinden birini kullanın. Ayrıca GraphicsTextRenderingHintAntiAliasolduğundan emin olun.

Ayrıca bkz.

Şunlara uygulanır

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

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Parametreler

text
ReadOnlySpan<Char>

Ölçülecek dize.

font
Font

Dizenin metin biçimini tanımlayan Font.

layoutArea
SizeF

Metnin en büyük düzen alanını belirten SizeF yapısı.

stringFormat
StringFormat

dize için satır aralığı gibi biçimlendirme bilgilerini temsil eden StringFormat.

charactersFitted
Int32

Dizedeki karakter sayısı.

linesFilled
Int32

Dizedeki metin satırlarının sayısı.

Döndürülenler

Bu yöntem, font parametresi ve stringFormat parametresiyle çizildiği şekilde text parametresinin PageUnit özelliği tarafından belirtilen birimlerde dizenin boyutunu temsil eden SizeF bir yapı döndürür.

Şunlara uygulanır

MeasureString(String, Font, Int32, StringFormat)

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Parametreler

text
String

Ölçülecek dize.

font
Font

Dizenin metin biçimini tanımlayan Font.

width
Int32

Dizenin en büyük genişliği.

format
StringFormat

dize için satır aralığı gibi biçimlendirme bilgilerini temsil eden StringFormat.

Döndürülenler

Bu yöntem, font parametresi ve stringFormat parametresiyle çizildiği şekilde text parametresinde belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden SizeF bir yapı döndürür.

Özel durumlar

font null.

Örnekler

Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgsegerektirir. Kod aşağıdaki eylemleri gerçekleştirir:

  • Ölçülecek bir dize oluşturur ve bunu Arial (16 punto) olarak ayarlayan bir yazı tipi nesnesi oluşturur.

  • Dizenin en büyük genişliğini ayarlar.

  • Bir dize biçimi nesnesi oluşturur ve biçim bayraklarını DirectionVerticalolarak ayarlar.

  • Dizeyi ölçmek için bir boyut nesnesi oluşturur.

  • Dizeyi, yazı tipi nesnesini, en büyük genişliği ve dize biçimini kullanarak dizenin boyutunu ölçer.

  • Dizenin ölçülen boyutunu kullanarak kırmızı bir dikdörtgen çizer.

  • Dizeyi çizilen dikdörtgenin içine çizer.

Sonuç, dikey dizeyi kapsayan dikey bir dikdörtgendir.

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

Açıklamalar

MeasureString yöntemi tek tek dizelerle kullanılmak üzere tasarlanmıştır ve dizeden önce ve sonra az miktarda fazladan alan içerir ve bu da karakter sayısını aşmaya olanak sağlar. Ayrıca, DrawString yöntemi görüntü kalitesini iyileştirmek için karakter noktalarını ayarlar ve MeasureStringtarafından bildirilenden daha dar bir dize görüntüleyebilir. Düzendeki bitişik dizelere uygun ölçümler elde etmek için (örneğin, biçimlendirilmiş metin uygularken), MeasureCharacterRanges yöntemini veya StringFormatalan MeasureString yöntemlerinden birini kullanın ve GenericTypographicgeçirin. Ayrıca, GraphicsTextRenderingHintAntiAliasolduğundan emin olun.

Ayrıca bkz.

Şunlara uygulanır

MeasureString(String, Font, SizeF, StringFormat)

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Parametreler

text
String

Ölçülecek dize.

font
Font

Font dizenin metin biçimini tanımlar.

layoutArea
SizeF

Metnin en büyük düzen alanını belirten SizeF yapısı.

stringFormat
StringFormat

dize için satır aralığı gibi biçimlendirme bilgilerini temsil eden StringFormat.

Döndürülenler

Bu yöntem, font parametresi ve stringFormat parametresiyle çizildiği şekilde text parametresinde belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden SizeF bir yapı döndürür.

Özel durumlar

font null.

Örnekler

Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgsegerektirir. Kod aşağıdaki eylemleri gerçekleştirir:

  • Ölçülecek bir dize ve Arial (16 punto) olarak ayarlanmış bir yazı tipi nesnesi oluşturur.

  • Dizenin en büyük düzen boyutunu ayarlar ve dizeyi ölçmek için bir boyut nesnesi oluşturur.

  • Bir dize biçimi nesnesi oluşturur ve biçim bayraklarını DirectionVerticalolarak ayarlar.

  • Dizeyi, yazı tipi nesnesini, en büyük düzen boyutunu ve dize biçimini kullanarak dizenin boyutunu ölçer.

  • Dizenin ölçülen boyutunu kullanarak kırmızı bir dikdörtgen çizer.

  • Dizeyi çizilen dikdörtgenin içine çizer.

Sonuç, dikey dizeyi kapsayan dikey bir dikdörtgendir.

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

Açıklamalar

MeasureString yöntemi tek tek dizelerle kullanılmak üzere tasarlanmıştır ve dizeden önce ve sonra az miktarda fazladan alan içerir ve bu da karakter sayısını aşmaya olanak sağlar. Ayrıca, DrawString yöntemi görüntü kalitesini iyileştirmek için karakter noktalarını ayarlar ve MeasureStringtarafından bildirilenden daha dar bir dize görüntüleyebilir. Düzendeki bitişik dizelere uygun ölçümler elde etmek için (örneğin, biçimlendirilmiş metin uygularken), MeasureCharacterRanges yöntemini veya StringFormatalan MeasureString yöntemlerinden birini kullanın ve GenericTypographicgeçirin. Ayrıca, GraphicsTextRenderingHintAntiAliasolduğundan emin olun.

Ayrıca bkz.

Şunlara uygulanır

MeasureString(String, Font, PointF, StringFormat)

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Parametreler

text
String

Ölçülecek dize.

font
Font

Font dizenin metin biçimini tanımlar.

origin
PointF

dizenin sol üst köşesini temsil eden PointF yapısı.

stringFormat
StringFormat

dize için satır aralığı gibi biçimlendirme bilgilerini temsil eden StringFormat.

Döndürülenler

Bu yöntem, font parametresi ve stringFormat parametresiyle çizildiği gibi text parametresi tarafından belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden SizeF bir yapı döndürür.

Özel durumlar

font null.

Örnekler

Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgsegerektirir. Kod aşağıdaki eylemleri gerçekleştirir:

  • Ölçülecek bir dize ve Arial olarak ayarlanmış bir yazı tipi nesnesi oluşturur (16 nokta)

  • Dizenin sol üst köşesini bulmak için bir nokta oluşturur.

  • Bir dize biçimi nesnesi oluşturur ve biçim bayraklarını DirectionVerticalolarak ayarlar.

  • Dizeyi ölçmek için bir boyut nesnesi oluşturur.

  • Dizeyi, yazı tipi nesnesini, bulma noktasını ve dize biçimini kullanarak dizenin boyutunu ölçer.

  • Bulma noktasını ve dizenin ölçülen boyutunu kullanarak kırmızı bir dikdörtgen çizer.

  • Dizeyi çizilen dikdörtgenin içine çizer.

Sonuç, dikey dizeyi kapsayan dikey bir dikdörtgendir.

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

Açıklamalar

MeasureString yöntemi tek tek dizelerle kullanılmak üzere tasarlanmıştır ve dizeden önce ve sonra az miktarda fazladan alan içerir ve bu da karakter sayısını aşmaya olanak sağlar. Ayrıca, DrawString yöntemi görüntü kalitesini iyileştirmek için karakter noktalarını ayarlar ve MeasureStringtarafından bildirilenden daha dar bir dize görüntüleyebilir. Düzendeki bitişik dizelere uygun ölçümler elde etmek için (örneğin, biçimlendirilmiş metin uygularken), MeasureCharacterRanges yöntemini veya StringFormatalan MeasureString yöntemlerinden birini kullanın ve GenericTypographicgeçirin. Ayrıca, GraphicsTextRenderingHintAntiAliasolduğundan emin olun.

Ayrıca bkz.

Şunlara uygulanır

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

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Parametreler

text
ReadOnlySpan<Char>

Ölçülecek dize.

font
Font

Font dizenin metin biçimini tanımlar.

layoutArea
SizeF

Metnin en büyük düzen alanını belirten SizeF yapısı.

stringFormat
StringFormat

dize için satır aralığı gibi biçimlendirme bilgilerini temsil eden StringFormat.

Döndürülenler

Bu yöntem, font parametresi ve stringFormat parametresiyle çizildiği şekilde text parametresinde belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden SizeF bir yapı döndürür.

Şunlara uygulanır

MeasureString(ReadOnlySpan<Char>, Font)

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Fontile çizildiğinde belirtilen dizeyi ölçer.

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

Parametreler

text
ReadOnlySpan<Char>

Ölçülecek dize.

font
Font

Dizenin metin biçimini tanımlayan Font.

Döndürülenler

Bu yöntem, font parametresiyle çizildiği gibi text parametresi tarafından belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden bir SizeF yapısı döndürür.

Şunlara uygulanır

MeasureString(String, Font, Int32)

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Fontile çizildiğinde belirtilen dizeyi ölçer.

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

Parametreler

text
String

Ölçülecek dize.

font
Font

Dizenin biçimini tanımlayan Font.

width
Int32

Dizenin piksel cinsinden maksimum genişliği.

Döndürülenler

Bu yöntem, font parametresiyle çizildiği gibi text parametresinde belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden bir SizeF yapısı döndürür.

Özel durumlar

font null.

Örnekler

Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgsegerektirir. Kod aşağıdaki eylemleri gerçekleştirir:

  • Ölçülecek bir dize ve Arial (16 punto) olarak ayarlanmış bir yazı tipi nesnesi oluşturur.

  • Dizenin en büyük genişliğini ayarlar.

  • Bir boyut nesnesi oluşturur ve dizenin boyutunu ölçmek için bunu, yazı tipi nesnesini ve en büyük dize genişliğini kullanır.

  • Dizenin ölçülen boyutunu kullanarak kırmızı bir dikdörtgen çizer.

  • Dizeyi çizilen dikdörtgenin içine çizer.

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

Açıklamalar

width parametresi, döndürülen SizeF yapısının (Width) genişlik bileşeninin en yüksek değerini belirtir. width parametresi dizenin gerçek genişliğinden küçükse, döndürülen Width bileşeni belirtilen genişliğe sığacak karakter sayısı üst sınırını temsil eden bir değere kesilir. Dizenin tamamına uyum sağlamak için döndürülen Height bileşeni, dizenin karakter kaydırma ile görüntülenmesine izin veren bir değere ayarlanır.

MeasureString yöntemi tek tek dizelerle kullanılmak üzere tasarlanmıştır ve dizeden önce ve sonra az miktarda fazladan alan içerir ve bu da karakter sayısını aşmaya olanak sağlar. Ayrıca, DrawString yöntemi görüntü kalitesini iyileştirmek için karakter noktalarını ayarlar ve MeasureStringtarafından bildirilenden daha dar bir dize görüntüleyebilir. Düzendeki bitişik dizelere uygun ölçümler elde etmek için (örneğin, biçimlendirilmiş metin uygularken), MeasureCharacterRanges yöntemini veya StringFormatalan MeasureString yöntemlerinden birini kullanın ve GenericTypographicgeçirin. Ayrıca, GraphicsTextRenderingHintAntiAliasolduğundan emin olun.

Ayrıca bkz.

Şunlara uygulanır

MeasureString(String, Font, SizeF)

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen düzen alanında belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer.

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

Parametreler

text
String

Ölçülecek dize.

font
Font

Font dizenin metin biçimini tanımlar.

layoutArea
SizeF

Metnin en büyük düzen alanını belirten SizeF yapısı.

Döndürülenler

Bu yöntem, font parametresiyle çizildiği gibi text parametresi tarafından belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden bir SizeF yapısı döndürür.

Özel durumlar

font null.

Örnekler

Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgsegerektirir. Kod aşağıdaki eylemleri gerçekleştirir:

  • Ölçülecek bir dize ve Arial (16 punto) olarak ayarlanmış bir yazı tipi nesnesi oluşturur.

  • Dizenin en büyük düzen boyutunu ayarlar.

  • Bir boyut nesnesi oluşturur ve dizenin boyutunu ölçmek için bunu, yazı tipi nesnesini ve en büyük düzen boyutunu kullanır.

  • Dizenin ölçülen boyutunu kullanarak kırmızı bir dikdörtgen çizer.

  • Dizeyi çizilen dikdörtgenin içine çizer.

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

Açıklamalar

MeasureString yöntemi tek tek dizelerle kullanılmak üzere tasarlanmıştır ve dizeden önce ve sonra az miktarda fazladan alan içerir ve bu da karakter sayısını aşmaya olanak sağlar. Ayrıca, DrawString yöntemi görüntü kalitesini iyileştirmek için karakter noktalarını ayarlar ve MeasureStringtarafından bildirilenden daha dar bir dize görüntüleyebilir. Düzendeki bitişik dizelere uygun ölçümler elde etmek için (örneğin, biçimlendirilmiş metin uygularken), MeasureCharacterRanges yöntemini veya StringFormatalan MeasureString yöntemlerinden birini kullanın ve GenericTypographicgeçirin. Ayrıca, GraphicsTextRenderingHintAntiAliasolduğundan emin olun.

Ayrıca bkz.

Şunlara uygulanır

MeasureString(ReadOnlySpan<Char>, Font, Int32)

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Fontile çizildiğinde belirtilen dizeyi ölçer.

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

Parametreler

text
ReadOnlySpan<Char>

Ölçülecek dize.

font
Font

Dizenin biçimini tanımlayan Font.

width
Int32

Dizenin piksel cinsinden maksimum genişliği.

Döndürülenler

Bu yöntem, font parametresiyle çizildiği gibi text parametresinde belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden bir SizeF yapısı döndürür.

Şunlara uygulanır

MeasureString(ReadOnlySpan<Char>, Font, SizeF)

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen düzen alanında belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer.

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

Parametreler

text
ReadOnlySpan<Char>

Ölçülecek dize.

font
Font

Font dizenin metin biçimini tanımlar.

layoutArea
SizeF

Metnin en büyük düzen alanını belirten SizeF yapısı.

Döndürülenler

Bu yöntem, font parametresiyle çizildiği gibi text parametresi tarafından belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden bir SizeF yapısı döndürür.

Şunlara uygulanır

MeasureString(String, Font)

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Fontile çizildiğinde belirtilen dizeyi ölçer.

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

Parametreler

text
String

Ölçülecek dize.

font
Font

Dizenin metin biçimini tanımlayan Font.

Döndürülenler

Bu yöntem, font parametresiyle çizildiği gibi text parametresi tarafından belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden bir SizeF yapısı döndürür.

Özel durumlar

font null.

Örnekler

Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgsegerektirir. Kod aşağıdaki eylemleri gerçekleştirir:

  • Ölçülecek bir dize oluşturur.

  • Bir yazı tipi nesnesi oluşturur ve Bunu Arial (16 punto) olarak ayarlar.

  • Bir boyut nesnesi oluşturur ve dizenin boyutunu ölçmek için bunu ve yazı tipi nesnesini kullanır.

  • Dizenin ölçülen boyutunu kullanarak kırmızı bir dikdörtgen çizer.

  • Dizeyi çizilen dikdörtgenin içine çizer.

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

Açıklamalar

MeasureString yöntemi tek tek dizelerle kullanılmak üzere tasarlanmıştır ve dizeden önce ve sonra az miktarda fazladan alan içerir ve bu da karakter sayısını aşmaya olanak sağlar. Ayrıca, DrawString yöntemi görüntü kalitesini iyileştirmek için karakter noktalarını ayarlar ve MeasureStringtarafından bildirilenden daha dar bir dize görüntüleyebilir. Düzendeki bitişik dizelere uygun ölçümler elde etmek için (örneğin, biçimlendirilmiş metin uygularken), MeasureCharacterRanges yöntemini veya StringFormatalan MeasureString yöntemlerinden birini kullanın ve GenericTypographicgeçirin. Ayrıca, GraphicsTextRenderingHintAntiAliasolduğundan emin olun.

Ayrıca bkz.

Şunlara uygulanır

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

Kaynak:
Graphics.cs
Kaynak:
Graphics.cs
Kaynak:
Graphics.cs

Belirtilen Font ile çizildiğinde belirtilen dizeyi ölçer ve belirtilen StringFormatile biçimlendirilir.

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

Parametreler

text
ReadOnlySpan<Char>

Ölçülecek dize.

font
Font

Font dizenin metin biçimini tanımlar.

origin
PointF

dizenin sol üst köşesini temsil eden PointF yapısı.

stringFormat
StringFormat

dize için satır aralığı gibi biçimlendirme bilgilerini temsil eden StringFormat.

Döndürülenler

Bu yöntem, font parametresi ve stringFormat parametresiyle çizildiği gibi text parametresi tarafından belirtilen dizenin PageUnit özelliği tarafından belirtilen birimlerde boyutunu temsil eden SizeF bir yapı döndürür.

Şunlara uygulanır