Graphics.MeasureString Metoda

Definicja

Mierzy określony ciąg po narysowanym przy użyciu określonego Font.

Przeciążenia

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

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

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

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

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

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

MeasureString(String, Font, Int32, StringFormat)

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

MeasureString(String, Font, SizeF, StringFormat)

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

MeasureString(String, Font, PointF, StringFormat)

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

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

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

MeasureString(ReadOnlySpan<Char>, Font)

Mierzy określony ciąg po narysowanym przy użyciu określonego Font.

MeasureString(String, Font, Int32)

Mierzy określony ciąg po narysowanym przy użyciu określonego Font.

MeasureString(String, Font, SizeF)

Mierzy określony ciąg podczas rysowania z określonym Font w określonym obszarze układu.

MeasureString(ReadOnlySpan<Char>, Font, Int32)

Mierzy określony ciąg po narysowanym przy użyciu określonego Font.

MeasureString(ReadOnlySpan<Char>, Font, SizeF)

Mierzy określony ciąg podczas rysowania z określonym Font w określonym obszarze układu.

MeasureString(String, Font)

Mierzy określony ciąg po narysowanym przy użyciu określonego Font.

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

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

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

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

C#
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font, int width, System.Drawing.StringFormat? format);

Parametry

text
ReadOnlySpan<Char>

Ciąg do zmierzenia.

font
Font

Font definiujące format tekstowy ciągu.

width
Int32

Maksymalna szerokość ciągu.

format
StringFormat

StringFormat reprezentujące informacje o formatowaniu, takie jak odstępy między wierszami, dla ciągu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego w parametrze text zgodnie z parametrem font i parametrem stringFormat.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 8, 9
Windows Desktop 8, 9

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

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

C#
public System.Drawing.SizeF MeasureString (string? text, System.Drawing.Font font, System.Drawing.SizeF layoutArea, System.Drawing.StringFormat? stringFormat, out int charactersFitted, out int linesFilled);
C#
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, System.Drawing.SizeF layoutArea, System.Drawing.StringFormat stringFormat, out int charactersFitted, out int linesFilled);

Parametry

text
String

Ciąg do zmierzenia.

font
Font

Font definiujące format tekstowy ciągu.

layoutArea
SizeF

SizeF struktura określająca maksymalny obszar układu tekstu.

stringFormat
StringFormat

StringFormat reprezentujące informacje o formatowaniu, takie jak odstępy między wierszami, dla ciągu.

charactersFitted
Int32

Liczba znaków w ciągu.

linesFilled
Int32

Liczba wierszy tekstu w ciągu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar ciągu w jednostkach określonych przez właściwość PageUnit parametru text zgodnie z rysunkiem z parametrem font i parametrem stringFormat.

Wyjątki

font jest null.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z formularzami Systemu Windows i wymaga PaintEventArgse, który jest parametrem programu obsługi zdarzeń Paint. Kod wykonuje następujące akcje:

  • Tworzy ciąg do mierzenia i obiekt czcionki ustawiony na Arial (16 punktów)

  • Ustawia maksymalny rozmiar układu ciągu.

  • Tworzy obiekt formatu ciągu i ustawia jego flagi formatu na DirectionVertical.

  • Tworzy zmienne całkowite charactersFitted i linesFilled oraz obiekt rozmiaru, aby zmierzyć ciąg.

  • Mierzy rozmiar ciągu i określa liczbę znaków dopasowanych i wypełnionych wierszy przy użyciu ciągu, obiektu czcionki, maksymalnego rozmiaru układu i formatu ciągu.

  • Rysuje czerwony prostokąt przy użyciu mierzonego rozmiaru ciągu.

  • Rysuje ciąg w rysunkowym prostokątze.

  • Rysuje wartości liczby znaków dopasowanych i wypełnionych wierszy.

Wynik jest pionowym prostokątem otaczającym ciąg pionowy.

