Cómo añadir estilo al texto en DOCX con C

This article was translated from English: Does it need improvement?
Translated
View the article in English

La clase TextStyle de IronWord permite a los desarrolladores .NET aplicar un formato de texto profesional a los documentos de Word mediante programación, incluyendo fuentes, colores, negrita, cursiva, subrayado y mucho más. Ya se trate de generar informes, crear plantillas o automatizar la creación de documentos, IronWord ofrece herramientas de estilo completas que reproducen las opciones de formato de Microsoft Word.

como-encabezado:2(Inicio rápido: Estilizar texto en DOCX con C#)

  1. Instale IronWord a través de NuGet: Install-Package IronWord
  2. Crear un objeto WordDocument
  3. Cree TextContent con su texto
  4. Aplicar TextStyle con las propiedades deseadas (fuente, color, negrita, etc.)
  5. Añadir texto al párrafo y guardar el documento

Nuget IconEmpieza a crear PDF con NuGet ahora:

  1. Instalar IronWord con el gestor de paquetes NuGet

    PM > Install-Package IronWord

  2. Copie y ejecute este fragmento de código.

    // Quick example
    using IronWord;
    using IronWord.Models;
    
    // Initialize a new Word document
    WordDocument doc = new WordDocument();
    
    // Create styled text content
    TextContent text = new TextContent("Styled text");
    
    // Apply styling properties
    text.Style = new TextStyle() 
    { 
        IsBold = true, 
        Color = Color.Red,
        TextFont = new Font()
        {
            FontFamily = "Arial",
            FontSize = 16
        }
    };
    
    // Create paragraph and add the styled text
    Paragraph paragraph = new Paragraph();
    paragraph.AddText(text);
    
    // Add paragraph to document and save
    doc.AddParagraph(paragraph);
    doc.SaveAs("styled.docx");
  3. Despliegue para probar en su entorno real

    Empieza a utilizar IronWord en tu proyecto hoy mismo con una prueba gratuita
    arrow pointer

Comience a usar IronWord

Comience a usar IronWord en su proyecto hoy con una prueba gratuita.

Primer Paso:
green arrow pointer


¿Cómo añadir estilo de texto a DOCX?

Aplicar estilos de texto en IronWord es sencillo. Cree un objeto WordDocument y, a continuación, cree un objeto TextContent con su texto. Aplique un TextStyle utilizando propiedades como IsBold, Color o TextFont, y mejore el estilo con opciones como el subrayado o el tachado.

Una vez aplicado el estilo, añada texto a un Párrafo, inserte el párrafo en el documento y guarde el resultado. Este enfoque proporciona un control programático sobre el formato del texto para escenarios de generación automática de documentos que requieren un estilo coherente.

:path=/static-assets/word/content-code-examples/how-to/add-style-text-simple.cs
using IronWord;

// Load docx
WordDocument doc = new WordDocument("sample.docx");

// Configure text
TextContent text = new TextContent();
text.Text = "Add text using IronWord";

// Configure text style settings
text.Style = new TextStyle()
{
    TextFont = new Font()
    {
        FontFamily = "Calibri", // Text Font is "Calibri"
        FontSize = 24, // Text Size is 24
    },
    Color = Color.Red, // Set text color to red
    IsBold = true,     // Make text bold
    IsItalic = true,   // Make text italic
	Underline = new Underline(), // Have an underline
    Strike = StrikeValue.DoubleStrike, // No strike-through
};

Paragraph paragraph = new Paragraph();

// Add text to paragraph
paragraph.AddText(text);

// Add paragraph to document
doc.AddParagraph(paragraph);

// Save document
doc.SaveAs("add-text-style.docx");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

¿Qué resultados se obtendrán?

Interfaz de Microsoft Word que muestra la cinta de diseño y el documento con el formato de texto tachado en rojo aplicado

La clase TextStyle proporciona opciones de formato esenciales, incluidas propiedades de fuente, color de texto, negrita, cursiva y subrayado. El ejemplo muestra cómo se combinan varias propiedades de estilo para crear texto con un formato rico.


¿Qué estilos específicos puedo añadir?

¿Cómo puedo cambiar el color del texto?

La propiedad Color de TextStyle establece el color del texto utilizando colores predefinidos de IronWord.Models.Color o valores hexadecimales personalizados. Esto enfatiza el contenido específico o coincide con los colores de la marca. IronWord admite una amplia gama de colores, como rojo, azul, verde, oliva, azul marino y granate.

:path=/static-assets/word/content-code-examples/how-to/add-style-text-add-text.cs
using IronWord;

// Create document
WordDocument doc = new WordDocument();

// Add colored text
TextContent text = new TextContent("This text is olive-colored!");
text.Style = new TextStyle()
{
    Color = IronWord.Models.Color.Olive // defining text to be colored olive
};

Paragraph paragraph = new Paragraph();
paragraph.AddText(text);
doc.AddParagraph(paragraph);

// Save document
doc.SaveAs("colored-text.docx");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

¿Qué aspecto tiene el texto coloreado?

Microsoft Word muestra el formato de texto en color oliva con la cinta de la pestaña Inicio que muestra las herramientas de fuente y párrafo

¿Cómo configuro la familia y el tamaño de la fuente?

Personalice la apariencia del texto con la propiedad TextFont. Establezca FontFamily en cualquier nombre de fuente instalado (por ejemplo, "Arial", "Times New Roman") y FontSize en puntos. Así se establece una jerarquía visual y se garantiza la legibilidad en distintos dispositivos y plataformas.

:path=/static-assets/word/content-code-examples/how-to/add-style-text-add-font.cs
using IronWord;

// Create document
WordDocument doc = new WordDocument();

// Add text with custom font family and size
TextContent text = new TextContent("This text uses Arial at 24pt!");
text.Style = new TextStyle()
{
    TextFont = new IronWord.Models.Font()
    {
        FontFamily = "Arial",  // Set font family
        FontSize = 24          // Set font size in points
    }
};

Paragraph paragraph = new Paragraph();
paragraph.AddText(text);
doc.AddParagraph(paragraph);

// Save document
doc.SaveAs("font-styled-text.docx");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

¿Qué aspecto tiene el estilo de fuente personalizado?

Microsoft Word muestra la fuente Arial a 24pt seleccionada en la barra de herramientas con texto de muestra formateado

¿Cómo poner el texto en negrita?

Establezca la propiedad IsBold en true para que el texto aparezca en negrita. El texto en negrita se utiliza normalmente para los títulos, enfatizar o resaltar información importante. Combinado con otras propiedades de estilo, el texto en negrita crea una jerarquía visual y mejora la legibilidad.

:path=/static-assets/word/content-code-examples/how-to/add-style-text-add-bold.cs
using IronWord;

// Create document
WordDocument doc = new WordDocument();

// Add bold text
TextContent text = new TextContent("this is bold!");
text.Style = new TextStyle()
{
    IsBold = true  // Make text bold
};

Paragraph paragraph = new Paragraph();
paragraph.AddText(text);
doc.AddParagraph(paragraph);

// Save document
doc.SaveAs("bold-text.docx");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

¿Qué aspecto tiene el texto en negrita?

Interfaz de Microsoft Word que muestra el formato de texto en negrita con el texto

¿Cómo poner texto en cursiva?

Establezca la propiedad IsItalic en true para el estilo cursiva. El texto en cursiva se utiliza normalmente para dar énfasis, para títulos, palabras extranjeras o términos técnicos. Este formato sutil diferencia los elementos de texto sin el peso visual de la negrita.

:path=/static-assets/word/content-code-examples/how-to/add-style-text-add-italic.cs
using IronWord;

// Create document
WordDocument doc = new WordDocument();

// Add italic text
TextContent text = new TextContent("this is italic.");
text.Style = new TextStyle()
{
    IsItalic = true  // Make text italic
};

Paragraph paragraph = new Paragraph();
paragraph.AddText(text);
doc.AddParagraph(paragraph);

// Save document
doc.SaveAs("italic-text.docx");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

¿Qué aspecto tiene el texto en cursiva?

Documento de Word que muestra texto en cursiva con las opciones de formato de la pestaña Inicio visibles en la interfaz de cinta

¿Cuáles son las propiedades de estilo disponibles?

IronWord ofrece amplias propiedades de estilo que reflejan las opciones de formato de Microsoft Word. Estas propiedades se combinan para crear un formato de texto complejo que cumpla las normas de los documentos profesionales.

Método de peinado Descripción Ejemplo
TextFont Personaliza la apariencia del texto con un objeto Font, estableciendo la familia y el tamaño de la fuente en puntos. text.Style.TextFont = new Font() { FontFamily = "Calibri", FontSize = 24 };
Color Establece el color del texto utilizando colores predefinidos de IronWord.Models.Color o valores hexadecimales personalizados. text.Style.Color = IronWord.Models.Color.Red;
IsBold Pone el texto en negrita cuando se establece como true , comúnmente usado para encabezados o énfasis. text.Style.IsBold = true;
EsItalico Aplica estilo cursiva al texto cuando se establece como true , generalmente se usa para enfatizar o para títulos. text.Style.IsItalic = true;
Subrayado Añade un subrayado al texto utilizando un objeto Subrayado con varios estilos de subrayado. text.Style.Underline = new Underline();
Strike Aplica tachado al texto utilizando StrikeValue enum (Strike o DoubleStrike). text.Style.Strike = StrikeValue.Strike;
Caps Aplica efectos de capitalización al texto, convirtiendo todos los caracteres a mayúsculas. text.Style.Caps = true;
Escala de caracteres Ajusta el ancho proporcional de los caracteres como un porcentaje de su tamaño normal. text.Style.CharacterScale = 150;
Emboss Aplica un efecto de relieve al texto, creando una apariencia elevada. text.Style.Emboss = true;
Enfasis Añade marcas de énfasis al texto con estilo utilizando valores EmphasisMarkValues enum. text.Style.Emphasis = EmphasisMarkValues.Dot;
Interlineado Controla el espaciado entre líneas de texto para mejorar la legibilidad mediante un objeto Interlineado. text.Style.LineSpacing = new LineSpacing() { Value = 1.5 };
Resumen Representa el texto con un efecto de contorno, mostrando solo los bordes de los caracteres. text.Style.Outline = true;
Sombreado Aplica color de fondo o sombreado al texto mediante un objeto Sombreado. text.Style.Shading = new Shading() { Color = Color.Yellow };
SmallCaps Convierte letras minúsculas en mayúsculas pequeñas manteniendo la distinción entre mayúsculas y minúsculas. text.Style.SmallCaps = true;
PosiciónVertical Ajusta la ubicación vertical del texto en relación con su línea base, medida en puntos. text.Style.VerticalPosition = 5.0;
Alineación vertical del texto Posiciona el texto verticalmente dentro de su contenedor utilizando VerticalPositionValues enum. text.Style.VerticalTextAlignment = VerticalPositionValues.Superscript;

Combinación de varios estilos

El poder de estilización del texto de IronWord proviene de la combinación de múltiples propiedades para lograr un formato complejo. A continuación se muestra un ejemplo de texto con estilo profesional mediante la combinación de varias propiedades de estilo:

using IronWord;
using IronWord.Models;

// Create a new document
WordDocument doc = new WordDocument();

// Create richly formatted text
TextContent headerText = new TextContent("Professional Document Header");
headerText.Style = new TextStyle()
{
    TextFont = new Font()
    {
        FontFamily = "Georgia",
        FontSize = 28
    },
    Color = Color.DarkBlue,
    IsBold = true,
    SmallCaps = true,
    Underline = new Underline(),
    CharacterScale = 110,  // Slightly expand character width
    Shading = new Shading() 
    { 
        Color = Color.LightGray  // Light background
    }
};

// Add header to document
Paragraph headerParagraph = new Paragraph();
headerParagraph.AddText(headerText);
doc.AddParagraph(headerParagraph);

// Create body text with different styling
TextContent bodyText = new TextContent("This is professionally formatted body text with custom styling.");
bodyText.Style = new TextStyle()
{
    TextFont = new Font()
    {
        FontFamily = "Calibri",
        FontSize = 11
    },
    Color = Color.Black,
    LineSpacing = new LineSpacing() { Value = 1.15 }  // Slightly increased line spacing
};

Paragraph bodyParagraph = new Paragraph();
bodyParagraph.AddText(bodyText);
doc.AddParagraph(bodyParagraph);

// Save the document
doc.SaveAs("professional-document.docx");
using IronWord;
using IronWord.Models;

// Create a new document
WordDocument doc = new WordDocument();

// Create richly formatted text
TextContent headerText = new TextContent("Professional Document Header");
headerText.Style = new TextStyle()
{
    TextFont = new Font()
    {
        FontFamily = "Georgia",
        FontSize = 28
    },
    Color = Color.DarkBlue,
    IsBold = true,
    SmallCaps = true,
    Underline = new Underline(),
    CharacterScale = 110,  // Slightly expand character width
    Shading = new Shading() 
    { 
        Color = Color.LightGray  // Light background
    }
};

// Add header to document
Paragraph headerParagraph = new Paragraph();
headerParagraph.AddText(headerText);
doc.AddParagraph(headerParagraph);

// Create body text with different styling
TextContent bodyText = new TextContent("This is professionally formatted body text with custom styling.");
bodyText.Style = new TextStyle()
{
    TextFont = new Font()
    {
        FontFamily = "Calibri",
        FontSize = 11
    },
    Color = Color.Black,
    LineSpacing = new LineSpacing() { Value = 1.15 }  // Slightly increased line spacing
};

Paragraph bodyParagraph = new Paragraph();
bodyParagraph.AddText(bodyText);
doc.AddParagraph(bodyParagraph);

// Save the document
doc.SaveAs("professional-document.docx");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Este enfoque de estilo integral crea documentos que mantienen una imagen de marca coherente y un aspecto profesional durante todo el proceso de generación de documentos de su aplicación.

Preguntas Frecuentes

¿Cómo puedo aplicar formato de texto a documentos de Word mediante programación en C#?

La clase TextStyle de IronWord le permite aplicar un formato de texto profesional que incluye fuentes, colores, negrita, cursiva y subrayado. Simplemente cree un objeto TextContent con su texto, aplique un TextStyle con las propiedades deseadas, añádalo a un párrafo y guarde el documento.

¿Cuáles son los pasos básicos para dar estilo al texto en archivos DOCX?

Para aplicar estilo al texto con IronWord: 1) Instale IronWord a través de NuGet, 2) Cree un objeto WordDocument, 3) Cree TextContent con su texto, 4) Aplique propiedades TextStyle como fuente, color o negrita, 5) Añada el texto a un párrafo y guarde.

