TextRenderer.MeasureText Yöntem

Tanım

Belirtilen yazı tipiyle çizildiğinde belirtilen metni ölçer.

Aşırı Yüklemeler

Name Description
MeasureText(String, Font, Size, TextFormatFlags)

Belirtilen yazı tipi ve biçimlendirme yönergeleriyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve metnin ilk sınırlayıcı dikdörtgenini oluşturmak için belirtilen boyutu kullanır.

MeasureText(ReadOnlySpan<Char>, Font, Size, TextFormatFlags)

Belirtilen yazı tipi ve biçimlendirme yönergeleriyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve metnin ilk sınırlayıcı dikdörtgenini oluşturmak için belirtilen boyutu kullanır.

MeasureText(IDeviceContext, String, Font, Size)

Belirtilen cihaz bağlamında belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve belirtilen boyutu kullanarak metin için ilk sınırlayıcı dikdörtgeni oluşturur.

MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font, Size)

Belirtilen cihaz bağlamında belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve belirtilen boyutu kullanarak metin için ilk sınırlayıcı dikdörtgeni oluşturur.

MeasureText(String, Font, Size)

Belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve belirtilen boyutu kullanarak ilk sınırlayıcı dikdörtgeni oluşturur.

MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font)

Belirtilen cihaz bağlamında belirtilen yazı tipiyle çizilmiş belirtilen metnin boyutunu piksel cinsinden sağlar.

MeasureText(IDeviceContext, String, Font)

Belirtilen cihaz bağlamında belirtilen yazı tipiyle çizilmiş belirtilen metnin boyutunu piksel cinsinden sağlar.

MeasureText(String, Font)

Belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar.

MeasureText(ReadOnlySpan<Char>, Font)

Belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar.

MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font, Size, TextFormatFlags)

Belirtilen cihaz bağlamı, yazı tipi ve biçimlendirme yönergeleriyle çizildiğinde, belirtilen boyutu kullanarak metin için ilk sınırlayıcı dikdörtgeni oluşturmak üzere belirtilen metnin boyutunu piksel cinsinden sağlar.

MeasureText(ReadOnlySpan<Char>, Font, Size)

Belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve belirtilen boyutu kullanarak ilk sınırlayıcı dikdörtgeni oluşturur.

MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags)

Belirtilen cihaz bağlamı, yazı tipi ve biçimlendirme yönergeleriyle çizildiğinde, belirtilen boyutu kullanarak metin için ilk sınırlayıcı dikdörtgeni oluşturmak üzere belirtilen metnin boyutunu piksel cinsinden sağlar.

MeasureText(String, Font, Size, TextFormatFlags)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen yazı tipi ve biçimlendirme yönergeleriyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve metnin ilk sınırlayıcı dikdörtgenini oluşturmak için belirtilen boyutu kullanır.

public:
 static System::Drawing::Size MeasureText(System::String ^ text, System::Drawing::Font ^ font, System::Drawing::Size proposedSize, System::Windows::Forms::TextFormatFlags flags);
public static System.Drawing.Size MeasureText(string text, System.Drawing.Font font, System.Drawing.Size proposedSize, System.Windows.Forms.TextFormatFlags flags);
public static System.Drawing.Size MeasureText(string? text, System.Drawing.Font? font, System.Drawing.Size proposedSize, System.Windows.Forms.TextFormatFlags flags);
static member MeasureText : string * System.Drawing.Font * System.Drawing.Size * System.Windows.Forms.TextFormatFlags -> System.Drawing.Size
Public Shared Function MeasureText (text As String, font As Font, proposedSize As Size, flags As TextFormatFlags) As Size

Parametreler

text
String

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

proposedSize
Size

İlk Size sınırlayıcı dikdörtgenin değeri.

flags
TextFormatFlags

Ölçülen metne uygulanacak biçimlendirme yönergeleri.

Döndürülenler

Sizebelirtilen text ve biçimiyle çizilmiş piksel font cinsinden değeri.

Örnekler

Aşağıdaki kod örneğinde yöntemlerden birinin MeasureText nasıl kullanılacağı gösterilmektedir. Bu örneği çalıştırmak için kodu bir Windows Formuna yapıştırın ve formun DrawALineOfText olay işleyicisinden Paint çağırın ve ePaintEventArgs olarak geçirin.