C#
private void MeasureStringSizeFFormatInts(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set maximum layout size.
    SizeF layoutSize = new SizeF(100.0F, 200.0F);

    // Set string format.
    StringFormat newStringFormat = new StringFormat();
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical;

    // Measure string.
    int charactersFitted;
    int linesFilled;
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, layoutSize, newStringFormat, out charactersFitted, out linesFilled);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0), newStringFormat);

    // Draw output parameters to screen.
    string outString = "chars " + charactersFitted + ", lines " + linesFilled;
    e.Graphics.DrawString(outString, stringFont, Brushes.Black, new PointF(100, 0));
}

Uwagi

Metoda MeasureString jest przeznaczona do użycia z poszczególnymi ciągami i zawiera niewielką ilość dodatkowego miejsca przed i po ciągu, aby umożliwić zwisanie glifów. Ponadto metoda DrawString dostosowuje punkty glyph w celu zoptymalizowania jakości wyświetlania i może wyświetlać ciąg węższy niż raportowany przez MeasureString. Aby uzyskać metryki odpowiednie dla sąsiednich ciągów w układzie (na przykład podczas implementowania sformatowanego tekstu), użyj metody MeasureCharacterRanges lub jednej z metod MeasureString, która przyjmuje StringFormat i przekazuje GenericTypographic. Upewnij się również, że TextRenderingHint dla Graphics jest AntiAlias.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

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

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

C#
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font, System.Drawing.SizeF layoutArea, System.Drawing.StringFormat? stringFormat, out int charactersFitted, out int linesFilled);

Parametry

text
ReadOnlySpan<Char>

Ciąg do zmierzenia.

font
Font

Font definiujące format tekstowy ciągu.

layoutArea
SizeF

SizeF struktura określająca maksymalny obszar układu tekstu.

stringFormat
StringFormat

StringFormat reprezentujące informacje o formatowaniu, takie jak odstępy między wierszami, dla ciągu.

charactersFitted
Int32

Liczba znaków w ciągu.

linesFilled
Int32

Liczba wierszy tekstu w ciągu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar ciągu w jednostkach określonych przez właściwość PageUnit parametru text zgodnie z rysunkiem z parametrem font i parametrem stringFormat.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 8, 9
Windows Desktop 8, 9

MeasureString(String, Font, Int32, StringFormat)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

C#
public System.Drawing.SizeF MeasureString (string? text, System.Drawing.Font font, int width, System.Drawing.StringFormat? format);
C#
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, int width, System.Drawing.StringFormat format);

Parametry

text
String

Ciąg do zmierzenia.

font
Font

Font definiujące format tekstowy ciągu.

width
Int32

Maksymalna szerokość ciągu.

format
StringFormat

StringFormat reprezentujące informacje o formatowaniu, takie jak odstępy między wierszami, dla ciągu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego w parametrze text zgodnie z parametrem font i parametrem stringFormat.

Wyjątki

font jest null.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z formularzami Systemu Windows i wymaga PaintEventArgse, który jest parametrem programu obsługi zdarzeń Paint. Kod wykonuje następujące akcje:

  • Tworzy ciąg do mierzenia i obiekt czcionki ustawić go na Arial (16 punktów).

  • Ustawia maksymalną szerokość ciągu.

  • Tworzy obiekt formatu ciągu i ustawia jego flagi formatu na DirectionVertical.

  • Tworzy obiekt rozmiaru do mierzenia ciągu.

  • Mierzy rozmiar ciągu przy użyciu ciągu, obiektu czcionki, maksymalnej szerokości i formatu ciągu.

  • Rysuje czerwony prostokąt przy użyciu mierzonego rozmiaru ciągu.

  • Rysuje ciąg w rysunkowym prostokątze.

Wynik jest pionowym prostokątem otaczającym ciąg pionowy.

C#
private void MeasureStringWidthFormat(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set maximum width of string.
    int stringWidth = 100;

    // Set string format.
    StringFormat newStringFormat = new StringFormat();
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical;

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, stringWidth, newStringFormat);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0), newStringFormat);
}

Uwagi