¿Qué opciones de formato de texto hay disponibles?

La clase TextStyle de IronWord proporciona opciones de formato esenciales, incluidas propiedades de fuente (FontFamily y FontSize), color de texto, negrita, cursiva, subrayado y tachado. Estas opciones pueden combinarse para crear texto con formato enriquecido.

¿Cómo puedo cambiar la familia de fuentes y el tamaño del texto?

Utilice la propiedad TextFont en TextStyle para especificar la familia y el tamaño de la fuente. Establezca FontFamily en fuentes como 'Arial' o 'Times New Roman', y FontSize en el tamaño de punto que desee, como 16 para texto más grande.

¿Puedo aplicar varios estilos de texto simultáneamente?

Sí, IronWord permite combinar varias propiedades de estilo en un único objeto TextStyle. Puede aplicar negrita, cursiva, color y cambios de fuente a la vez para crear un formato de texto complejo.

¿Cómo puedo cambiar el color del texto en documentos de Word utilizando C#?

La propiedad Color en TextStyle de IronWord le permite establecer el color del texto utilizando colores predefinidos de IronWord.Models.Color o valores hexadecimales personalizados. Esta característica ayuda a enfatizar el contenido específico o hacer coincidir los colores de la marca en sus documentos.

Ahmad Sohail
Desarrollador Full Stack

Ahmad es un desarrollador full-stack con una sólida base en C#, Python y tecnologías web. Tiene un profundo interés en construir soluciones de software escalables y disfruta explorando cómo el diseño y la funcionalidad se encuentran en aplicaciones del mundo real.

Antes ...

Leer más
¿Listo para empezar?
Nuget Descargas 28,054 | Versión: 2025.12 recién lanzado