private static void DrawALineOfText(PaintEventArgs e)
{
    // Declare strings to render on the form.
    string[] stringsToPaint = { "Tail", "Spin", " Toys" };

    // Declare fonts for rendering the strings.
    Font[] fonts = { new Font("Arial", 14, FontStyle.Regular), 
        new Font("Arial", 14, FontStyle.Italic), 
        new Font("Arial", 14, FontStyle.Regular) };

    Point startPoint = new Point(10, 10);

    // Set TextFormatFlags to no padding so strings are drawn together.
    TextFormatFlags flags = TextFormatFlags.NoPadding;

    // Declare a proposed size with dimensions set to the maximum integer value.
    Size proposedSize = new Size(int.MaxValue, int.MaxValue);

    // Measure each string with its font and NoPadding value and 
    // draw it to the form.
    for (int i = 0; i < stringsToPaint.Length; i++)
    {
        Size size = TextRenderer.MeasureText(e.Graphics, stringsToPaint[i], 
            fonts[i], proposedSize, flags);
        Rectangle rect = new Rectangle(startPoint, size);
        TextRenderer.DrawText(e.Graphics, stringsToPaint[i], fonts[i],
            startPoint, Color.Black, flags);
        startPoint.X += size.Width;
    }
}
Private Sub DrawALineOfText(ByVal e As PaintEventArgs)
    ' Declare strings to render on the form.
    Dim stringsToPaint() As String = {"Tail", "Spin", " Toys"}

    ' Declare fonts for rendering the strings.
    Dim fonts() As Font = {New Font("Arial", 14, FontStyle.Regular), _
        New Font("Arial", 14, FontStyle.Italic), _
        New Font("Arial", 14, FontStyle.Regular)}

    Dim startPoint As New Point(10, 10)

    ' Set TextFormatFlags to no padding so strings are drawn together.
    Dim flags As TextFormatFlags = TextFormatFlags.NoPadding

    ' Declare a proposed size with dimensions set to the maximum integer value.
    Dim proposedSize As Size = New Size(Integer.MaxValue, Integer.MaxValue)

    ' Measure each string with its font and NoPadding value and draw it to the form.
    For i As Integer = 0 To stringsToPaint.Length - 1
        Dim size As Size = TextRenderer.MeasureText(e.Graphics, _
            stringsToPaint(i), fonts(i), proposedSize, flags)
        Dim rect As Rectangle = New Rectangle(startPoint, size)
        TextRenderer.DrawText(e.Graphics, stringsToPaint(i), fonts(i), _
            startPoint, Color.Black, flags)
        startPoint.X += size.Width
    Next
End Sub

Açıklamalar

MeasureText proposedSize metin boyutunu belirlerken yükseklik ile genişlik ilişkisini belirtmek için ve flags parametrelerini kullanır. Tek bir satırdaki metin ölçülürken, parametresi yükseklik boyutu değerinden proposedSizeSizebüyük olan bir Int32.MaxValue değerini temsil ederse, döndürülen Size değer metnin gerçek yüksekliğini yansıtacak şekilde ayarlanır.

Parametre alan DrawText aşırı yüklemelerden birini TextFormatFlags kullanarak metnin nasıl çizildiğini değiştirebilirsiniz. Örneğin, öğesinin TextRenderer varsayılan davranışı, taşma karakterlerini barındırmak için çizilen metnin sınırlayıcı dikdörtgenine doldurma eklemektir. Bu fazladan boşluklar olmadan bir metin satırı çizmeniz gerekiyorsa ve sürümlerini DrawText kullanmanız gerekir ve MeasureText bu da ve SizeTextFormatFlags parametresini alır. Bir örnek için bkz. MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags).

Note

bu aşırı yükleme veya MeasureText(String, Font, Size, TextFormatFlags)TextFormatFlagsdeğerini NoPadding yoksayarLeftAndRightPadding. Varsayılan değer dışında bir doldurma değeri belirtiyorsanız, nesnesini MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags) alan değerinin aşırı yüklemesini IDeviceContext kullanmanız gerekir.

Şunlara uygulanır

MeasureText(ReadOnlySpan<Char>, Font, Size, TextFormatFlags)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen yazı tipi ve biçimlendirme yönergeleriyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve metnin ilk sınırlayıcı dikdörtgenini oluşturmak için belirtilen boyutu kullanır.

public:
 static System::Drawing::Size MeasureText(ReadOnlySpan<char> text, System::Drawing::Font ^ font, System::Drawing::Size proposedSize, System::Windows::Forms::TextFormatFlags flags);
public static System.Drawing.Size MeasureText(ReadOnlySpan<char> text, System.Drawing.Font? font, System.Drawing.Size proposedSize, System.Windows.Forms.TextFormatFlags flags);
static member MeasureText : ReadOnlySpan<char> * System.Drawing.Font * System.Drawing.Size * System.Windows.Forms.TextFormatFlags -> System.Drawing.Size
Public Shared Function MeasureText (text As ReadOnlySpan(Of Char), font As Font, proposedSize As Size, flags As TextFormatFlags) As Size

Parametreler

text
ReadOnlySpan<Char>

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

proposedSize
Size

İlk Size sınırlayıcı dikdörtgenin değeri.

flags
TextFormatFlags

Ölçülen metne uygulanacak biçimlendirme yönergeleri.