Metoda MeasureString jest przeznaczona do użycia z poszczególnymi ciągami i zawiera niewielką ilość dodatkowego miejsca przed i po ciągu, aby umożliwić zwisanie glifów. Ponadto metoda DrawString dostosowuje punkty glyph w celu zoptymalizowania jakości wyświetlania i może wyświetlać ciąg węższy niż raportowany przez MeasureString. Aby uzyskać metryki odpowiednie dla sąsiednich ciągów w układzie (na przykład podczas implementowania sformatowanego tekstu), użyj metody MeasureCharacterRanges lub jednej z metod MeasureString, które pobierają StringFormati przekazują GenericTypographic. Upewnij się również, że TextRenderingHint dla Graphics jest AntiAlias.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

MeasureString(String, Font, SizeF, StringFormat)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

C#
public System.Drawing.SizeF MeasureString (string? text, System.Drawing.Font font, System.Drawing.SizeF layoutArea, System.Drawing.StringFormat? stringFormat);
C#
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, System.Drawing.SizeF layoutArea, System.Drawing.StringFormat stringFormat);

Parametry

text
String

Ciąg do zmierzenia.

font
Font

Font definiuje format tekstowy ciągu.

layoutArea
SizeF

SizeF struktura określająca maksymalny obszar układu tekstu.

stringFormat
StringFormat

StringFormat reprezentujące informacje o formatowaniu, takie jak odstępy między wierszami, dla ciągu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego w parametrze text zgodnie z parametrem font i parametrem stringFormat.

Wyjątki

font jest null.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z formularzami Systemu Windows i wymaga PaintEventArgse, który jest parametrem programu obsługi zdarzeń Paint. Kod wykonuje następujące akcje:

  • Tworzy ciąg do mierzenia i obiekt czcionki ustawiony na Arial (16 punktów).

  • Ustawia maksymalny rozmiar układu ciągu, tworząc obiekt size do mierzenia ciągu.

  • Tworzy obiekt formatu ciągu i ustawia jego flagi formatu na DirectionVertical.

  • Mierzy rozmiar ciągu przy użyciu ciągu, obiektu czcionki, maksymalnego rozmiaru układu i formatu ciągu.

  • Rysuje czerwony prostokąt przy użyciu mierzonego rozmiaru ciągu.

  • Rysuje ciąg w rysunkowym prostokątze.

Wynik jest pionowym prostokątem otaczającym ciąg pionowy.

C#
private void MeasureStringSizeFFormat(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set maximum layout size.
    SizeF layoutSize = new SizeF(100.0F, 200.0F);

    // Set string format.
    StringFormat newStringFormat = new StringFormat();
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical;

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, layoutSize, newStringFormat);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0), newStringFormat);
}

Uwagi

Metoda MeasureString jest przeznaczona do użycia z poszczególnymi ciągami i zawiera niewielką ilość dodatkowego miejsca przed i po ciągu, aby umożliwić zwisanie glifów. Ponadto metoda DrawString dostosowuje punkty glyph w celu zoptymalizowania jakości wyświetlania i może wyświetlać ciąg węższy niż raportowany przez MeasureString. Aby uzyskać metryki odpowiednie dla sąsiednich ciągów w układzie (na przykład podczas implementowania sformatowanego tekstu), użyj metody MeasureCharacterRanges lub jednej z metod MeasureString, które pobierają StringFormati przekazują GenericTypographic. Upewnij się również, że TextRenderingHint dla Graphics jest AntiAlias.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

MeasureString(String, Font, PointF, StringFormat)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

C#
public System.Drawing.SizeF MeasureString (string? text, System.Drawing.Font font, System.Drawing.PointF origin, System.Drawing.StringFormat? stringFormat);
C#
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, System.Drawing.PointF origin, System.Drawing.StringFormat stringFormat);

Parametry

text
String

Ciąg do zmierzenia.

font
Font

Font definiuje format tekstowy ciągu.

origin
PointF

PointF struktura reprezentująca lewy górny róg ciągu.

stringFormat
StringFormat

StringFormat reprezentujące informacje o formatowaniu, takie jak odstępy między wierszami, dla ciągu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego przez parametr text zgodnie z rysunkiem z parametrem font i parametrem stringFormat.

