USANDO IRONWORD

3 Bibliotecas de Palavras-chave em C# (Lista atualizada para desenvolvedores)

Curtis Chau
Curtis Chau
Updated: 8 de maio de 2026

Documentos do Microsoft Word frequentemente contêm formatações ricas, como fontes, estilos e vários elementos que os tornam visualmente atraentes. IronWord é uma biblioteca poderosa da Iron Software que possui uma API intuitiva de Documento Word e Docx para C# e VB.NET. Não é necessário instalar o Microsoft Office ou Word Interop para construir, editar e exportar documentos Word. O IronWord suporta totalmente .NET 8, 7, 6, Framework, Core e Azure. Isso significa que a biblioteca não requer o Word instalado na máquina e lê os arquivos de forma independente. Se você está trabalhando com C# e precisa ler documentos do Word enquanto preserva sua formatação, este tutorial irá guiá-lo através do processo usando a biblioteca IronWord.

Como (em C#) Ler Documento Word Com Formatação

  1. Instale a biblioteca IronWord para ler documentos do Word.
  2. Carregar 'sample.docx', o documento Word de entrada usando a classe WordDocument da biblioteca IronWord.
  3. Leia os parágrafos com formatação usando um documento Word carregado.
  4. Mostre os dados extraídos com informações de formatação na saída do console.

Pré-requisitos

  1. Visual Studio: Certifique-se de ter o Visual Studio ou qualquer outro ambiente de desenvolvimento C# instalado.
  2. Gerenciador de Pacotes NuGet: Certifique-se de que pode usar o NuGet para gerenciar pacotes em seu projeto

Passo 1: Criar Um Novo Projeto C#

Crie um novo aplicativo de console C# ou use um projeto existente onde deseja ler documentos Word.

Selecione o modelo de aplicativo de console e clique em próximo.

Como Ler Documento Word Com Formatação em C#: Figura 1 - Criando um novo projeto C#

Clique no botão 'Próximo' para fornecer o nome da solução, nome do projeto e caminho para o código.

Como Ler Documento Word Com Formatação em C#: Figura 2 - Configurando o novo projeto

Então selecione a versão desejada do .NET. A melhor prática é sempre selecionar a última versão disponível, embora se o seu projeto tiver requisitos específicos, use a versão necessária do .NET.

Como Ler Documento Word Com Formatação em C#: Figura 3 - Escolhendo o tipo necessário de versão .NET

Passo 2: Instale a Biblioteca IronWord

Abra seu projeto C# e instale a biblioteca IronWord usando o Console do Gerenciador de Pacotes NuGet:

PM > Install-Package IronWord

O pacote NuGet também pode ser instalado usando o Gerenciador de Pacotes NuGet do Visual Studio, como mostrado abaixo.

Como Ler Documento Word Com Formatação em C#: Figura 4 - Instalando IronWord através do gerenciador de pacotes NuGet

Passo 3: Leia o Documento Word com Formatação

Para ler um arquivo Word, primeiro precisamos criar um novo documento e depois adicionar algum conteúdo nele conforme abaixo.

Como Ler Documento Word Com Formatação em C#: Figura 5 - Documento de exemplo criado

Agora salve o arquivo no diretório do projeto e altere as propriedades do arquivo para copiá-lo para o diretório de saída.

Como Ler Documento Word Com Formatação em C#: Figura 6 - Como as propriedades do arquivo devem ser

Agora adicione o trecho de código abaixo ao arquivo 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}");
        }
    }
}

O código acima lê o documento Word usando o método construtor da classe WordDocument da biblioteca IronWord.

Saída

Como Ler Documento Word Com Formatação em C#: Figura 7 - Saída do console do código anterior

Explicação

  1. Abra o Documento Word: Carregue o documento Word usando WordDocument do IronWord.
  2. Iterar Pelos Parágrafos e Execuções: Use loops aninhados para iterar através dos parágrafos e execuções. Execuções representam porções de texto com formatação específica.
  3. Extrair Texto e Formatação: Extraia o conteúdo de texto de cada execução e verifique as propriedades de formatação. Neste exemplo, demonstramos como extrair o tamanho da fonte e a formatação em negrito.
  4. Tratar Exceções: Um bloco try-and-catch é usado para tratar quaisquer exceções e imprimi-las.

O arquivo carregado pode ser usado para imprimir documentos, também podemos alterar a cor da fonte no objeto de estilo.

Ler Tabelas de Arquivos Word

Também podemos ler tabelas de documentos do Word. Adicione o trecho de código abaixo ao 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}");
        }
    }
}

Aqui estamos usando a propriedade Tables na classe WordDocument para buscar todas as tabelas no documento, iterar por elas e imprimir os conteúdos.

Adicionar Estilo ao Texto Existente

Podemos adicionar novas informações de estilo a um documento Word existente usando a biblioteca IronWord, conforme mostrado no trecho de código abaixo.

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}");
        }
    }
}

Aqui estamos criando um TextStyle e adicionando-o ao objeto parágrafo existente.

Adicionar Novo Conteúdo Estilizado ao Documento Word

Podemos adicionar novo conteúdo a um documento Word carregado, conforme mostrado no trecho de código abaixo.

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}");
        }
    }
}

Aqui estamos criando novos objetos TextRun e Paragraph com informações de estilo e adicionando-os ao documento Word carregado.

Licenciamento (Teste Gratuito Disponível)

Obtenha sua chave de licença de teste gratuita do IronWord. Esta chave precisa ser colocada em appsettings.json.

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

Forneça seu e-mail para obter uma licença de avaliação. Após enviar seu ID de e-mail, a chave será entregue por e-mail.

Como Ler Documento Word Com Formatação em C#: Figura 8 - Formulário de teste enviado com sucesso

Conclusão

IronWord fornece uma maneira conveniente de ler documentos do Word com formatação em C#. Estenda o código fornecido com base em seus requisitos específicos e na complexidade dos documentos com os quais você está trabalhando. Este tutorial serve como um ponto de partida para integrar IronWord em suas aplicações C# para processamento de documentos Word.

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

Leia mais

Artigos relacionados