Döndürülenler

Sizebelirtilen text ve biçimiyle çizilmiş piksel font cinsinden değeri.

Özel durumlar

Şunlara uygulanır

MeasureText(IDeviceContext, String, Font, Size)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen cihaz bağlamında belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve belirtilen boyutu kullanarak metin için ilk sınırlayıcı dikdörtgeni oluşturur.

public:
 static System::Drawing::Size MeasureText(System::Drawing::IDeviceContext ^ dc, System::String ^ text, System::Drawing::Font ^ font, System::Drawing::Size proposedSize);
public static System.Drawing.Size MeasureText(System.Drawing.IDeviceContext dc, string text, System.Drawing.Font font, System.Drawing.Size proposedSize);
public static System.Drawing.Size MeasureText(System.Drawing.IDeviceContext dc, string? text, System.Drawing.Font? font, System.Drawing.Size proposedSize);
static member MeasureText : System.Drawing.IDeviceContext * string * System.Drawing.Font * System.Drawing.Size -> System.Drawing.Size
Public Shared Function MeasureText (dc As IDeviceContext, text As String, font As Font, proposedSize As Size) As Size

Parametreler

dc
IDeviceContext

Metnin ölçüldiği cihaz bağlamı.

text
String

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

proposedSize
Size

İlk Size sınırlayıcı dikdörtgenin değeri.

Döndürülenler

Sizebelirtilen textile çizilmiş piksel font cinsinden değeri.

Özel durumlar

dc, null'e eşittir.

Örnekler

Aşağıdaki kod örneğinde yöntemlerden birinin MeasureText nasıl kullanılacağı gösterilmektedir. Bu örneği çalıştırmak için kodu bir Windows Formuna yapıştırın ve formun DrawALineOfText olay işleyicisinden Paint çağırın ve ePaintEventArgs olarak geçirin.

private static void DrawALineOfText(PaintEventArgs e)
{
    // Declare strings to render on the form.
    string[] stringsToPaint = { "Tail", "Spin", " Toys" };

    // Declare fonts for rendering the strings.
    Font[] fonts = { new Font("Arial", 14, FontStyle.Regular), 
        new Font("Arial", 14, FontStyle.Italic), 
        new Font("Arial", 14, FontStyle.Regular) };

    Point startPoint = new Point(10, 10);

    // Set TextFormatFlags to no padding so strings are drawn together.
    TextFormatFlags flags = TextFormatFlags.NoPadding;

    // Declare a proposed size with dimensions set to the maximum integer value.
    Size proposedSize = new Size(int.MaxValue, int.MaxValue);

    // Measure each string with its font and NoPadding value and 
    // draw it to the form.
    for (int i = 0; i < stringsToPaint.Length; i++)
    {
        Size size = TextRenderer.MeasureText(e.Graphics, stringsToPaint[i], 
            fonts[i], proposedSize, flags);
        Rectangle rect = new Rectangle(startPoint, size);
        TextRenderer.DrawText(e.Graphics, stringsToPaint[i], fonts[i],
            startPoint, Color.Black, flags);
        startPoint.X += size.Width;
    }
}
Private Sub DrawALineOfText(ByVal e As PaintEventArgs)
    ' Declare strings to render on the form.
    Dim stringsToPaint() As String = {"Tail", "Spin", " Toys"}

    ' Declare fonts for rendering the strings.
    Dim fonts() As Font = {New Font("Arial", 14, FontStyle.Regular), _
        New Font("Arial", 14, FontStyle.Italic), _
        New Font("Arial", 14, FontStyle.Regular)}

    Dim startPoint As New Point(10, 10)

    ' Set TextFormatFlags to no padding so strings are drawn together.
    Dim flags As TextFormatFlags = TextFormatFlags.NoPadding

    ' Declare a proposed size with dimensions set to the maximum integer value.
    Dim proposedSize As Size = New Size(Integer.MaxValue, Integer.MaxValue)

    ' Measure each string with its font and NoPadding value and draw it to the form.
    For i As Integer = 0 To stringsToPaint.Length - 1
        Dim size As Size = TextRenderer.MeasureText(e.Graphics, _
            stringsToPaint(i), fonts(i), proposedSize, flags)
        Dim rect As Rectangle = New Rectangle(startPoint, size)
        TextRenderer.DrawText(e.Graphics, stringsToPaint(i), fonts(i), _
            startPoint, Color.Black, flags)
        startPoint.X += size.Width
    Next
End Sub

Açıklamalar

yöntemi, MeasureText metin boyutunu belirlerken yükseklik ile genişlik ilişkisini belirtmek için parametresini kullanır proposedSize . Tek bir satırdaki metin ölçülürken, parametresi yükseklik boyutu değerinden proposedSizeSizebüyük olan bir Int32.MaxValue değerini temsil ederse, döndürülen Size değer metnin gerçek yüksekliğini yansıtacak şekilde ayarlanır.

