IRONSOFTWAREHOME

Cómo Añadir Imagen a DOCX en C#

Ahmad Sohail
Ahmad Sohail
Updated: 9 de mayo de 2026

IronWord proporciona la clase ImageContent para insertar imágenes (.jpg, .png, .bmp, .tiff, .gif) en archivos DOCX con propiedades personalizables como ancho, altura y ajuste de texto. Utilice IronWord para añadir imágenes a documentos de Word para la automatización de documentos y la generación de informes.

Inicio rápido: Añadir imagen a DOCX en C#
  1. Instale IronWord a través del Administrador de paquetes NuGet
  2. Crea una nueva instancia de WordDocument
  3. Carga tu imagen utilizando la clase ImageContent
  4. Añade la imagen al documento usando AddImage()
  5. Guardar el documento como DOCX
  1. 1Install IronWord with NuGet Package Manager

    PM > Install-Package IronWord

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

    using IronWord;
    using IronWord.Models;
    
    // Create new document
    WordDocument doc = new WordDocument();
    
    // Add image
    ImageContent image = new ImageContent("photo.jpg");
    doc.AddImage(image);
    
    // Save document
    doc.SaveAs("document-with-image.docx");
    C#
  3. 3Despliegue para probar en su entorno real

    Comienza a usar IronWord en tu proyecto hoy mismo con una prueba gratuita
    arrow pointer

Prueba IronWord


¿Cómo añado una imagen a un DOCX?

Haga referencia a una imagen utilizando su ruta de archivo. Primero, instancie la clase ImageContent con la ruta del archivo como una cadena. Utilice la variable image a lo largo del archivo para modificar propiedades como ancho y altura. Añada la imagen al archivo .docx utilizando la función AddImage(). Exporte y guarde el documento localmente.

El ejemplo siguiente añade una imagen al documento sin ningún nodo padre. Los formatos de archivo admitidos son .jpg, .png, .bmp, .tiff y .gif. Esta flexibilidad permite trabajar con cualquier formato de imagen común.

Consejos: Inserta una imagen como un elemento hijo dentro de un párrafo para una mejor jerarquía del documento. El párrafo define el ajuste de texto y otras propiedades de formato del texto. Este enfoque proporciona más control sobre la posición de la imagen y permite que las imágenes fluyan con el texto circundante.
using IronWord;
using IronWord.Models;
using IronWord.Models.Enums;

// initializing docx file
WordDocument doc = new IronWord.WordDocument();

// instantiating image file
IronWord.Models.ImageContent image = new IronWord.Models.ImageContent("sample-image.jpg");

// modifying image properties
image.Width = 200;
image.Height = 200;

// AddImage function saving the image
doc.AddImage(image);

// Save and export the file
doc.SaveAs("inserted-image.docx");
Documento de Word con una imagen nocturna del horizonte de una ciudad insertada y una cinta de opciones de formato en la pestaña Inicio

¿Qué formatos de imagen son compatibles?

Formatos de archivo admitidos: .jpg, .png, .bmp, .tiff y .gif. Cada formato mantiene su calidad cuando se inserta. JPEG funciona mejor para fotografías. PNG admite transparencias para logotipos y gráficos. BMP ofrece una calidad sin comprimir. El formato TIFF es adecuado para documentos impresos de alta calidad. El formato GIF permite animaciones sencillas (en los documentos estáticos sólo se muestra el primer fotograma).

¿Dónde se coloca la imagen en el documento?

Las imágenes se añaden por defecto en la posición actual del cursor, sin ningún nodo padre. Para un posicionamiento preciso, inserte las imágenes como elementos hijos dentro de los párrafos. Así se controla mejor el flujo del texto y se integran las imágenes en la estructura del documento.

¿Por qué usar la clase ImageContent?

La clase ImageContent gestiona las propiedades de la imagen de manera estructurada. Modifique las dimensiones, el posicionamiento y el formato antes de la inserción. Este enfoque garantiza la coherencia en todo el proceso de generación de documentos y aplica reglas de formato estándar en toda la aplicación. La clase encapsula todas las propiedades relacionadas con las imágenes, lo que facilita el mantenimiento del código y reduce los errores de formato.

