TextRenderer.MeasureText Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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.
- 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.
- 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
ModifyString ayarlanır.
Ş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
Metnin ölçüldiği cihaz bağlamı.
- text
- String
Ölçülecek metin.
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
Metnin ölçüldiği cihaz bağlamı.
- text
- ReadOnlySpan<Char>
Ölçülecek metin.
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.
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
Metnin ölçüldiği cihaz bağlamı.
- text
- ReadOnlySpan<Char>
Ölçülecek metin.
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
Metnin ölçüldiği cihaz bağlamı.
- text
- String
Ölçülecek metin.
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.
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.
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
Metnin ölçüldiği cihaz bağlamı.
- text
- ReadOnlySpan<Char>
Ölçülecek metin.
- 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.
ModifyString ayarlanır.
Ş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.
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
Metnin ölçüldiği cihaz bağlamı.
- text
- String
Ölçülecek metin.
- 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.