Şunlara uygulanır

MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font, Size)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen cihaz bağlamında belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve belirtilen boyutu kullanarak metin için ilk sınırlayıcı dikdörtgeni oluşturur.

public:
 static System::Drawing::Size MeasureText(System::Drawing::IDeviceContext ^ dc, ReadOnlySpan<char> text, System::Drawing::Font ^ font, System::Drawing::Size proposedSize);
public static System.Drawing.Size MeasureText(System.Drawing.IDeviceContext dc, ReadOnlySpan<char> text, System.Drawing.Font? font, System.Drawing.Size proposedSize);
static member MeasureText : System.Drawing.IDeviceContext * ReadOnlySpan<char> * System.Drawing.Font * System.Drawing.Size -> System.Drawing.Size
Public Shared Function MeasureText (dc As IDeviceContext, text As ReadOnlySpan(Of Char), font As Font, proposedSize As Size) As Size

Parametreler

dc
IDeviceContext

Metnin ölçüldiği cihaz bağlamı.

text
ReadOnlySpan<Char>

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

proposedSize
Size

İlk Size sınırlayıcı dikdörtgenin değeri.

Döndürülenler

Sizebelirtilen textile çizilmiş piksel font cinsinden değeri.

Özel durumlar

dc, null'e eşittir.

Şunlara uygulanır

MeasureText(String, Font, Size)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve belirtilen boyutu kullanarak ilk sınırlayıcı dikdörtgeni oluşturur.

public:
 static System::Drawing::Size MeasureText(System::String ^ text, System::Drawing::Font ^ font, System::Drawing::Size proposedSize);
public static System.Drawing.Size MeasureText(string text, System.Drawing.Font font, System.Drawing.Size proposedSize);
public static System.Drawing.Size MeasureText(string? text, System.Drawing.Font? font, System.Drawing.Size proposedSize);
static member MeasureText : string * System.Drawing.Font * System.Drawing.Size -> System.Drawing.Size
Public Shared Function MeasureText (text As String, font As Font, proposedSize As Size) As Size

Parametreler

text
String

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

proposedSize
Size

İlk Size sınırlayıcı dikdörtgenin değeri.

Döndürülenler

Sizebelirtilen textile çizilmiş piksel font cinsinden değeri.

Örnekler

Aşağıdaki kod örneğinde yöntemlerden birinin MeasureText nasıl kullanılacağı gösterilmektedir. Bu örneği çalıştırmak için kodu bir Windows Formuna yapıştırın ve formun DrawALineOfText olay işleyicisinden Paint çağırın ve ePaintEventArgs olarak geçirin.

private static void DrawALineOfText(PaintEventArgs e)
{
    // Declare strings to render on the form.
    string[] stringsToPaint = { "Tail", "Spin", " Toys" };

    // Declare fonts for rendering the strings.
    Font[] fonts = { new Font("Arial", 14, FontStyle.Regular), 
        new Font("Arial", 14, FontStyle.Italic), 
        new Font("Arial", 14, FontStyle.Regular) };

    Point startPoint = new Point(10, 10);

    // Set TextFormatFlags to no padding so strings are drawn together.
    TextFormatFlags flags = TextFormatFlags.NoPadding;

    // Declare a proposed size with dimensions set to the maximum integer value.
    Size proposedSize = new Size(int.MaxValue, int.MaxValue);

    // Measure each string with its font and NoPadding value and 
    // draw it to the form.
    for (int i = 0; i < stringsToPaint.Length; i++)
    {
        Size size = TextRenderer.MeasureText(e.Graphics, stringsToPaint[i], 
            fonts[i], proposedSize, flags);
        Rectangle rect = new Rectangle(startPoint, size);
        TextRenderer.DrawText(e.Graphics, stringsToPaint[i], fonts[i],
            startPoint, Color.Black, flags);
        startPoint.X += size.Width;
    }
}
Private Sub DrawALineOfText(ByVal e As PaintEventArgs)
    ' Declare strings to render on the form.
    Dim stringsToPaint() As String = {"Tail", "Spin", " Toys"}

    ' Declare fonts for rendering the strings.
    Dim fonts() As Font = {New Font("Arial", 14, FontStyle.Regular), _
        New Font("Arial", 14, FontStyle.Italic), _
        New Font("Arial", 14, FontStyle.Regular)}

    Dim startPoint As New Point(10, 10)

    ' Set TextFormatFlags to no padding so strings are drawn together.
    Dim flags As TextFormatFlags = TextFormatFlags.NoPadding

    ' Declare a proposed size with dimensions set to the maximum integer value.
    Dim proposedSize As Size = New Size(Integer.MaxValue, Integer.MaxValue)

    ' Measure each string with its font and NoPadding value and draw it to the form.
    For i As Integer = 0 To stringsToPaint.Length - 1
        Dim size As Size = TextRenderer.MeasureText(e.Graphics, _
            stringsToPaint(i), fonts(i), proposedSize, flags)
        Dim rect As Rectangle = New Rectangle(startPoint, size)
        TextRenderer.DrawText(e.Graphics, stringsToPaint(i), fonts(i), _
            startPoint, Color.Black, flags)
        startPoint.X += size.Width
    Next
