Como trabalhar com elementos de documento em C#

C# Document Element Tutorial

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

IronWord é uma poderosa biblioteca de documentos Word projetada para auxiliar desenvolvedores .NET C# na integração dos recursos de criação, leitura e edição de documentos Word e DOCX em seus aplicativos. No contexto de um documento do Word, os elementos do documento são os blocos de construção que compõem o conteúdo.

Início rápido: Criar um texto estilizadoExecutar e incorporar uma imagem

Veja como você pode usar o IronWord para adicionar conteúdo rico – combinando texto formatado e uma imagem incorporada em um documento. Este exemplo demonstra o padrão de encapsulamento Run para texto estilizado.

  1. Instale IronWord com o Gerenciador de Pacotes NuGet

    PM > Install-Package IronWord
  2. Copie e execute este trecho de código.

    using IronWord;
    using IronWord.Models;
    
    // Create document
    WordDocument doc = new WordDocument();
    
    // Create styled Run
    Run textRun = new Run(new TextContent("Hello IronWord!"));
    textRun.Style = new TextStyle() { IsBold = true, Color = Color.Blue };
    
    // Create paragraph and add Run
    Paragraph paragraph = new Paragraph();
    paragraph.AddChild(textRun);
    paragraph.AddImage(new ImageContent("pic.png"));
    
    // Add to document and save
    doc.AddParagraph(paragraph);
    doc.SaveAs("output.docx");
  3. Implante para testar em seu ambiente de produção.

    Comece a usar IronWord em seu projeto hoje com uma avaliação gratuita

    arrow pointer

Índice

Conceitos-chave

Hierarquia de Documentos

O IronWord segue uma hierarquia de documentos estruturada: Documento → Parágrafo → Execução → Conteúdo do Texto . Compreender essa hierarquia é essencial para trabalhar com texto formatado:

  • WordDocument: O contêiner de nível superior que representa o documento inteiro
  • Paragraph: Um bloco de conteúdo dentro do documento
  • Run: Um objeto encapsulador que contém TextContent e pode ter estilo aplicado
  • TextContent: A string de texto real

Adicionando conteúdo aos parágrafos

O IronWord oferece dois métodos para adicionar conteúdo aos parágrafos:

  • AddText(TextContent): Use para texto simples sem estilo. Adiciona TextContent diretamente ao parágrafo.
  • AddChild(Run): Use para texto com estilo. Adiciona um objeto Run (que encapsula TextContent e contém estilo) ao parágrafo.

Quando você precisa aplicar estilos como tamanho da fonte, cor ou formatação em negrito, crie um objeto Run, atribua um TextStyle ao Run, e use AddChild para adicioná-lo ao parágrafo.

Adicionar Execuções de Texto

Conteúdo do texto

O método Split é utilizado para dividir a execução do texto em uma lista de execuções de texto menores, com base em um delimitador especificado. Isso permite a organização e manipulação de informações textuais dentro do documento.

:path=/static-assets/word/content-code-examples/tutorials/add-textrun-text-content.cs
using IronWord;
using IronWord.Models;

WordDocument doc = new WordDocument();

// Add text
TextContent addText = new TextContent("Add text using IronWord");
doc.AddParagraph(new Paragraph(addText));

// Append text
TextContent appendText = new TextContent("The first text.");
appendText.Append(new TextContent("The second text."));
doc.AddParagraph(new Paragraph(appendText));

// Split text
TextContent splitText = new TextContent("Use split to split the sentence.");
splitText.Split(" ");
doc.AddParagraph(new Paragraph(splitText));

// Export docx
doc.SaveAs("textrun.docx");
$vbLabelText   $csharpLabel

Estilização de Conjunto

Definir o estilo para texto requer o uso do padrão de encapsulamento Run. Crie um objeto Run contendo TextContent, depois atribua um TextStyle ao Run (não ao TextContent). O TextStyle permite definir atributos visuais como FontSize, cor, negrito, itálico, tachado, sublinhado, sobrescrito e subscrito.

Note que FontSize é configurado no nível TextStyle, enquanto FontFamily é definido dentro da propriedade TextFont. Uma vez estilizado, use AddChild para adicionar o Run a um parágrafo. Isso segue a hierarquia do documento: Documento → Parágrafo → Execução → Conteúdo do Texto.

:path=/static-assets/word/content-code-examples/tutorials/add-textrun-set-styling.cs
using IronWord;
using IronWord.Models;
using IronWord.Models.Enums;

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

// Configure text
Run textRun = new Run(new TextContent("Add text using IronWord"));
textRun.Style = new TextStyle()
{
    FontSize = 72,
    TextFont = new Font()
    {
        FontFamily = "Caveat"
    },
    Color = Color.Red,
    IsBold = true,
    IsItalic = true,
    Underline = new Underline(),
    Strike = StrikeValue.Strike,
};

Paragraph paragraph = new Paragraph();

// Add text
paragraph.AddChild(textRun);

// Add paragraph
doc.AddParagraph(paragraph);

// Export docx
doc.SaveAs("save_document.docx");
$vbLabelText   $csharpLabel

Obter cor de preenchimento do texto

Além de definir estilos, o IronWord oferece uma maneira de obter o valor de cor RGBA de documentos existentes para manter a consistência em todo o estilo.

:path=/static-assets/word/content-code-examples/tutorials/rgba-color-value.cs
using IronWord;
using IronWord.Models;
using System;