Inserción de imágenes en documentos con requisitos regulatorios españoles

En el contexto empresarial español, los documentos DOCX con imágenes incorporadas pueden estar sujetos a normativa sectorial específica. La automatización de la inserción de imágenes con IronWord resulta especialmente relevante en los siguientes escenarios:

Facturas electrónicas con logotipos corporativos: Las empresas obligadas a emitir facturas en formato Facturae — el estándar XML definido por la AEAT para la facturación electrónica — habitualmente generan también una versión DOCX o PDF del documento para entregar al cliente. Cuando el documento Word incluye el logotipo corporativo, los sellos de calidad o la imagen de firma del responsable, la clase ImageContent de IronWord permite automatizar esta inserción de forma programática, sin depender de plantillas manuales. Para documentos que deban enviarse a través de la plataforma FACe (Punto General de Entrada de Facturas de las Administraciones Públicas), la versión DOCX con imágenes sirve de respaldo auditable del documento XML transmitido.

Documentos de consentimiento LOPDGDD con imagen de firma: Cuando una empresa española recoge el consentimiento informado de un interesado conforme a la LOPDGDD y desea archivar ese consentimiento en formato Word, puede ser necesario insertar la imagen de la firma manuscrita digitalizada del interesado. La AEPD recomienda que estos documentos sean conservados con garantías de integridad; el uso de ImageContent con parámetros de tamaño estandarizados garantiza que todas las imágenes de firma ocupen el mismo espacio en el documento, facilitando la revisión por parte de inspectores de la AEPD o auditores de cumplimiento.

Documentos técnicos bajo el ENS: Las organizaciones que operan sistemas de información bajo el ENS (Esquema Nacional de Seguridad) frecuentemente necesitan generar documentación técnica con capturas de pantalla, diagramas de arquitectura o evidencias de configuración. La inserción programática de estas imágenes mediante IronWord en documentos DOCX permite automatizar la generación de informes de seguridad, reduciendo el error humano y asegurando la trazabilidad documental exigida por el BOE para los procesos de certificación ENS.

¿Cómo añado imágenes a través de Stream?

Las imágenes de URL locales o estáticas son fáciles de añadir con el método anterior. Sin embargo, las aplicaciones suelen trabajar con imágenes de bases de datos, servicios web o contenidos generados dinámicamente. Utilice el método Stream para añadir imágenes detrás de APIs seguras que requieren autenticación.

El siguiente ejemplo muestra un cliente HTTP que envía tokens de autorización para recuperar un flujo de imágenes autenticado. La secuencia se integra directamente en el documento antes de exportarlo. Este enfoque elimina el almacenamiento temporal de archivos y mejora la seguridad de los datos sensibles de las imágenes.

using IronWord;
using IronWord.Models;
using IronWord.Models.Enums;
using System.IO;
using System.Net.Http;
using System.Threading.Tasks;

// initializing docx file
WordDocument doc = new IronWord.WordDocument();

using (HttpClient client = new HttpClient())
{
    // Add authentication headers
    client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY_HERE");
    client.DefaultRequestHeaders.Add("User-Agent", "MyApp/1.0");

    // Get image from authenticated endpoint
    Stream authenticatedStream = await client.GetStreamAsync("https://api.example.com/secure/image.png");
    doc.AddImage(authenticatedStream);
}

// Export docx
doc.SaveAs("added-image-via-http-stream.docx");

¿Cuándo debo utilizar el método Stream?

Utilice el método Stream cuando:

  • Las imágenes están detrás de API seguras que requieren autenticación
  • Procesamiento dinámico de imágenes desde la memoria
  • Trabajar con imágenes almacenadas como datos binarios en bases de datos