End Sub

Açıklamalar

yöntemi, MeasureText metin boyutunu belirlerken yükseklik ile genişlik ilişkisini belirtmek için parametresini kullanır proposedSize . Tek bir satırdaki metin ölçülürken, parametresi yükseklik boyutu değerinden proposedSizeSizebüyük olan bir Int32.MaxValue değerini temsil ederse, döndürülen Size değer metnin gerçek yüksekliğini yansıtacak şekilde ayarlanır.

Şunlara uygulanır

MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen cihaz bağlamında belirtilen yazı tipiyle çizilmiş belirtilen metnin boyutunu piksel cinsinden sağlar.

public:
 static System::Drawing::Size MeasureText(System::Drawing::IDeviceContext ^ dc, ReadOnlySpan<char> text, System::Drawing::Font ^ font);
public static System.Drawing.Size MeasureText(System.Drawing.IDeviceContext dc, ReadOnlySpan<char> text, System.Drawing.Font? font);
static member MeasureText : System.Drawing.IDeviceContext * ReadOnlySpan<char> * System.Drawing.Font -> System.Drawing.Size
Public Shared Function MeasureText (dc As IDeviceContext, text As ReadOnlySpan(Of Char), font As Font) As Size

Parametreler

dc
IDeviceContext

Metnin ölçüldiği cihaz bağlamı.

text
ReadOnlySpan<Char>

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

Döndürülenler

Sizebelirtilen cihaz bağlamında belirtilen font ile çizilmiş piksel text cinsinden değeri.

Özel durumlar

dc, null'e eşittir.

Şunlara uygulanır

MeasureText(IDeviceContext, String, Font)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen cihaz bağlamında belirtilen yazı tipiyle çizilmiş belirtilen metnin boyutunu piksel cinsinden sağlar.

public:
 static System::Drawing::Size MeasureText(System::Drawing::IDeviceContext ^ dc, System::String ^ text, System::Drawing::Font ^ font);
public static System.Drawing.Size MeasureText(System.Drawing.IDeviceContext dc, string text, System.Drawing.Font font);
public static System.Drawing.Size MeasureText(System.Drawing.IDeviceContext dc, string? text, System.Drawing.Font? font);
static member MeasureText : System.Drawing.IDeviceContext * string * System.Drawing.Font -> System.Drawing.Size
Public Shared Function MeasureText (dc As IDeviceContext, text As String, font As Font) As Size

Parametreler

dc
IDeviceContext

Metnin ölçüldiği cihaz bağlamı.

text
String

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

Döndürülenler

Sizebelirtilen cihaz bağlamında belirtilen text ile tek bir satırda çizilen piksel font cinsinden değeri.

Örnekler

Aşağıdaki kod örneğinde yöntemlerden birinin MeasureText nasıl kullanılacağı gösterilmektedir. Bu örneği çalıştırmak için kodu bir Windows Formuna yapıştırın ve formun DrawALineOfText olay işleyicisinden Paint çağırın ve ePaintEventArgs olarak geçirin.

private static void DrawALineOfText(PaintEventArgs e)
{
    // Declare strings to render on the form.
    string[] stringsToPaint = { "Tail", "Spin", " Toys" };

    // Declare fonts for rendering the strings.
    Font[] fonts = { new Font("Arial", 14, FontStyle.Regular), 
        new Font("Arial", 14, FontStyle.Italic), 
        new Font("Arial", 14, FontStyle.Regular) };

    Point startPoint = new Point(10, 10);

    // Set TextFormatFlags to no padding so strings are drawn together.
    TextFormatFlags flags = TextFormatFlags.NoPadding;

    // Declare a proposed size with dimensions set to the maximum integer value.
    Size proposedSize = new Size(int.MaxValue, int.MaxValue);

    // Measure each string with its font and NoPadding value and 
    // draw it to the form.
    for (int i = 0; i < stringsToPaint.Length; i++)
    {
        Size size = TextRenderer.MeasureText(e.Graphics, stringsToPaint[i], 
            fonts[i], proposedSize, flags);
        Rectangle rect = new Rectangle(startPoint, size);
        TextRenderer.DrawText(e.Graphics, stringsToPaint[i], fonts[i],
            startPoint, Color.Black, flags);
        startPoint.X += size.Width;
    }
}
Private Sub DrawALineOfText(ByVal e As PaintEventArgs)
    ' Declare strings to render on the form.
    Dim stringsToPaint() As String = {"Tail", "Spin", " Toys"}

    ' Declare fonts for rendering the strings.
    Dim fonts() As Font = {New Font("Arial", 14, FontStyle.Regular), _
        New Font("Arial", 14, FontStyle.Italic), _
        New Font("Arial", 14, FontStyle.Regular)}

    Dim startPoint As New Point(10, 10)

    ' Set TextFormatFlags to no padding so strings are drawn together.
    Dim flags As TextFormatFlags = TextFormatFlags.NoPadding

    ' Declare a proposed size with dimensions set to the maximum integer value.
    Dim proposedSize As Size = New Size(Integer.MaxValue, Integer.MaxValue)

    ' Measure each string with its font and NoPadding value and draw it to the form.
    For i As Integer = 0 To stringsToPaint.Length - 1
        Dim size As Size = TextRenderer.MeasureText(e.Graphics, _
            stringsToPaint(i), fonts(i), proposedSize, flags)
        Dim rect As Rectangle = New Rectangle(startPoint, size)
        TextRenderer.DrawText(e.Graphics, stringsToPaint(i), fonts(i), _
            startPoint, Color.Black, flags)
        startPoint.X += size.Width
    Next
