PreferredWidth

PreferredWidth class

Representa un valor y su unidad de medida que se utiliza para especificar el ancho preferido de una tabla o celda.

public sealed class PreferredWidth

Propiedades

Nombre Descripción
Type { get; } Obtiene la unidad de medida utilizada para este valor de ancho preferido.
Value { get; } Obtiene el valor de ancho preferido. La unidad de medida se especifica en elType propiedad.

Métodos

Nombre Descripción
static FromPercent(double) Un método de creación que devuelve una nueva instancia que representa un ancho preferido especificado como un porcentaje.
static FromPoints(double) Un método de creación que devuelve una nueva instancia que representa un ancho preferido especificado mediante una cantidad de puntos.
override Equals(object) Determina si el objeto especificado tiene el mismo valor que el objeto actual.
Equals(PreferredWidth) Determina si el PreferredWidth especificado tiene el mismo valor que el PreferredWidth actual.
override GetHashCode() Sirve como función hash para este tipo.
override ToString() Devuelve una cadena fácil de usar que muestra el valor de este objeto.

Campos

Nombre Descripción
static readonly Auto Devuelve una instancia que representa el valor “no se especifica el ancho preferido”.

Observaciones

El ancho preferido se puede especificar como un porcentaje, número de puntos o un valor especial “ninguno/automático”.

Las instancias de esta clase son inmutables.

Ejemplos

Muestra cómo configurar una tabla para que se ajuste automáticamente al 50 % del ancho de la página.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Table table = builder.StartTable();
builder.InsertCell();
builder.Write("Cell #1");
builder.InsertCell();
builder.Write("Cell #2");
builder.InsertCell();
builder.Write("Cell #3");

table.PreferredWidth = PreferredWidth.FromPercent(50);

doc.Save(ArtifactsDir + "DocumentBuilder.InsertTableWithPreferredWidth.docx");

Muestra cómo establecer un ancho preferido para las celdas de la tabla.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Table table = builder.StartTable();

// Hay dos formas de aplicar la clase "PreferredWidth" a las celdas de la tabla.
// 1 - Establecer un ancho preferido absoluto basado en puntos:
builder.InsertCell();
builder.CellFormat.PreferredWidth = PreferredWidth.FromPoints(40);
builder.CellFormat.Shading.BackgroundPatternColor = Color.LightYellow;
builder.Writeln($"Cell with a width of {builder.CellFormat.PreferredWidth}.");

// 2 - Establecer un ancho preferido relativo basado en el porcentaje del ancho de la tabla:
builder.InsertCell();
builder.CellFormat.PreferredWidth = PreferredWidth.FromPercent(20);
builder.CellFormat.Shading.BackgroundPatternColor = Color.LightBlue;
builder.Writeln($"Cell with a width of {builder.CellFormat.PreferredWidth}.");

builder.InsertCell();

// Una celda sin un ancho preferido especificado ocupará el resto del espacio disponible.
builder.CellFormat.PreferredWidth = PreferredWidth.Auto;

// Cada configuración de la propiedad "PreferredWidth" crea un nuevo objeto.
Assert.AreNotEqual(table.FirstRow.Cells[1].CellFormat.PreferredWidth.GetHashCode(),
    builder.CellFormat.PreferredWidth.GetHashCode());

builder.CellFormat.Shading.BackgroundPatternColor = Color.LightGreen;
builder.Writeln("Automatically sized cell.");

doc.Save(ArtifactsDir + "DocumentBuilder.InsertCellsWithPreferredWidths.docx");

Ver también