IRONSOFTWAREHOME
USANDO IRONWORD

3 Bibliotecas Word C# (Lista Actualizada para Desarrolladores)

Curtis Chau
Curtis Chau
Updated: 8 de mayo de 2026

Los documentos de Microsoft Word suelen contener un formato rico como fuentes, estilos y varios elementos que los hacen visualmente atractivos. IronWord es una potente biblioteca de Iron Software que tiene una API intuitiva de C# y VB.NET para Documentos Word y Docx. No hay necesidad de instalar Microsoft Office o Word Interop para construir, editar y exportar documentos Word. IronWord soporta completamente .NET 8, 7, 6, Framework, Core y Azure. Esto significa que la biblioteca no requiere Word instalado en la máquina y lee los archivos de forma independiente. Si estás trabajando con C# y necesitas leer documentos Word mientras preservas su formato, este tutorial te guiará a través del proceso usando la biblioteca IronWord.

Cómo (en C#) Leer Documento Word con Formato

  1. Instala la biblioteca IronWord para leer documentos Word.
  2. Cargue 'sample.docx', el documento de Word de entrada utilizando la clase WordDocument de la biblioteca IronWord.
  3. Lee los párrafos con formato usando un documento Word cargado.
  4. Muestra los datos extraídos con información de formato en la salida de la consola.

Requisitos previos

  1. Visual Studio: Asegúrate de tener instalado Visual Studio o cualquier otro entorno de desarrollo de C#.
  2. Administrador de Paquetes NuGet: Asegúrate de poder usar NuGet para gestionar paquetes en tu proyecto.

Paso 1: Crear un Nuevo Proyecto C#

Crea una nueva aplicación de consola C# o usa un proyecto existente donde quieras leer documentos Word.

Selecciona la plantilla de aplicación de consola y haz clic en siguiente.

Cómo leer un documento de Word con formato en C#: Figura 1 - Creando un nuevo proyecto C#

Haz clic en el botón 'Siguiente' para proporcionar el nombre de la solución, el nombre del proyecto y la ruta para el código.

Cómo leer un documento de Word con formato en C#: Figura 2 - Configurando el nuevo proyecto

Luego selecciona la versión deseada de .NET. La mejor práctica es siempre seleccionar la última versión disponible, aunque si tu proyecto tiene requisitos específicos entonces usa la versión de .NET necesaria.

Cómo leer un documento de Word con formato en C#: Figura 3 - Eligiendo el tipo necesario de versión .NET

Paso 2: Instalar la biblioteca de IronWord

Abre tu proyecto C# e instala la biblioteca IronWord usando la Consola del Administrador de Paquetes NuGet:

PM > Install-Package IronWord

El paquete NuGet también se puede instalar usando el Administrador de Paquetes de NuGet de Visual Studio, como se muestra abajo.

Cómo leer un documento de Word con formato en C#: Figura 4 - Instalando IronWord mediante el administrador de paquetes NuGet

Paso 3: Leer el documento de Word con formato

Para leer un archivo Word, primero, necesitamos crear un nuevo documento y luego agregarle algo de contenido como se muestra a continuación.

Cómo leer un documento de Word con formato en C#: Figura 5 - Documento de muestra creado

Ahora guarda el archivo en el directorio del proyecto y cambia las propiedades del archivo para copiarlo al directorio de salida.

Cómo leer un documento de Word con formato en C#: Figura 6 - Cómo deberían verse las propiedades del archivo

Ahora agregue el siguiente fragmento de código al archivo program.cs:

using IronWord;

class Program
{
    static void Main()
    {
        try
        {
            // Load existing docx
            var sampleDoc = new WordDocument("sample.docx");
            var paragraphs = sampleDoc.Paragraphs;

            // Iterate through each paragraph in the Word document
            foreach (var paragraph in paragraphs)
            {
                var textRun = paragraph.FirstTextRun;
                var text = textRun.Text; // Read text content

                // Extract Formatting details if available
                if (textRun.Style != null)
                {
                    var fontSize = textRun.Style.FontSize; // Font size
                    var isBold = textRun.Style.IsBold;
                    Console.WriteLine($"\tText: {text}, FontSize: {fontSize}, Bold: {isBold}");
                }
                else
                {
                    // Print text without formatting details
                    Console.WriteLine($"\tText: {text}");
                }
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"An error occurred: {ex.Message}");
        }
    }
}

El código anterior lee el documento de Word utilizando el método constructor de la clase WordDocument de la biblioteca IronWord.

Resultado

Cómo leer un documento de Word con formato en C#: Figura 7 - Salida de consola del código anterior

Explicación

  1. Abra el documento de Word: Cargue el documento de Word utilizando WordDocument de IronWord.
  2. Recorrer párrafos y secuencias: Utiliza bucles anidados para recorrer párrafos y secuencias. Las ejecuciones representan porciones de texto con un formato específico.
  3. Extraer texto y formato: Extraer el contenido de texto de cada ejecución y comprobar las propiedades de formato. En este ejemplo, hemos demostrado cómo extraer el tamaño de la fuente y el formato en negrita.
  4. Gestionar excepciones: Se utiliza un bloque try-catch para gestionar cualquier excepción e imprimirla.

El archivo cargado se puede usar para imprimir documentos, también podemos cambiar el color de la fuente en el objeto de estilo.

Leer tablas de archivos de Word

También podemos leer tablas de documentos Word. Agrega el siguiente fragmento de código al programa.

using IronWord;

class Program
{
    static void Main()
    {
        try
        {
            // Load existing docx
            var sampleDoc = new WordDocument("sample.docx");

            // Read Tables
            var tables = sampleDoc.Tables;
            foreach (var table in tables)
            {
                var rows = table.Rows;
                foreach (var row in rows)
                {
                    foreach (var cell in row.Cells)
                    {
                        var contents = cell.Contents;
                        contents.ForEach(x => Console.WriteLine(x));
                        // Print cell contents
                    }                    
                }
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"An error occurred: {ex.Message}");
        }
    }
}

Aquí estamos usando la propiedad Tables en la clase WordDocument para obtener todas las tablas en el documento, luego iterar a través de ellas y imprimir los contenidos.

Agregar estilo al texto existente

Podemos agregar nueva información de estilo a un documento Word existente usando la biblioteca IronWord como se muestra en el siguiente fragmento de código.

using IronWord;
using IronWord.Models;

class Program
{
    static void Main()
    {
        try
        {
            // Load existing docx
            var sampleDoc = new WordDocument("sample.docx");
            var paragraphs = sampleDoc.Paragraphs;

            // Iterate through paragraphs
            foreach (var paragraph in paragraphs)
            {
                var textRun = paragraph.FirstTextRun;
                var text = textRun.Text; // Read text content

                // Extract Formatting details if available
                if (textRun.Style != null)
                {
                    var fontSize = textRun.Style.FontSize; // Font size
                    var isBold = textRun.Style.IsBold;
                    Console.WriteLine($"\tText: {text}, FontSize: {fontSize}, Bold: {isBold}");
                }
                else
                {
                    // Print text without formatting details
                    Console.WriteLine($"\tText: {text}");
                }
            }

            // Change the formatting of the text
            var style = new TextStyle()
            {
                FontFamily = "Caveat",
                FontSize = 72,
                TextColor = new IronColor(System.Drawing.Color.Blue), // Blue color
                IsBold = true,
                IsItalic = true,
                IsUnderline = true,
                IsSuperscript = false,
                IsStrikethrough = true,
                IsSubscript = false
            };
            paragraphs[1].FirstTextRun.Style = style;

            // Save the document with the new style applied
            sampleDoc.SaveAs("sample2.docx");
        }
        catch (Exception ex)
        {
            Console.WriteLine($"An error occurred: {ex.Message}");
        }
    }
}

Aquí estamos creando un TextStyle y añadiéndolo al objeto de párrafo existente.

Agregar contenido nuevo con estilo al documento de Word

Podemos agregar nuevo contenido a un documento Word cargado como se muestra en el siguiente fragmento de código.

using IronWord;
using IronWord.Models;

class Program
{
    static void Main()
    {
        try
        {
            // Load Word Document
            var sampleDoc = new WordDocument("sample.docx");
            var paragraphs = sampleDoc.Paragraphs;

            // Iterate through paragraphs
            foreach (var paragraph in paragraphs)
            {
                var textRun = paragraph.FirstTextRun;
                var text = textRun.Text; // Read text content

                // Extract the formatting details if available
                if (textRun.Style != null)
                {
                    var fontSize = textRun.Style.FontSize; // Font size
                    var isBold = textRun.Style.IsBold;
                    Console.WriteLine($"\tText: {text}, FontSize: {fontSize}, Bold: {isBold}");
                }
                else
                {
                    // Print text without formatting details
                    Console.WriteLine($"\tText: {text}");
                }
            }

            // Add TextRun with Style to Paragraph
            TextRun blueTextRun = new TextRun();
            blueTextRun.Text = "Add text using IronWord";
            blueTextRun.Style = new TextStyle()
            {
                FontFamily = "Caveat",
                FontSize = 72,
                TextColor = new IronColor(System.Drawing.Color.Blue), // Blue color
                IsBold = true,
                IsItalic = true,
                IsUnderline = true,
                IsSuperscript = false,
                IsStrikethrough = true,
                IsSubscript = false
            };
            paragraphs[1].AddTextRun(blueTextRun);

            // Add New Content to the Word file and save
            Paragraph newParagraph = new Paragraph();
            TextRun newTextRun = new TextRun("New Add Information");
            newParagraph.AddTextRun(newTextRun);

            // Configure the text with different styles
            TextRun introText = new TextRun("This is an example paragraph with italic and bold styling.");
            TextStyle italicStyle = new TextStyle()
            {
                IsItalic = true
            };
            TextRun italicText = new TextRun("Italic example sentence.", italicStyle);
            TextStyle boldStyle = new TextStyle()
            {
                IsBold = true
            };
            TextRun boldText = new TextRun("Bold example sentence.", boldStyle);

            // Add the styled text to the paragraph
            newParagraph.AddTextRun(introText);
            newParagraph.AddTextRun(italicText);
            newParagraph.AddTextRun(boldText);

            // Save the modified document
            sampleDoc.SaveAs("sample2.docx");
        }
        catch (Exception ex)
        {
            Console.WriteLine($"An error occurred: {ex.Message}");
        }
    }
}

Aquí estamos creando nuevos objetos TextRun y Paragraph con información de estilo y añadiéndolos al documento de Word cargado.

Licencia (Prueba gratuita disponible)

Obtén tu clave de licencia de prueba gratuita de IronWord. Esta clave necesita ser colocada en appsettings.json.

{
    "IronWord.LicenseKey": "IRONWORD.MYLICENSE.KEY.TRIAL"
}
JSON

Proporcione su correo para una licencia de prueba. Después de enviar su ID de correo electrónico, la clave se entregará por correo.

Cómo leer un documento de Word con formato en C#: Figura 8 - Formulario de prueba enviado exitosamente

Conclusión

IronWord ofrece una manera conveniente de leer documentos Word con formato en C#. Extiende el código proporcionado según tus requisitos específicos y la complejidad de los documentos con los que estás trabajando. Este tutorial sirve como punto de partida para integrar IronWord en tus aplicaciones C# para el procesamiento de documentos Word.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien estructurados y visualmente atractivos.

...
Leer más

Artículos Relacionados

Key in blue circle

Obtenga su clave de prueba gratuita de 30 días al instante.

Your trial license will be sent to your email address

Sin limitaciones. 100 % desbloqueado. Sin tarjeta de crédito.

bullet_checkedNo se requiere tarjeta de crédito ni creación de cuentaSin limitaciones. 100 % desbloqueado. Sin tarjeta de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Reserve su Demostración en Vivo gratuita
Booking Badge

Confiado por millones de ingenieros en todo el mundo

Logos de clientes de Iron Software
Obtén tu Consulta Sin Compromiso
Completa el formulario a continuación o envía un correo a sales@ironsoftware.com
Tus detalles siempre serán mantenidos confidenciales.
Confiado por millones de ingenieros en todo el mundo
Logos de clientes de Iron Software
Obtenga su Clave de Prueba de 30 días gratis al instante.
No se requiere tarjeta de crédito ni creación de cuenta