End Sub

Açıklamalar

yöntemi, MeasureText metnin tek bir satıra çizilmiş olmasını gerektirir.

Şunlara uygulanır

MeasureText(String, Font)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar.

public:
 static System::Drawing::Size MeasureText(System::String ^ text, System::Drawing::Font ^ font);
public static System.Drawing.Size MeasureText(string text, System.Drawing.Font font);
public static System.Drawing.Size MeasureText(string? text, System.Drawing.Font? font);
static member MeasureText : string * System.Drawing.Font -> System.Drawing.Size
Public Shared Function MeasureText (text As String, font As Font) As Size

Parametreler

text
String

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

Döndürülenler

Sizebelirtilen textile tek bir satıra çizilmiş piksel font cinsinden değeri. Parametre alan DrawText(IDeviceContext, String, Font, Rectangle, Color, TextFormatFlags) aşırı yüklemelerden birini TextFormatFlags kullanarak metnin nasıl çizildiğini değiştirebilirsiniz. Örneğin, öğesinin TextRenderer varsayılan davranışı, taşma karakterlerini barındırmak için çizilen metnin sınırlayıcı dikdörtgenine doldurma eklemektir. Bu fazladan boşluklar olmadan bir metin satırı çizmeniz gerekiyorsa ve sürümlerini DrawText(IDeviceContext, String, Font, Point, Color) kullanmanız gerekir ve MeasureText(IDeviceContext, String, Font) bu da ve SizeTextFormatFlags parametresini alır. Bir örnek için bkz. MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags).

Örnekler

Aşağıdaki kod örneği, yönteminin MeasureText nasıl kullanılacağını gösterir. Bu örneği çalıştırmak için kodu bir Windows Formuna yapıştırın ve formun MeasureText1 olay işleyicisinden Paint çağırın ve ePaintEventArgs olarak geçirin.

private void MeasureText1(PaintEventArgs e)
{
    String text1 = "Measure this text";
    Font arialBold = new Font("Arial", 12.0F);
    Size textSize = TextRenderer.MeasureText(text1, arialBold);
    TextRenderer.DrawText(e.Graphics, text1, arialBold, 
        new Rectangle(new Point(10, 10), textSize), Color.Red);  
}
Private Sub MeasureText1(ByVal e As PaintEventArgs)
    Dim text1 As String = "Measure this text"
    Dim arialBold As New Font("Arial", 12.0F)
    Dim textSize As Size = TextRenderer.MeasureText(text1, arialBold)
    TextRenderer.DrawText(e.Graphics, text1, arialBold, _
        New Rectangle(New Point(10, 10), textSize), Color.Red)

End Sub

Açıklamalar

yöntemi, MeasureText metnin tek bir satıra çizilmiş olmasını gerektirir.

Şunlara uygulanır

MeasureText(ReadOnlySpan<Char>, Font)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar.

public:
 static System::Drawing::Size MeasureText(ReadOnlySpan<char> text, System::Drawing::Font ^ font);
public static System.Drawing.Size MeasureText(ReadOnlySpan<char> text, System.Drawing.Font? font);
static member MeasureText : ReadOnlySpan<char> * System.Drawing.Font -> System.Drawing.Size
Public Shared Function MeasureText (text As ReadOnlySpan(Of Char), font As Font) As Size

Parametreler

text
ReadOnlySpan<Char>

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

Döndürülenler