Este método funciona bien en aplicaciones empresariales en las que las imágenes se almacenan en sistemas de gestión de documentos, almacenamiento en la nube o son generadas por servicios de procesamiento de imágenes. Para empresas españolas que operen bajo auditorías de la CNMV o del Banco de España, el uso del método Stream es preferible cuando las imágenes contienen datos sensibles (como capturas de extractos financieros o evidencias de transacciones), ya que evita la materialización de esos datos en el sistema de archivos local.

¿Cuáles son las ventajas de Stream Loading?

Stream loading integra imágenes de puntos finales autenticados sin guardar archivos temporales. Esto mejora la seguridad y el rendimiento. Los beneficios incluyen:

  • Reducción de las operaciones de E/S de disco
  • Sin almacenamiento en caché de imágenes sensibles en disco
  • Flujos de trabajo de procesamiento de imágenes en tiempo real
  • Mejor gestión de la memoria para imágenes de gran tamaño
  • Opciones flexibles de fuente de imagen

¿Cómo puedo modificar las propiedades de una imagen?

IronWord ofrece métodos completos para personalizar las propiedades de las imágenes. Ajuste estas propiedades antes o después de añadir la imagen al documento.

ConfiguracionesDescripciónEjemplo
AnchoDimensión horizontal de la imagen en píxelesimage.Width = 500;
AlturaDimensión vertical de la imagen en píxelesimage.Height = 300;
WrapTextComportamiento de ajuste de texto alrededor de la imagenimage.WrapText = WrapText.Square;
DistanciaDeLaIzquierdaMedida de espaciado desde el borde izquierdo en píxelesimage.DistanceFromLeft = 10;
DistanciaDeLaDerechaMedida de espaciado desde el borde derecho en píxelesimage.DistanceFromRight = 10;
DistanciaDesdeTopMedida de espaciado desde el borde superior en píxelesimage.DistanceFromTop = 15;
DistanciaDesdeAbajoMedida de espaciado desde el borde inferior en píxelesimage.DistanceFromBottom = 15;
PuestoInformación de ubicación espacial (coordenadas X e Y)image.Position = new ElementPosition(50, 100);
ScaleFactores de dimensionamiento proporcional para los ejes X e Yimage.Scale = new PointF(1.5f, 1.5f);
TranslateCoordenadas de desplazamiento para reposicionamientoimage.Translate = new PointF(20, 30);

¿Cómo puedo personalizar la anchura y la altura?

Implementar anchura y altura personalizadas alterando la relación de aspecto. Controlar cómo aparecen las imágenes en los documentos, ya sea manteniendo las proporciones o ajustándose a restricciones de maquetación específicas.

using IronWord;

// initializing docx file
WordDocument doc = new IronWord.WordDocument();

// instantiating image file
IronWord.Models.ImageContent image = new IronWord.Models.ImageContent("sample-image.tiff");

// modifying the aspect ratio by introducing custom width
image.Width = 800;
image.Height = 200;

// AddImage function saving the image
doc.AddImage(image);

// Save and export the file
doc.SaveAs("custom-size-image.docx");
Documento de Word que muestra la imagen de un ordenador portátil con texto superpuesto 'Tagged Image File F' que demuestra la visualización de las propiedades de la imagen

¿Qué ocurre con la relación de aspecto?

Los valores personalizados de anchura y altura anulan la relación de aspecto original. Estirar o comprimir imágenes para adaptarlas a requisitos de diseño como cabeceras, barras laterales o contenedores de tamaño fijo. Una distorsión extrema puede resultar poco profesional. Para mantener la relación de aspecto al cambiar el tamaño, calcule las dimensiones proporcionales en función del tamaño de destino.

¿Qué propiedades debo configurar primero?

Establezca las propiedades en este orden:

  1. Dimensiones (anchura/altura) - base del diseño de la imagen
  2. Posicionamiento (propiedades DistanceFrom) - control del espaciado y los márgenes
  3. Propiedades avanzadas (escalar/traducir) - ajuste fino

Este enfoque garantiza que cada característica se base lógicamente en las anteriores. Algunas propiedades interactúan: el ajuste del texto afecta al funcionamiento de las propiedades de distancia.

Preguntas Frecuentes

¿Cómo añado una imagen a un archivo DOCX en C#?

