StringFormatFlags Wyliczenie

Definicja

Określa informacje o wyświetlaniu i układzie ciągów tekstowych.

To wyliczenie obsługuje bitową kombinację jego wartości składowych.

public enum class StringFormatFlags
[System.Flags]
public enum StringFormatFlags
[<System.Flags>]
type StringFormatFlags = 
Public Enum StringFormatFlags
Dziedziczenie
StringFormatFlags
Atrybuty

Pola

DirectionRightToLeft 1

Tekst jest wyświetlany od prawej do lewej.

DirectionVertical 2

Tekst jest wyrównany w pionie.

DisplayFormatControl 32

Znaki sterujące, takie jak znacznik od lewej do prawej, są wyświetlane w danych wyjściowych z reprezentatywnym glifem.

FitBlackBox 4

Części znaków mogą zwisać prostokąt układu ciągu. Domyślnie znaki są zmieniane, aby uniknąć zwisu.

LineLimit 8192

Tylko całe linie są rozmieszczone w prostokątze formatowania. Domyślnie układ będzie kontynuowany do końca tekstu lub dopóki nie więcej wierszy nie będzie widocznych w wyniku przycinania, w zależności od tego, co nastąpi wcześniej. Należy pamiętać, że ustawienia domyślne umożliwiają częściowe zasłonięcie ostatniego wiersza przez prostokąt formatowania, który nie jest całą wielokrotną wysokością linii. Aby upewnić się, że są widoczne tylko całe wiersze, określ tę wartość i zachowaj ostrożność, aby zapewnić prostokąt formatowania co najmniej tak wysoki, jak wysokość jednego wiersza.

MeasureTrailingSpaces 2048

Zawiera spację końcową na końcu każdego wiersza. Domyślnie prostokąt granic zwracany przez MeasureString metodę wyklucza spację na końcu każdego wiersza. Ustaw tę flagę, aby uwzględnić tę przestrzeń w pomiarze.

NoClip 16384

Zwisające części glifów i nieprzepisany tekst osiągający poza prostokątem formatowania mogą być wyświetlane. Domyślnie wszystkie części tekstowe i glyph docierające poza prostokąt formatowania są obcięte.

NoFontFallback 1024

Powrót do alternatywnych czcionek dla znaków nieobsługiwanych w żądanej czcionki jest wyłączony. Wszystkie brakujące znaki są wyświetlane z czcionkami brakującymi glif, zwykle otwartym kwadratem.

NoWrap 4096

Zawijanie tekstu między wierszami podczas formatowania w obrębie prostokąta jest wyłączone. Ta flaga jest dorozumiana, gdy punkt jest przekazywany zamiast prostokąta lub gdy określony prostokąt ma długość linii zerowej.

Przykłady

W poniższym przykładzie kodu przedstawiono następujące elementy członkowskie:

Ten przykład jest przeznaczony do użycia z Windows Forms. Wklej kod do formularza i wywołaj ShowLineAndAlignment metodę podczas obsługi zdarzenia formularza Paint , przekazując e jako PaintEventArgs.

private:
   void ShowLineAndAlignment( PaintEventArgs^ e )
   {
      // Construct a new Rectangle .
      Rectangle displayRectangle = Rectangle(Point(40,40),System::Drawing::Size( 80, 80 ));
      
      // Construct 2 new StringFormat objects
      StringFormat^ format1 = gcnew StringFormat( StringFormatFlags::NoClip );
      StringFormat^ format2 = gcnew StringFormat( format1 );
      
      // Set the LineAlignment and Alignment properties for
      // both StringFormat objects to different values.
      format1->LineAlignment = StringAlignment::Near;
      format1->Alignment = StringAlignment::Center;
      format2->LineAlignment = StringAlignment::Center;
      format2->Alignment = StringAlignment::Far;
      
      // Draw the bounding rectangle and a string for each
      // StringFormat object.
      e->Graphics->DrawRectangle( Pens::Black, displayRectangle );
      e->Graphics->DrawString( "Showing Format1", this->Font, Brushes::Red, displayRectangle, format1 );
      e->Graphics->DrawString( "Showing Format2", this->Font, Brushes::Red, displayRectangle, format2 );
   }
private void ShowLineAndAlignment(PaintEventArgs e)
{

    // Construct a new Rectangle .
    Rectangle  displayRectangle = 
        new Rectangle (new Point(40, 40), new Size (80, 80));

    // Construct 2 new StringFormat objects
    StringFormat format1 = new StringFormat(StringFormatFlags.NoClip);
    StringFormat format2 = new StringFormat(format1);

    // Set the LineAlignment and Alignment properties for
    // both StringFormat objects to different values.
    format1.LineAlignment = StringAlignment.Near;
    format1.Alignment = StringAlignment.Center;
    format2.LineAlignment = StringAlignment.Center;
    format2.Alignment = StringAlignment.Far;

    // Draw the bounding rectangle and a string for each
    // StringFormat object.
    e.Graphics.DrawRectangle(Pens.Black, displayRectangle);
    e.Graphics.DrawString("Showing Format1", this.Font, 
        Brushes.Red, (RectangleF)displayRectangle, format1);
    e.Graphics.DrawString("Showing Format2", this.Font, 
        Brushes.Red, (RectangleF)displayRectangle, format2);
}
Private Sub ShowLineAndAlignment(ByVal e As PaintEventArgs)

    ' Construct a new Rectangle.
    Dim displayRectangle _
        As New Rectangle(New Point(40, 40), New Size(80, 80))

    ' Construct two new StringFormat objects
    Dim format1 As New StringFormat(StringFormatFlags.NoClip)
    Dim format2 As New StringFormat(format1)

    ' Set the LineAlignment and Alignment properties for
    ' both StringFormat objects to different values.
    format1.LineAlignment = StringAlignment.Near
    format1.Alignment = StringAlignment.Center
    format2.LineAlignment = StringAlignment.Center
    format2.Alignment = StringAlignment.Far

    ' Draw the bounding rectangle and a string for each
    ' StringFormat object.
    e.Graphics.DrawRectangle(Pens.Black, displayRectangle)
    e.Graphics.DrawString("Showing Format1", Me.Font, Brushes.Red, _
        RectangleF.op_Implicit(displayRectangle), format1)
    e.Graphics.DrawString("Showing Format2", Me.Font, Brushes.Red, _
        RectangleF.op_Implicit(displayRectangle), format2)
End Sub

Uwagi

StringFormatFlags jest używany przez klasę StringFormat .

Uwaga

Pole FitBlackBox zostało błędnie nazwane, a jego zachowanie jest podobne do NoFitBlackBox pola w oryginalnej implementacji GDI+.

Dotyczy