Cómo Trabajar con Elementos de Documentos en C#

Tutorial sobre elementos de documentos en C

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

IronWord es una poderosa biblioteca de documentos Word diseñada para ayudar a los desarrolladores de .NET C# a integrar las capacidades de crear, leer y editar documentos Word y DOCX en sus aplicaciones. En el contexto de un documento Word, los elementos del documento son los bloques de construcción que componen el contenido.

como-encabezado:2(Inicio rápido: Crear un TextRun Estilizado y Embeder una Imagen de Una Sola Vez)

Aquí está cómo puedes usar IronWord para agregar contenido enriquecido rápidamente: combinando texto estilizado y una imagen embebida en un solo párrafo y guardando el documento en un solo bloque de código fluido. Perfecto para desarrolladores que quieren empezar de inmediato sin código repetitivo.

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.

    new WordDocument()
      .AddParagraph(new Paragraph(new TextContent("Hello IronWord!")).AddImage(new ImageContent("pic.png")))
      .SaveAs("output.docx");
  3. Despliegue para probar en su entorno real

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

Tabla de contenido

Agregar TextRuns

Contenido del texto

El método Split se utiliza para dividir el TextRun en una lista de TextRuns más pequeños, basado en un delimitador especificado. Esto permite la organización y manipulación de la información textual dentro del 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");
Imports IronWord
Imports IronWord.Models

Private doc As New WordDocument()

' Add text
Private addText As New TextContent("Add text using IronWord")
doc.AddParagraph(New Paragraph(addText))

' Append text
Dim appendText As New TextContent("The first text.")
appendText.Append(New TextContent("The second text."))
doc.AddParagraph(New Paragraph(appendText))

' Split text
Dim splitText As New TextContent("Use split to split the sentence.")
splitText.Split(" ")
doc.AddParagraph(New Paragraph(splitText))

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

Establecer estilo

Definir estilo para TextRuns te permite definir la presentación visual del texto. Esto incluye especificar atributos como tamaño de fuente, color, estilo, tachado, subrayado, superíndice y subíndice. Configurar el estilo mejora la apariencia general del texto en el documento.

: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
TextContent textRun = new TextContent();
textRun.Text = "Add text using IronWord";
textRun.Style = new TextStyle()
{
    TextFont = new Font()
    {
        FontFamily = "Caveat",
        FontSize = 72,
    },
    Color = Color.Red,
    IsBold = true,
    IsItalic = true,
    Underline = new Underline(),
    Strike = StrikeValue.Strike,
};

Paragraph paragraph = new Paragraph();

// Add text
paragraph.AddText(textRun);

// Add paragraph
doc.AddParagraph(paragraph);

// Export docx
doc.SaveAs("save_document.docx");
Imports IronWord
Imports IronWord.Models
Imports IronWord.Models.Enums

' Load docx
Private doc As New WordDocument("document.docx")

' Configure text
Private textRun As New TextContent()
textRun.Text = "Add text using IronWord"
textRun.Style = New TextStyle() With {
	.TextFont = New Font() With {
		.FontFamily = "Caveat",
		.FontSize = 72
	},
	.Color = Color.Red,
	.IsBold = True,
	.IsItalic = True,
	.Underline = New Underline(),
	.Strike = StrikeValue.Strike
}

Dim paragraph As New Paragraph()

' Add text
paragraph.AddText(textRun)

' Add paragraph
doc.AddParagraph(paragraph)

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

Obtener color de relleno de texto

Aparte de definir estilo, IronWord proporciona una forma de obtener el valor de color RGBA del documento existente para mantener la consistencia a lo largo del 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.FillColor;

// Print the filled color variable to the console
Console.WriteLine(filledColor);
Imports IronWord
Imports IronWord.Models
Imports System

' Open existing Word
Private doc As New WordDocument("Accent1TextThemcolor.docx")

Private content As TextContent = doc.Paragraphs(0).Texts(0)

' This will show the R G B A of the themecolor
Private filledColor = content.FillColor

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

Primero importamos el documento inicializando un nuevo WordDocument, luego accedemos al array Paragraphs y al Array Texts para recuperar la propiedad Text. La clase Text luego devuelve el FillColor para mostrar el valor RGBA del color existente del texto.