Wyjątki

font jest null.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z formularzami Systemu Windows i wymaga PaintEventArgse, który jest parametrem programu obsługi zdarzeń Paint. Kod wykonuje następujące akcje:

  • Tworzy ciąg do mierzenia i obiekt czcionki ustawiony na Arial (16 punktów)

  • Tworzy punkt w celu zlokalizowania lewego górnego rogu ciągu.

  • Tworzy obiekt formatu ciągu i ustawia jego flagi formatu na DirectionVertical.

  • Tworzy obiekt rozmiaru do mierzenia ciągu.

  • Mierzy rozmiar ciągu przy użyciu ciągu, obiektu czcionki, punktu lokalizowania i formatu ciągu.

  • Rysuje czerwony prostokąt przy użyciu punktu lokalizowania i mierzonego rozmiaru ciągu.

  • Rysuje ciąg w rysunkowym prostokątze.

Wynik jest pionowym prostokątem otaczającym ciąg pionowy.

C#
private void MeasureStringPointFFormat(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set point for upper-left corner of string.
    float x = 50.0F;
    float y = 50.0F;
    PointF ulCorner = new PointF(x, y);

    // Set string format.
    StringFormat newStringFormat = new StringFormat();
    newStringFormat.FormatFlags = StringFormatFlags.DirectionVertical;

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, ulCorner, newStringFormat);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), x, y, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, ulCorner, newStringFormat);
}

Uwagi

Metoda MeasureString jest przeznaczona do użycia z poszczególnymi ciągami i zawiera niewielką ilość dodatkowego miejsca przed i po ciągu, aby umożliwić zwisanie glifów. Ponadto metoda DrawString dostosowuje punkty glyph w celu zoptymalizowania jakości wyświetlania i może wyświetlać ciąg węższy niż raportowany przez MeasureString. Aby uzyskać metryki odpowiednie dla sąsiednich ciągów w układzie (na przykład podczas implementowania sformatowanego tekstu), użyj metody MeasureCharacterRanges lub jednej z metod MeasureString, które pobierają StringFormati przekazują GenericTypographic. Upewnij się również, że TextRenderingHint dla Graphics jest AntiAlias.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

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

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

C#
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font, System.Drawing.SizeF layoutArea, System.Drawing.StringFormat? stringFormat);

Parametry

text
ReadOnlySpan<Char>

Ciąg do zmierzenia.

font
Font

Font definiuje format tekstowy ciągu.

layoutArea
SizeF

SizeF struktura określająca maksymalny obszar układu tekstu.

stringFormat
StringFormat

StringFormat reprezentujące informacje o formatowaniu, takie jak odstępy między wierszami, dla ciągu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego w parametrze text zgodnie z parametrem font i parametrem stringFormat.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 8, 9
Windows Desktop 8, 9

MeasureString(ReadOnlySpan<Char>, Font)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg po narysowanym przy użyciu określonego Font.

C#
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font);

Parametry

text
ReadOnlySpan<Char>

Ciąg do zmierzenia.

font
Font

Font definiujące format tekstowy ciągu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego przez parametr text zgodnie z font parametrem.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 8, 9
Windows Desktop 8, 9

MeasureString(String, Font, Int32)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg po narysowanym przy użyciu określonego Font.

C#
public System.Drawing.SizeF MeasureString (string? text, System.Drawing.Font font, int width);
C#
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, int width);

Parametry

text
String

Ciąg do zmierzenia.

font
Font

Font, który definiuje format ciągu.

width
Int32

Maksymalna szerokość ciągu w pikselach.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego w parametrze text zgodnie z font parametrem.

Wyjątki

font jest null.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z formularzami Systemu Windows i wymaga PaintEventArgse, który jest parametrem programu obsługi zdarzeń Paint. Kod wykonuje następujące akcje:

  • Tworzy ciąg do mierzenia i obiekt czcionki ustawiony na Arial (16 punktów).

  • Ustawia maksymalną szerokość ciągu.

  • Tworzy obiekt rozmiaru i używa go, obiektu czcionki i maksymalnej szerokości ciągu do mierzenia rozmiaru ciągu.

  • Rysuje czerwony prostokąt przy użyciu mierzonego rozmiaru ciągu.

  • Rysuje ciąg w rysunkowym prostokątze.

