TextRenderer.MeasureText Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Misura il testo specificato quando viene disegnato con il tipo di carattere specificato.
Overload
| Nome | Descrizione |
|---|---|
| MeasureText(String, Font, Size, TextFormatFlags) |
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere e le istruzioni di formattazione specificati, utilizzando le dimensioni specificate per creare il rettangolo di delimitazione iniziale per il testo. |
| MeasureText(ReadOnlySpan<Char>, Font, Size, TextFormatFlags) |
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere e le istruzioni di formattazione specificati, utilizzando le dimensioni specificate per creare il rettangolo di delimitazione iniziale per il testo. |
| MeasureText(IDeviceContext, String, Font, Size) |
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato nel contesto di dispositivo specificato, utilizzando le dimensioni specificate per creare un rettangolo di delimitazione iniziale per il testo. |
| MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font, Size) |
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato nel contesto di dispositivo specificato, utilizzando le dimensioni specificate per creare un rettangolo di delimitazione iniziale per il testo. |
| MeasureText(String, Font, Size) |
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato, utilizzando le dimensioni specificate per creare un rettangolo di delimitazione iniziale. |
| MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font) |
Fornisce le dimensioni, in pixel, del testo specificato disegnato con il tipo di carattere specificato nel contesto di dispositivo specificato. |
| MeasureText(IDeviceContext, String, Font) |
Fornisce le dimensioni, in pixel, del testo specificato disegnato con il tipo di carattere specificato nel contesto di dispositivo specificato. |
| MeasureText(String, Font) |
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato. |
| MeasureText(ReadOnlySpan<Char>, Font) |
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato. |
| MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font, Size, TextFormatFlags) |
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il contesto di dispositivo, il tipo di carattere e le istruzioni di formattazione specificati, utilizzando le dimensioni specificate per creare il rettangolo di delimitazione iniziale per il testo. |
| MeasureText(ReadOnlySpan<Char>, Font, Size) |
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato, utilizzando le dimensioni specificate per creare un rettangolo di delimitazione iniziale. |
| MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags) |
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il contesto di dispositivo, il tipo di carattere e le istruzioni di formattazione specificati, utilizzando le dimensioni specificate per creare il rettangolo di delimitazione iniziale per il testo. |
MeasureText(String, Font, Size, TextFormatFlags)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere e le istruzioni di formattazione specificati, utilizzando le dimensioni specificate per creare il rettangolo di delimitazione iniziale per il testo.
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
Parametri
- text
- String
Testo da misurare.
- flags
- TextFormatFlags
Istruzioni di formattazione da applicare al testo misurato.
Valori restituiti
, Sizein pixel, disegnata text con il formato e specificato font .
Esempio
Nell'esempio di codice seguente viene illustrato come usare uno dei MeasureText metodi . Per eseguire questo esempio, incollare il codice in un modulo di Windows e chiamare
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
Commenti
MeasureText usa i proposedSize parametri e flags per indicare la relazione di altezza a larghezza quando si determina la dimensione del testo. Quando si misura il testo su una singola riga, se il proposedSize parametro rappresenta un Size oggetto con una dimensione di altezza maggiore di Int32.MaxValue, l'oggetto restituito Size verrà regolato in modo da riflettere l'altezza effettiva del testo.
È possibile modificare la modalità di disegno del testo usando uno degli DrawText overload che accettano un TextFormatFlags parametro. Ad esempio, il comportamento predefinito di consiste nell'aggiungere TextRenderer spaziatura interna al rettangolo di delimitazione del testo disegnato per contenere glifi sporgenti. Se è necessario disegnare una riga di testo senza questi spazi aggiuntivi, è consigliabile usare le versioni di DrawText e che accettano un MeasureText parametro e SizeTextFormatFlags . Per un esempio, vedere MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags).
Note
Questo overload di MeasureText(String, Font, Size, TextFormatFlags) ignorerà un TextFormatFlags valore di NoPadding o LeftAndRightPadding. Se si specifica un valore di riempimento diverso da quello predefinito, è consigliabile utilizzare l'overload di MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags) che accetta un IDeviceContext oggetto .
Si applica a
MeasureText(ReadOnlySpan<Char>, Font, Size, TextFormatFlags)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere e le istruzioni di formattazione specificati, utilizzando le dimensioni specificate per creare il rettangolo di delimitazione iniziale per il testo.
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
Parametri
- text
- ReadOnlySpan<Char>
Testo da misurare.
- flags
- TextFormatFlags
Istruzioni di formattazione da applicare al testo misurato.
Valori restituiti
, Sizein pixel, disegnata text con il formato e specificato font .
Eccezioni
ModifyString è impostato.
Si applica a
MeasureText(IDeviceContext, String, Font, Size)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato nel contesto di dispositivo specificato, utilizzando le dimensioni specificate per creare un rettangolo di delimitazione iniziale per il testo.
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
Parametri
Contesto del dispositivo in cui misurare il testo.
- text
- String
Testo da misurare.
Valori restituiti
Oggetto Size, in pixel, disegnata text con l'oggetto specificato font.
Eccezioni
dc è null.
Esempio
Nell'esempio di codice seguente viene illustrato come usare uno dei MeasureText metodi . Per eseguire questo esempio, incollare il codice in un modulo di Windows e chiamare
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
Commenti
Il MeasureText metodo usa il proposedSize parametro per indicare la relazione di altezza a larghezza quando si determina la dimensione del testo. Quando si misura il testo su una singola riga, se il proposedSize parametro rappresenta un Size oggetto con una dimensione di altezza maggiore di Int32.MaxValue, l'oggetto restituito Size verrà regolato in modo da riflettere l'altezza effettiva del testo.
Si applica a
MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font, Size)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato nel contesto di dispositivo specificato, utilizzando le dimensioni specificate per creare un rettangolo di delimitazione iniziale per il testo.
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
Parametri
Contesto del dispositivo in cui misurare il testo.
- text
- ReadOnlySpan<Char>
Testo da misurare.
Valori restituiti
Oggetto Size, in pixel, disegnata text con l'oggetto specificato font.
Eccezioni
dc è null.
Si applica a
MeasureText(String, Font, Size)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato, utilizzando le dimensioni specificate per creare un rettangolo di delimitazione iniziale.
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
Parametri
- text
- String
Testo da misurare.
Valori restituiti
Oggetto Size, in pixel, disegnata text con l'oggetto specificato font.
Esempio
Nell'esempio di codice seguente viene illustrato come usare uno dei MeasureText metodi . Per eseguire questo esempio, incollare il codice in un modulo di Windows e chiamare
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
Commenti
Il MeasureText metodo usa il proposedSize parametro per indicare la relazione di altezza a larghezza quando si determina la dimensione del testo. Quando si misura il testo su una singola riga, se il proposedSize parametro rappresenta un Size oggetto con una dimensione di altezza maggiore di Int32.MaxValue, l'oggetto restituito Size verrà regolato in modo da riflettere l'altezza effettiva del testo.
Si applica a
MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato disegnato con il tipo di carattere specificato nel contesto di dispositivo specificato.
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
Parametri
Contesto del dispositivo in cui misurare il testo.
- text
- ReadOnlySpan<Char>
Testo da misurare.
Valori restituiti
, Sizein pixel, disegnata text con l'oggetto specificato font nel contesto di dispositivo specificato.
Eccezioni
dc è null.
Si applica a
MeasureText(IDeviceContext, String, Font)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato disegnato con il tipo di carattere specificato nel contesto di dispositivo specificato.
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
Parametri
Contesto del dispositivo in cui misurare il testo.
- text
- String
Testo da misurare.
Valori restituiti
, Sizein pixel, disegnata text in una singola riga con l'oggetto specificato font nel contesto di dispositivo specificato.
Esempio
Nell'esempio di codice seguente viene illustrato come usare uno dei MeasureText metodi . Per eseguire questo esempio, incollare il codice in un modulo di Windows e chiamare
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
Commenti
Il MeasureText metodo richiede che il testo venga disegnato su una singola riga.
Si applica a
MeasureText(String, Font)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato.
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
Parametri
- text
- String
Testo da misurare.
Valori restituiti
, Sizein pixel, disegnata text su una singola riga con l'oggetto specificato font. È possibile modificare la modalità di disegno del testo usando uno degli DrawText(IDeviceContext, String, Font, Rectangle, Color, TextFormatFlags) overload che accettano un TextFormatFlags parametro. Ad esempio, il comportamento predefinito di consiste nell'aggiungere TextRenderer spaziatura interna al rettangolo di delimitazione del testo disegnato per contenere glifi sporgenti. Se è necessario disegnare una riga di testo senza questi spazi aggiuntivi, è consigliabile usare le versioni di DrawText(IDeviceContext, String, Font, Point, Color) e che accettano un MeasureText(IDeviceContext, String, Font) parametro e SizeTextFormatFlags . Per un esempio, vedere MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags).
Esempio
Nell'esempio di codice seguente viene illustrato come usare il MeasureText metodo . Per eseguire questo esempio, incollare il codice in un modulo di Windows e chiamare
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
Commenti
Il MeasureText metodo richiede che il testo venga disegnato su una singola riga.
Si applica a
MeasureText(ReadOnlySpan<Char>, Font)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato.
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
Parametri
- text
- ReadOnlySpan<Char>
Testo da misurare.
Valori restituiti
Oggetto Size, in pixel, di testo disegnato su una singola riga con il tipo di carattere specificato. È possibile modificare la modalità di disegno del testo usando uno degli DrawText(IDeviceContext, ReadOnlySpan<Char>, Font, Rectangle, Color, TextFormatFlags) overload che accettano un TextFormatFlags parametro. Ad esempio, il comportamento predefinito di consiste nell'aggiungere TextRenderer spaziatura interna al rettangolo di delimitazione del testo disegnato per contenere glifi sporgenti. Se è necessario disegnare una riga di testo senza questi spazi aggiuntivi, è consigliabile usare le versioni di DrawText(IDeviceContext, ReadOnlySpan<Char>, Font, Point, Color) e MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font) che accettano un parametro e TextFormatFlags dimensioni. Per un esempio, vedere MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags).
Si applica a
MeasureText(IDeviceContext, ReadOnlySpan<Char>, Font, Size, TextFormatFlags)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il contesto di dispositivo, il tipo di carattere e le istruzioni di formattazione specificati, utilizzando le dimensioni specificate per creare il rettangolo di delimitazione iniziale per il testo.
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
Parametri
Contesto del dispositivo in cui misurare il testo.
- text
- ReadOnlySpan<Char>
Testo da misurare.
- flags
- TextFormatFlags
Istruzioni di formattazione da applicare al testo misurato.
Valori restituiti
, Sizein pixel, disegnata text con il formato e specificato font .
Eccezioni
dc è null.
ModifyString è impostato.
Si applica a
MeasureText(ReadOnlySpan<Char>, Font, Size)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il tipo di carattere specificato, utilizzando le dimensioni specificate per creare un rettangolo di delimitazione iniziale.
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
Parametri
- text
- ReadOnlySpan<Char>
Testo da misurare.
Valori restituiti
Oggetto Size, in pixel, disegnata text con l'oggetto specificato font.
Si applica a
MeasureText(IDeviceContext, String, Font, Size, TextFormatFlags)
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
- Origine:
- TextRenderer.cs
Fornisce le dimensioni, in pixel, del testo specificato quando viene disegnato con il contesto di dispositivo, il tipo di carattere e le istruzioni di formattazione specificati, utilizzando le dimensioni specificate per creare il rettangolo di delimitazione iniziale per il testo.
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
Parametri
Contesto del dispositivo in cui misurare il testo.
- text
- String
Testo da misurare.
- flags
- TextFormatFlags
Istruzioni di formattazione da applicare al testo misurato.
Valori restituiti
, Sizein pixel, disegnata text con il formato e specificato font .
Eccezioni
dc è null.
Esempio
Nell'esempio seguente viene illustrato come utilizzare i MeasureText metodi e DrawText per disegnare una singola riga di testo in stili di carattere diversi. Per eseguire questo esempio, incollare il codice seguente in un modulo di Windows e chiamare
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
Commenti
Il MeasureText metodo usa i proposedSize parametri e flags per indicare la relazione di altezza a larghezza quando si determina la dimensione del testo. Quando si misura il testo su una singola riga, se il proposedSize parametro rappresenta un Size oggetto con una dimensione di altezza maggiore di Int32.MaxValue, l'oggetto restituito Size verrà regolato in modo da riflettere l'altezza effettiva del testo.
È possibile modificare la modalità di disegno del testo usando uno degli DrawText overload che accettano un TextFormatFlags parametro. Ad esempio, il comportamento predefinito di consiste nell'aggiungere TextRenderer spaziatura interna al rettangolo di delimitazione del testo disegnato per contenere glifi sporgenti. Se è necessario disegnare una riga di testo senza questi spazi aggiuntivi, usare le versioni di DrawText e che accettano un MeasureText parametro e SizeTextFormatFlags , come illustrato nell'esempio.