StringFormatFlags Výčet

Definice

Určuje informace o zobrazení a rozložení pro textové řetězce.

Tento výčet podporuje bitové kombinace hodnot jeho členů.

public enum class StringFormatFlags
[System.Flags]
public enum StringFormatFlags
[<System.Flags>]
type StringFormatFlags = 
Public Enum StringFormatFlags
Dědičnost
StringFormatFlags
Atributy

Pole

DirectionRightToLeft 1

Text se zobrazuje zprava doleva.

DirectionVertical 2

Text je zarovnaný svisle.

DisplayFormatControl 32

Řídicí znaky, jako je značka zleva doprava, se ve výstupu zobrazí s reprezentativním glyfem.

FitBlackBox 4

Části znaků můžou přesahovat obdélník rozložení řetězce. Ve výchozím nastavení se znaky přemísťují, aby nedocházelo k převisu.

LineLimit 8192

Ve formátovacím obdélníku jsou rozložené jenom celé čáry. Ve výchozím nastavení bude rozložení pokračovat až do konce textu nebo dokud nebudou v důsledku oříznutí viditelné žádné další řádky ( podle toho, co nastane dříve). Všimněte si, že výchozí nastavení umožňuje, aby byl poslední řádek částečně zakrytý formátovacím obdélníkem, který není celý násobek výšky čáry. Pokud chcete zajistit, aby se zobrazily jenom celé čáry, zadejte tuto hodnotu a dávejte pozor, abyste zadali formátovací obdélník alespoň tak vysoký, jako je výška jednoho řádku.

MeasureTrailingSpaces 2048

Zahrnuje koncovou mezeru na konci každého řádku. Ve výchozím nastavení obdélník hranice vrácený metodou MeasureString vylučuje mezeru na konci každého řádku. Nastavte tento příznak tak, aby zahrnoval tento prostor do měření.

NoClip 16384

Převislé části piktogramů a nezabalený text, který se nachází mimo formátovací obdélník, se můžou zobrazit. Ve výchozím nastavení jsou všechny části textu a piktogramu, které přesahují formátovací obdélník, oříznuté.

NoFontFallback 1024

Použití náhradních písem pro znaky nepodporované v požadovaném písmu je zakázáno. Všechny chybějící znaky se zobrazí s chybějícími piktogramy písem, obvykle jde o otevřený čtverec.

NoWrap 4096

Obtékání textu mezi řádky při formátování uvnitř obdélníku je zakázáno. Tento příznak se implikuje, když je místo obdélníku předán bod nebo když má zadaný obdélník nulovou délku čáry.

Příklady

Následující příklad kódu ukazuje následující členy:

Tento příklad je navržený pro použití s model Windows Forms. Vložte kód do formuláře a při zpracování události formuláře Paint volejte metodu ShowLineAndAlignment , která se předává 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

Poznámky

StringFormatFlags se používá StringFormat třídou .

Poznámka

Pole FitBlackBox bylo nesprávně pojmenováno a jeho chování je podobné NoFitBlackBox poli v původní implementaci GDI+.

Platí pro