Incrustar imágenes

Esta característica te permite incluir imágenes perfectamente dentro del contenido, mejorando el atractivo visual general y el poder comunicativo del 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");
Imports IronWord
Imports IronWord.Models

' Load docx
Private doc As New WordDocument()

' Configure image
Private image As New ImageContent("image.jpg")
image.Width = 200 ' In unit pixel
image.Height = 200 ' In unit pixel
Dim textRun As New TextContent()

' Add image
Dim para As New Paragraph(textRun)
para.AddImage(image)

' Add paragraph
doc.AddParagraph(New Paragraph(textRun))

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

Agregar imágenes

Cargar imagen

Cargar imágenes es un proceso crucial. Esto involucra llevar archivos de imagen externos al documento. La capacidad de cargar imágenes facilita la inclusión de visuales relevantes, contribuyendo a un documento más atractivo 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");
Imports IronWord
Imports IronWord.Models

' Load docx
Private doc As New WordDocument()

Private paragraph As New Paragraph()

' Add image
paragraph.AddImage("image.jpg")

' Add paragraph
doc.AddParagraph(paragraph)

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

Configurar imagen

Optimizar las imágenes con configuraciones configurables. Esto incluye establecer propiedades como ajuste de texto, dimensiones, posición y distancia desde las esquinas. La configuración adecuada asegura que las imágenes se muestren de manera visualmente agradable y contextualmente apropiada.

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

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

// Configure image
ImageContent image = new ImageContent("image.jpg");
image.WrapText = WrapText.Square;
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");
Imports IronWord
Imports IronWord.Models
Imports IronWord.Models.Enums

' Load docx
Private doc As New WordDocument()

' Configure image
Private image As New ImageContent("image.jpg")
image.WrapText = WrapText.Square
image.Width = 100
image.Height = 100
image.DistanceFromTop = 50

Dim position = New ElementPosition()
position.X = 50
position.Y = 50
image.Position = position

Dim paragraph As New Paragraph()

' Add image
paragraph.AddImage(image)

' Add paragraph
doc.AddParagraph(paragraph)

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

Preguntas Frecuentes

¿Cómo puedo añadir texto a un documento de Word usando C#?

Puede agregar texto a un documento de Word usando IronWord para crear una instancia de un run de texto, que luego se puede agregar a un párrafo dentro del documento.

¿Cuál es el método para dividir texto en un documento de Word?

IronWord proporciona el método Split, que le permite dividir un run de texto en segmentos más pequeños basados en un delimitador especificado, facilitando la manipulación de texto.

¿Cómo doy estilo al texto en un documento de Word usando IronWord?

Puede dar estilo al texto usando IronWord configurando varios atributos como tamaño de fuente, color y estilos como negrita, cursiva, tachado, subrayado, superíndice y subíndice.

¿Cómo puedo incrustar imágenes en un documento de Word con C#?

Para incrustar imágenes en un documento de Word usando IronWord, puede cargar una imagen desde un archivo y agregarla como una imagen en línea a un párrafo dentro del documento.

¿Qué pasos están involucrados en cargar una imagen en un documento de Word?

Con IronWord, puede cargar una imagen desde un archivo o un flujo de archivos, lo que le permite incorporar contenido visual en un documento de Word.

¿Cómo configuro las propiedades de la imagen en un documento de Word?

Usando IronWord, puede configurar propiedades de imagen como el ajuste de texto, dimensiones, desplazamiento de posición y distancia desde las esquinas para asegurar una correcta visualización de la imagen en el documento.

¿Puedo obtener el valor de color RGBA del texto en un documento de Word?

Sí, IronWord le permite obtener el valor de color RGBA del texto existente en un documento para mantener un estilo coherente en todo el documento.

¿Cómo puedo empezar a usar IronWord para la manipulación de documentos de Word?

Para comenzar con IronWord, puede integrarlo en su aplicación .NET C# para crear, leer y editar documentos de Word, aprovechando sus características completas de biblioteca.

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

Leer más
¿Listo para empezar?
Nuget Descargas 27,129 | Version: 2025.11 recién lanzado