Con IronWord, puede añadir imágenes a archivos DOCX creando una instancia de ImageContent con la ruta de su archivo de imagen y utilizando el método AddImage(). IronWord admite formatos comunes como JPG, PNG, BMP, TIFF y GIF, lo que facilita la inserción programática de imágenes en documentos Word.

¿Qué formatos de imagen se admiten al añadir imágenes a documentos de Word?

IronWord es compatible con los principales formatos de imagen, incluidos los archivos .jpg, .png, .bmp, .tiff y .gif. Cada formato mantiene su calidad cuando se inserta: JPEG para fotografías, PNG para gráficos con transparencia, BMP para calidad sin comprimir, TIFF para documentos de impresión de alta calidad y GIF para animaciones sencillas (mostrando sólo el primer fotograma).

¿Puedo controlar el tamaño y la posición de las imágenes en los archivos DOCX?

Sí, la clase ImageContent de IronWord permite personalizar las propiedades de las imágenes, como la anchura, la altura y el ajuste del texto. Puede modificar las dimensiones y el posicionamiento antes de la inserción, lo que le da un control total sobre cómo aparecen las imágenes en sus documentos de Word.

¿Cómo inserto una imagen dentro de un párrafo para estructurar mejor el documento?

IronWord permite insertar imágenes como elementos secundarios dentro de los párrafos, lo que mejora la jerarquía del documento y el control sobre el ajuste del texto. Este enfoque integra las imágenes con el flujo de texto circundante y le ofrece opciones de posicionamiento más precisas en comparación con la adición de imágenes sin un nodo padre.

¿Cuál es la forma más rápida de añadir una imagen a un documento de Word mediante programación?

El método más rápido con IronWord es crear una instancia de WordDocument, cargar su imagen utilizando new ImageContent('photo.jpg'), llamar a doc.AddImage(image), y guardar con doc.SaveAs('document-with-image.docx'). Este sencillo proceso de cuatro pasos gestiona todo el flujo de trabajo de inserción de imágenes.

How do I place images at specific positions within a DOCX file using IronWord?

Images in IronWord are initially placed at the current cursor position. For precise positioning, insert images as child elements within paragraphs to manage text flow and layout.

Can I modify text wrapping settings for images in IronWord?

Yes, IronWord allows you to set text wrapping for images using the `TextWrapBehavior` property. This controls how text flows around the inserted images within the DOCX file.

Why is it beneficial to use the `ImageContent` class in IronWord?

The `ImageContent` class in IronWord provides a structured way to manage and customize image attributes such as dimensions and positioning before adding them to DOCX files, ensuring consistency and reducing formatting errors.

How do I maintain the aspect ratio of images when resizing in IronWord?

To maintain the aspect ratio while resizing an image in IronWord, calculate proportional dimensions based on the target size to avoid distortion and create a professional presentation.

What sequence should I follow when setting image properties in IronWord?

It's recommended to set properties in this order in IronWord: first dimensions (width/height), then spacing and margins (DistanceFrom properties), and finally advanced settings like position and text wrapping for comprehensive image layout control.

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.

...
Leer más

¿Listo para empezar?

Nuget Downloads 56,401Versión:2026.9recién lanzado

Obtenga su Clave de Prueba de 30 días gratis al instante.
No se requiere tarjeta de crédito ni creación de cuenta
Biblioteca C# NuGet para PDF
Instalar con NuGet

Versión: 2026.9

PM > Install-Package IronWord
nuget.org/packages/IronWord/
  1. En el Explorador de Soluciones, haga clic derecho en Referencias, Administrar Paquetes NuGet
  2. Selecciona Examinar y busca "IronWord"
  3. Seleccione el paquete e instale
C# PDF DLL
Descargar DLL

Versión: 2026.9

  1. Descarga y descomprime IronWord en una ubicación como ~/Libs dentro del directorio de tu Solución
  2. En el Explorador de Soluciones de Visual Studio, haz clic derecho en Referencias. Selecciona Examinar, "IronWord.dll"

Licencias desde $999

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