SizeBelirtilen yazı tipiyle tek bir satırda çizilen metnin piksel cinsinden değeri. Parametre alan DrawText(IDeviceContext, ReadOnlySpan<Char>, Font, Rectangle, Color, TextFormatFlags) aşırı yüklemelerden birini TextFormatFlags kullanarak metnin nasıl çizildiğini değiştirebilirsiniz. Örneğin, öğesinin TextRenderer varsayılan davranışı, taşma karakterlerini barındırmak için çizilen metnin sınırlayıcı dikdörtgenine doldurma eklemektir. Bu fazladan boşluklar olmadan bir metin satırı çizmeniz gerekiyorsa, ve sürümlerini DrawText(IDeviceContext, ReadOnlySpan<Char>, Font, Point, Color) kullanmanız gerekir. MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font) Bu, Boyut ve TextFormatFlags parametre alır. Bir örnek için bkz. MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags).

Şunlara uygulanır

MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font, Size, TextFormatFlags)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen cihaz bağlamı, yazı tipi ve biçimlendirme yönergeleriyle çizildiğinde, belirtilen boyutu kullanarak metin için ilk sınırlayıcı dikdörtgeni oluşturmak üzere belirtilen metnin boyutunu piksel cinsinden sağlar.

public:
 static System::Drawing::Size MeasureText(System::Drawing::IDeviceContext ^ dc, ReadOnlySpan<char> text, System::Drawing::Font ^ font, System::Drawing::Size proposedSize, System::Windows::Forms::TextFormatFlags flags);
public static System.Drawing.Size MeasureText(System.Drawing.IDeviceContext dc, ReadOnlySpan<char> text, System.Drawing.Font? font, System.Drawing.Size proposedSize, System.Windows.Forms.TextFormatFlags flags);
static member MeasureText : System.Drawing.IDeviceContext * ReadOnlySpan<char> * System.Drawing.Font * System.Drawing.Size * System.Windows.Forms.TextFormatFlags -> System.Drawing.Size
Public Shared Function MeasureText (dc As IDeviceContext, text As ReadOnlySpan(Of Char), font As Font, proposedSize As Size, flags As TextFormatFlags) As Size

Parametreler

dc
IDeviceContext

Metnin ölçüldiği cihaz bağlamı.

text
ReadOnlySpan<Char>

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

proposedSize
Size

İlk Size sınırlayıcı dikdörtgenin değeri.

flags
TextFormatFlags

Ölçülen metne uygulanacak biçimlendirme yönergeleri.

Döndürülenler

Sizebelirtilen text ve biçimiyle çizilmiş piksel font cinsinden değeri.

Özel durumlar

dc, null'e eşittir.

Şunlara uygulanır

MeasureText(ReadOnlySpan<Char>, Font, Size)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen yazı tipiyle çizildiğinde belirtilen metnin boyutunu piksel cinsinden sağlar ve belirtilen boyutu kullanarak ilk sınırlayıcı dikdörtgeni oluşturur.

public:
 static System::Drawing::Size MeasureText(ReadOnlySpan<char> text, System::Drawing::Font ^ font, System::Drawing::Size proposedSize);
public static System.Drawing.Size MeasureText(ReadOnlySpan<char> text, System.Drawing.Font? font, System.Drawing.Size proposedSize);
static member MeasureText : ReadOnlySpan<char> * System.Drawing.Font * System.Drawing.Size -> System.Drawing.Size
Public Shared Function MeasureText (text As ReadOnlySpan(Of Char), font As Font, proposedSize As Size) As Size

Parametreler

text
ReadOnlySpan<Char>

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

proposedSize
Size

İlk Size sınırlayıcı dikdörtgenin değeri.

Döndürülenler

Sizebelirtilen textile çizilmiş piksel font cinsinden değeri.

Şunlara uygulanır

MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags)

Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs
Kaynak:
TextRenderer.cs

Belirtilen cihaz bağlamı, yazı tipi ve biçimlendirme yönergeleriyle çizildiğinde, belirtilen boyutu kullanarak metin için ilk sınırlayıcı dikdörtgeni oluşturmak üzere belirtilen metnin boyutunu piksel cinsinden sağlar.

public:
 static System::Drawing::Size MeasureText(System::Drawing::IDeviceContext ^ dc, System::String ^ text, System::Drawing::Font ^ font, System::Drawing::Size proposedSize, System::Windows::Forms::TextFormatFlags flags);
public static System.Drawing.Size MeasureText(System.Drawing.IDeviceContext dc, string text, System.Drawing.Font font, System.Drawing.Size proposedSize, System.Windows.Forms.TextFormatFlags flags);
public static System.Drawing.Size MeasureText(System.Drawing.IDeviceContext dc, string? text, System.Drawing.Font? font, System.Drawing.Size proposedSize, System.Windows.Forms.TextFormatFlags flags);
static member MeasureText : System.Drawing.IDeviceContext * string * System.Drawing.Font * System.Drawing.Size * System.Windows.Forms.TextFormatFlags -> System.Drawing.Size
Public Shared Function MeasureText (dc As IDeviceContext, text As String, font As Font, proposedSize As Size, flags As TextFormatFlags) As Size