C#
private void MeasureStringWidth(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set maximum width of string.
    int stringWidth = 200;

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, stringWidth);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0));
}

Uwagi

Parametr width określa maksymalną wartość składnika szerokości zwróconej struktury SizeF (Width). Jeśli parametr width jest mniejszy niż rzeczywista szerokość ciągu, zwracany składnik Width jest obcięty z wartością reprezentującą maksymalną liczbę znaków, które mieszczą się w określonej szerokości. Aby pomieścić cały ciąg, zwrócony składnik Height jest dostosowywany do wartości, która umożliwia wyświetlanie ciągu z zawijaniem znaków.

Metoda MeasureString jest przeznaczona do użycia z poszczególnymi ciągami i zawiera niewielką ilość dodatkowego miejsca przed i po ciągu, aby umożliwić zwisanie glifów. Ponadto metoda DrawString dostosowuje punkty glyph w celu zoptymalizowania jakości wyświetlania i może wyświetlać ciąg węższy niż raportowany przez MeasureString. Aby uzyskać metryki odpowiednie dla sąsiednich ciągów w układzie (na przykład podczas implementowania sformatowanego tekstu), użyj metody MeasureCharacterRanges lub jednej z metod MeasureString, które pobierają StringFormati przekazują GenericTypographic. Upewnij się również, że TextRenderingHint dla Graphics jest AntiAlias.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

MeasureString(String, Font, SizeF)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg podczas rysowania z określonym Font w określonym obszarze układu.

C#
public System.Drawing.SizeF MeasureString (string? text, System.Drawing.Font font, System.Drawing.SizeF layoutArea);
C#
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font, System.Drawing.SizeF layoutArea);

Parametry

text
String

Ciąg do zmierzenia.

font
Font

Font definiuje format tekstowy ciągu.

layoutArea
SizeF

SizeF struktura określająca maksymalny obszar układu tekstu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego przez parametr text zgodnie z font parametrem.

Wyjątki

font jest null.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z formularzami Systemu Windows i wymaga PaintEventArgse, który jest parametrem programu obsługi zdarzeń Paint. Kod wykonuje następujące akcje:

  • Tworzy ciąg do mierzenia i obiekt czcionki ustawiony na Arial (16 punktów).

  • Ustawia maksymalny rozmiar układu ciągu.

  • Tworzy obiekt rozmiaru i używa go, obiektu czcionki i maksymalnego rozmiaru układu do mierzenia rozmiaru ciągu.

  • Rysuje czerwony prostokąt przy użyciu mierzonego rozmiaru ciągu.

  • Rysuje ciąg w rysunkowym prostokątze.

C#
private void MeasureStringSizeF(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Set maximum layout size.
    SizeF layoutSize = new SizeF(200.0F, 50.0F);

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont, layoutSize);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0));
}

Uwagi

Metoda MeasureString jest przeznaczona do użycia z poszczególnymi ciągami i zawiera niewielką ilość dodatkowego miejsca przed i po ciągu, aby umożliwić zwisanie glifów. Ponadto metoda DrawString dostosowuje punkty glyph w celu zoptymalizowania jakości wyświetlania i może wyświetlać ciąg węższy niż raportowany przez MeasureString. Aby uzyskać metryki odpowiednie dla sąsiednich ciągów w układzie (na przykład podczas implementowania sformatowanego tekstu), użyj metody MeasureCharacterRanges lub jednej z metod MeasureString, które pobierają StringFormati przekazują GenericTypographic. Upewnij się również, że TextRenderingHint dla Graphics jest AntiAlias.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

MeasureString(ReadOnlySpan<Char>, Font, Int32)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg po narysowanym przy użyciu określonego Font.

C#
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font, int width);

Parametry

text
ReadOnlySpan<Char>

Ciąg do zmierzenia.

font
Font

Font, który definiuje format ciągu.