// Open existing Word
WordDocument doc = new WordDocument("Accent1TextThemcolor.docx");

TextContent content = doc.Paragraphs[0].Texts[0];

// This will show the R G B A of the themecolor
var filledColor = content.Color;

// Print the filled color variable to the console
Console.WriteLine(filledColor);
$vbLabelText   $csharpLabel

Para recuperar valores de cor, carregue o documento usando WordDocument, depois acesse a coleção Paragraphs e o array Texts para obter o objeto TextContent. A propriedade Color de TextContent retorna o valor RGBA da cor existente do texto, permitindo que você mantenha um estilo consistente em todo o seu documento.

Incorporar imagens

Essa funcionalidade permite incluir imagens no conteúdo de forma integrada, aprimorando o apelo visual geral e o poder de comunicação do documento.

:path=/static-assets/word/content-code-examples/tutorials/add-textrun-embed-images.cs
using IronWord;
using IronWord.Models;

// Load docx
WordDocument doc = new WordDocument();

// Configure image
ImageContent image = new ImageContent("image.jpg");
image.Width = 200; // In unit pixel
image.Height = 200; // In unit pixel
TextContent textRun = new TextContent();

// Add image
Paragraph para = new Paragraph(textRun);
para.AddImage(image);

// Add paragraph
doc.AddParagraph(new Paragraph(textRun));

// Export docx
doc.SaveAs("save_document.docx");
$vbLabelText   $csharpLabel

Adicionar imagens

Carregar imagem

Carregar imagens é um processo crucial. Isso envolve a inclusão de arquivos de imagem externos no documento. A possibilidade de carregar imagens facilita a inclusão de elementos visuais relevantes, contribuindo para um documento mais envolvente e informativo.

:path=/static-assets/word/content-code-examples/tutorials/add-image-load-image.cs
using IronWord;
using IronWord.Models;

// Load docx
WordDocument doc = new WordDocument();

Paragraph paragraph = new Paragraph();

// Add image
paragraph.AddImage("image.jpg");

// Add paragraph
doc.AddParagraph(paragraph);

// Export docx
doc.SaveAs("document.docx");
$vbLabelText   $csharpLabel

Configurar imagem

Otimize as imagens com configurações personalizáveis. Isso inclui definir propriedades como quebra de texto, dimensões, posição e distância dos cantos. Uma configuração adequada garante que as imagens sejam exibidas de maneira visualmente agradável e contextualizada.

:path=/static-assets/word/content-code-examples/tutorials/add-image-configure-image.cs
using IronWord;
using IronWord.Models;
using IronWord.Models.Enums;
using IronSoftware.Abstractions.Word;

// Load docx
WordDocument doc = new WordDocument();

// Configure image
ImageContent image = new ImageContent("image.jpg");
image.TextWrapBehavior = new TextWrapSquare();
image.Width = 100;
image.Height = 100;
image.DistanceFromTop = 50;

var position = new ElementPosition();
position.X = 50;
position.Y = 50;
image.Position = position;

Paragraph paragraph = new Paragraph();

// Add image
paragraph.AddImage(image);

// Add paragraph
doc.AddParagraph(paragraph);

// Export docx
doc.SaveAs("document.docx");
$vbLabelText   $csharpLabel

Perguntas frequentes

Como posso adicionar texto a um documento do Word usando C#?

Você pode adicionar texto a um documento do Word usando o IronWord para criar uma instância de um trecho de texto, que pode então ser anexada a um parágrafo dentro do documento.

Qual é o método para dividir o texto em um documento do Word?

O IronWord oferece o método Split , que permite dividir um trecho de texto em segmentos menores com base em um delimitador especificado, facilitando a manipulação do texto.

Como faço para formatar o texto em um documento do Word usando o IronWord?

Você pode estilizar o texto usando o IronWord definindo vários atributos, como tamanho da fonte, cor e estilos como negrito, itálico, tachado, sublinhado, sobrescrito e subscrito.

Como posso inserir imagens em um documento do Word usando C#?

Para incorporar imagens em um documento do Word usando o IronWord, você pode carregar uma imagem de um arquivo e adicioná-la como uma imagem embutida em um parágrafo dentro do documento.

Quais são os passos envolvidos no carregamento de uma imagem em um documento do Word?

Com o IronWord, você pode carregar uma imagem a partir de um arquivo ou de um fluxo de arquivos, o que permite incorporar conteúdo visual em um documento do Word.

Como faço para configurar as propriedades de uma imagem em um documento do Word?

Com o IronWord, você pode configurar propriedades de imagem como quebra de texto, dimensões, deslocamento de posição e distância dos cantos para garantir a exibição correta da imagem no documento.

É possível obter o valor de cor RGBA do texto em um documento do Word?

Sim, o IronWord permite obter o valor de cor RGBA do texto existente em um documento para manter a consistência do estilo em todo o documento.

Como posso começar a usar o IronWord para manipular documentos do Word?

Para começar a usar o IronWord, você pode integrá-lo ao seu aplicativo .NET C# para criar, ler e editar documentos do Word, aproveitando seus recursos abrangentes de biblioteca.

Curtis Chau
Redator Técnico

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 ...

Leia mais
Pronto para começar?
Nuget Downloads 35,581 | Versão: 2026.3 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package IronWord
executar um exemplo Veja seus dados se transformarem em um documento do Word.