Parametreler

dc
IDeviceContext

Metnin ölçüldiği cihaz bağlamı.

text
String

Ölçülecek metin.

font
Font

Font Ölçülen metne uygulanacak olan.

proposedSize
Size

İlk Size sınırlayıcı dikdörtgenin değeri.

flags
TextFormatFlags

Ölçülen metne uygulanacak biçimlendirme yönergeleri.

Döndürülenler

Sizebelirtilen text ve biçimiyle çizilmiş piksel font cinsinden değeri.

Özel durumlar

dc, null'e eşittir.

Örnekler

Aşağıdaki örnekte, farklı yazı tipi stillerinde tek bir metin satırı çizmek için ve MeasureText yöntemlerinin nasıl kullanılacağı DrawText gösterilmektedir. Bu örneği çalıştırmak için aşağıdaki kodu bir Windows Formuna yapıştırın ve formun DrawALineOfText olay işleyicisinden Paint çağırın ve ePaintEventArgs olarak geçirin.

private static void DrawALineOfText(PaintEventArgs e)
{
    // Declare strings to render on the form.
    string[] stringsToPaint = { "Tail", "Spin", " Toys" };

    // Declare fonts for rendering the strings.
    Font[] fonts = { new Font("Arial", 14, FontStyle.Regular), 
        new Font("Arial", 14, FontStyle.Italic), 
        new Font("Arial", 14, FontStyle.Regular) };

    Point startPoint = new Point(10, 10);

    // Set TextFormatFlags to no padding so strings are drawn together.
    TextFormatFlags flags = TextFormatFlags.NoPadding;

    // Declare a proposed size with dimensions set to the maximum integer value.
    Size proposedSize = new Size(int.MaxValue, int.MaxValue);

    // Measure each string with its font and NoPadding value and 
    // draw it to the form.
    for (int i = 0; i < stringsToPaint.Length; i++)
    {
        Size size = TextRenderer.MeasureText(e.Graphics, stringsToPaint[i], 
            fonts[i], proposedSize, flags);
        Rectangle rect = new Rectangle(startPoint, size);
        TextRenderer.DrawText(e.Graphics, stringsToPaint[i], fonts[i],
            startPoint, Color.Black, flags);
        startPoint.X += size.Width;
    }
}
Private Sub DrawALineOfText(ByVal e As PaintEventArgs)
    ' Declare strings to render on the form.
    Dim stringsToPaint() As String = {"Tail", "Spin", " Toys"}

    ' Declare fonts for rendering the strings.
    Dim fonts() As Font = {New Font("Arial", 14, FontStyle.Regular), _
        New Font("Arial", 14, FontStyle.Italic), _
        New Font("Arial", 14, FontStyle.Regular)}

    Dim startPoint As New Point(10, 10)

    ' Set TextFormatFlags to no padding so strings are drawn together.
    Dim flags As TextFormatFlags = TextFormatFlags.NoPadding

    ' Declare a proposed size with dimensions set to the maximum integer value.
    Dim proposedSize As Size = New Size(Integer.MaxValue, Integer.MaxValue)

    ' Measure each string with its font and NoPadding value and draw it to the form.
    For i As Integer = 0 To stringsToPaint.Length - 1
        Dim size As Size = TextRenderer.MeasureText(e.Graphics, _
            stringsToPaint(i), fonts(i), proposedSize, flags)
        Dim rect As Rectangle = New Rectangle(startPoint, size)
        TextRenderer.DrawText(e.Graphics, stringsToPaint(i), fonts(i), _
            startPoint, Color.Black, flags)
        startPoint.X += size.Width
    Next
End Sub

Açıklamalar

yöntemi, MeasureText metin boyutunu belirlerken yükseklik ile genişlik ilişkisini belirtmek için ve proposedSize parametrelerini kullanırflags. Tek bir satırdaki metin ölçülürken, parametresi yükseklik boyutu değerinden proposedSizeSizebüyük olan bir Int32.MaxValue değerini temsil ederse, döndürülen Size değer metnin gerçek yüksekliğini yansıtacak şekilde ayarlanır.

Parametre alan DrawText aşırı yüklemelerden birini TextFormatFlags kullanarak metnin nasıl çizildiğini değiştirebilirsiniz. Örneğin, öğesinin TextRenderer varsayılan davranışı, taşma karakterlerini barındırmak için çizilen metnin sınırlayıcı dikdörtgenine doldurma eklemektir. Bu fazladan boşluklar olmadan bir metin satırı çizmeniz gerekiyorsa, örnekte gösterildiği gibi ve DrawText ve parametresini alan MeasureText ve sürümlerini SizeTextFormatFlags kullanın.

Şunlara uygulanır