StringFormatFlags Enumeración
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Especifica la información de diseño y de presentación de las cadenas de texto.
Esta enumeración admite una combinación bit a bit de sus valores de miembro.
public enum class StringFormatFlags
[System.Flags]
public enum StringFormatFlags
[<System.Flags>]
type StringFormatFlags =
Public Enum StringFormatFlags
- Herencia
- Atributos
Campos
DirectionRightToLeft | 1 | El texto se muestra de derecha a izquierda. |
DirectionVertical | 2 | El texto está alineado en sentido vertical. |
DisplayFormatControl | 32 | Los caracteres de control, como la marca de texto de izquierda a derecha, se muestren en los resultados con un glifo que los representa. |
FitBlackBox | 4 | Partes de los caracteres pueden sobresalir del rectángulo de diseño de la cadena. De forma predeterminada, los caracteres se cambian de posición para evitar que sobresalgan. |
LineLimit | 8192 | Sólo se disponen en el rectángulo de formato las líneas completas. De manera predeterminada, el diseño continúa hasta el final del texto o hasta que no haya más líneas visibles como consecuencia del recorte, lo que suceda primero. Tenga en cuenta que la configuración predeterminada permite que la última línea quede parcialmente tapada por un rectángulo que no sea un múltiplo entero del alto de la línea. Para garantizar que sólo se ven líneas completas, especifique este valor y asegúrese de proporcionar un rectángulo de formato que sea al menos tan alto como el alto de una línea. |
MeasureTrailingSpaces | 2048 | Incluye el espacio al final de cada línea. De manera predeterminada, el rectángulo delimitador que devuelve el método MeasureString excluye el espacio que hay al final de cada línea. Establezca este marcador para incluir dicho espacio en la medida. |
NoClip | 16384 | Las partes de glifos que sobresalgan y el texto no ajustado que se salga del rectángulo de formato se pueden mostrar. De manera predeterminada, se recortan todas las partes de texto y de glifos que sobresalgan del rectángulo de formato. |
NoFontFallback | 1024 | La reserva de fuentes alternativas para los caracteres que no admita la fuente solicitada queda deshabilitada. Los caracteres que falten se muestran con el glifo de ausencia de fuente, normalmente un cuadrado abierto. |
NoWrap | 4096 | El ajuste del texto entre las líneas cuando al dar formato dentro de un rectángulo está deshabilitado. Este marcador es implícito si se pasa un punto en lugar de un rectángulo o si el rectángulo especificado tiene una longitud de línea de cero. |
Ejemplos
En el ejemplo de código siguiente se muestran los siguientes miembros:
Este ejemplo está diseñado para usarse con Windows Forms. Pegue el código en un formulario y llame al ShowLineAndAlignment
método al controlar el evento del Paint formulario, pasando e
como 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
Comentarios
La clase StringFormat utiliza StringFormatFlags.
Nota
El campo FitBlackBox se ha escrito mal y su comportamiento es similar al NoFitBlackBox
campo de la implementación original de GDI+.