StringFormatFlags Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt die Anzeige- und Layoutinformationen für Textzeichenfolgen an.
Diese Enumeration unterstützt eine bitweise Kombination ihrer Memberwerte.
public enum class StringFormatFlags
[System.Flags]
public enum StringFormatFlags
[<System.Flags>]
type StringFormatFlags =
Public Enum StringFormatFlags
- Vererbung
- Attribute
Felder
DirectionRightToLeft | 1 | Der Text wird von rechts nach links angezeigt. |
DirectionVertical | 2 | Der Text ist vertikal ausgerichtet. |
DisplayFormatControl | 32 | Steuerzeichen, z. B. die Markierung für die Leserichtung von links nach rechts, werden in der Ausgabe durch ein Symbol angezeigt. |
FitBlackBox | 4 | Teile von Zeichen dürfen aus dem Layoutrechteck der Zeichenfolge herausragen. Standardmäßig werden Zeichen neu angeordnet, um einen Überhang zu vermeiden. |
LineLimit | 8192 | Im Formatierungsrechteck erfolgt ein Layout ausschließlich für vollständige Linien. Je nachdem, welches Ereignis zuerst eintritt, wird in der Standardeinstellung das Layout beendet, wenn das Ende des Textes erreicht ist oder als Ergebnis des Abschneidens keine Linien mehr sichtbar sind. Beachten Sie, dass in den Standardeinstellungen die letzte Zeile teilweise durch ein Formatierungsrechteck verborgen sein kann, das kein ganzzahliges Vielfaches der Zeilenhöhe ist. Um sicherzustellen, dass ausschließlich vollständige Zeilen angezeigt werden, geben Sie diesen Wert an, und stellen Sie ein Formatierungsrechteck bereit, das mindestens so hoch wie die Zeilenhöhe ist. |
MeasureTrailingSpaces | 2048 | Schließt das nachgestellte Leerzeichen am Ende jeder Zeile ein. In der Standardeinstellung schließt das von der MeasureString-Methode zurückgegebene Begrenzungsrechteck Leerzeichen am Ende jeder Zeile aus. Legen Sie dieses Flag fest, um diese Leerzeichen in die Abmessung einzuschließen. |
NoClip | 16384 | Überhängende Symbolbereiche und Text außerhalb des Formatierungsrechtecks dürfen angezeigt werden. In der Standardeinstellung werden Text und Symbolbereiche außerhalb des Formatierungsrechtecks abgeschnitten. |
NoFontFallback | 1024 | Fallback zu alternativen Schriftarten für Zeichen, die in der angeforderten Schriftart nicht unterstützt werden. Sämtliche fehlenden Zeichen werden mit dem Symbol für fehlende Zeichen der Schriftart dargestellt, i. d. R. mit einem offenen Rechteck. |
NoWrap | 4096 | Textumbruch zwischen Zeilen, wenn die Formatierung innerhalb eines Rechtecks deaktiviert ist. Dieses Flag wird generiert, wenn ein Punkt anstelle eines Rechtecks übergeben wird, oder wenn das angegebene Rechteck die Zeilenlänge 0 hat. |
Beispiele
Im folgenden Codebeispiel werden die folgenden Member veranschaulicht:
Dieses Beispiel ist für die Verwendung mit Windows Forms konzipiert. Fügen Sie den Code in ein Formular ein, und rufen Sie die ShowLineAndAlignment
-Methode auf, wenn Sie das Ereignis des Formulars Paint behandeln, und übergeben Sie e
als 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
Hinweise
StringFormatFlags wird von der StringFormat-Klasse verwendet.
Hinweis
Das Feld FitBlackBox wurde falsch benannt, und sein Verhalten ähnelt dem NoFitBlackBox
Feld in der ursprünglichen GDI+-Implementierung.