width
Int32

Maksymalna szerokość ciągu w pikselach.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego w parametrze text zgodnie z font parametrem.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 8, 9
Windows Desktop 8, 9

MeasureString(ReadOnlySpan<Char>, Font, SizeF)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg podczas rysowania z określonym Font w określonym obszarze układu.

C#
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font, System.Drawing.SizeF layoutArea);

Parametry

text
ReadOnlySpan<Char>

Ciąg do zmierzenia.

font
Font

Font definiuje format tekstowy ciągu.

layoutArea
SizeF

SizeF struktura określająca maksymalny obszar układu tekstu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego przez parametr text zgodnie z font parametrem.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 8, 9
Windows Desktop 8, 9

MeasureString(String, Font)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg po narysowanym przy użyciu określonego Font.

C#
public System.Drawing.SizeF MeasureString (string? text, System.Drawing.Font font);
C#
public System.Drawing.SizeF MeasureString (string text, System.Drawing.Font font);

Parametry

text
String

Ciąg do zmierzenia.

font
Font

Font definiujące format tekstowy ciągu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego przez parametr text zgodnie z font parametrem.

Wyjątki

font jest null.

font jest null.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z formularzami Systemu Windows i wymaga PaintEventArgse, który jest parametrem programu obsługi zdarzeń Paint. Kod wykonuje następujące akcje:

  • Tworzy ciąg do mierzenia.

  • Tworzy obiekt czcionki i ustawia go na Arial (16 punktów).

  • Tworzy obiekt rozmiaru i używa go oraz obiektu czcionki do mierzenia rozmiaru ciągu.

  • Rysuje czerwony prostokąt przy użyciu mierzonego rozmiaru ciągu.

  • Rysuje ciąg w rysunkowym prostokątze.

C#
private void MeasureStringMin(PaintEventArgs e)
{

    // Set up string.
    string measureString = "Measure String";
    Font stringFont = new Font("Arial", 16);

    // Measure string.
    SizeF stringSize = new SizeF();
    stringSize = e.Graphics.MeasureString(measureString, stringFont);

    // Draw rectangle representing size of string.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0.0F, 0.0F, stringSize.Width, stringSize.Height);

    // Draw string to screen.
    e.Graphics.DrawString(measureString, stringFont, Brushes.Black, new PointF(0, 0));
}

Uwagi

Metoda MeasureString jest przeznaczona do użycia z poszczególnymi ciągami i zawiera niewielką ilość dodatkowego miejsca przed i po ciągu, aby umożliwić zwisanie glifów. Ponadto metoda DrawString dostosowuje punkty glyph w celu zoptymalizowania jakości wyświetlania i może wyświetlać ciąg węższy niż raportowany przez MeasureString. Aby uzyskać metryki odpowiednie dla sąsiednich ciągów w układzie (na przykład podczas implementowania sformatowanego tekstu), użyj metody MeasureCharacterRanges lub jednej z metod MeasureString, które pobierają StringFormati przekazują GenericTypographic. Upewnij się również, że TextRenderingHint dla Graphics jest AntiAlias.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

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

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Mierzy określony ciąg podczas rysowania z określonym Font i sformatowany przy użyciu określonego StringFormat.

C#
public System.Drawing.SizeF MeasureString (ReadOnlySpan<char> text, System.Drawing.Font font, System.Drawing.PointF origin, System.Drawing.StringFormat? stringFormat);

Parametry

text
ReadOnlySpan<Char>

Ciąg do zmierzenia.

font
Font

Font definiuje format tekstowy ciągu.

origin
PointF

PointF struktura reprezentująca lewy górny róg ciągu.

stringFormat
StringFormat

StringFormat reprezentujące informacje o formatowaniu, takie jak odstępy między wierszami, dla ciągu.

Zwraca

Ta metoda zwraca strukturę SizeF reprezentującą rozmiar w jednostkach określonych przez właściwość PageUnit ciągu określonego przez parametr text zgodnie z rysunkiem z parametrem font i parametrem stringFormat.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 8, 9
Windows Desktop 8, 9