IRONSOFTWAREHOME

Como adicionar imagem ao DOCX em C#

Ahmad Sohail
Ahmad Sohail
Updated: 9 de maio de 2026

O IronWord fornece a classe ImageContent para inserir imagens (.jpg, .png, .bmp, .tiff, .gif) em arquivos DOCX com propriedades personalizáveis como largura, altura e ajuste de texto. Utilize o IronWord para adicionar imagens a documentos do Word para automatizar a criação de documentos e relatórios.

Início rápido: Adicionar imagem a um arquivo DOCX em C#
  1. Instale o IronWord através do Gerenciador de Pacotes NuGet
  2. Crie uma nova instância WordDocument
  3. Carregue sua imagem usando a classe ImageContent
  4. Adicione a imagem ao documento usando AddImage()
  5. Salve o documento como DOCX.
  1. 1Install IronWord with NuGet Package Manager

    PM > Install-Package IronWord

  2. 2Copie e execute este trecho 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. 3Implante para testar em seu ambiente de produção.

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

Experimente IronWord


Como adiciono uma imagem a um arquivo DOCX?

Faça referência a uma imagem usando o caminho do arquivo. Primeiro, instancie a classe ImageContent com o caminho do arquivo como uma string. Use a variável image em todo o arquivo para modificar propriedades como largura e altura. Adicione a imagem ao arquivo .docx usando a função AddImage(). Exporte e salve o documento localmente.

O exemplo abaixo adiciona uma imagem ao documento sem nenhum nó pai. Os formatos de arquivo suportados incluem .jpg, .png, .bmp, .tiff e .gif. Essa flexibilidade permite que você trabalhe com qualquer formato de imagem comum.

Pontas: Insira uma imagem como elemento filho dentro de um parágrafo para melhor hierarquia do documento. O parágrafo define a quebra de texto e outras propriedades de formatação de texto. Essa abordagem proporciona maior controle sobre o posicionamento da imagem e permite que as imagens acompanhem o texto ao redor.
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 do Word mostrando uma imagem inserida da paisagem urbana noturna, com a guia Página Inicial exibindo as opções de formatação.

Quais formatos de imagem são suportados?

Formatos de arquivo suportados: .jpg, .png, .bmp, .tiff e .gif. Cada formato mantém sua qualidade quando inserido. O formato JPEG é o mais indicado para fotografias. O PNG suporta transparência para logotipos e gráficos. O formato BMP oferece qualidade sem compressão. O formato TIFF é adequado para documentos de impressão de alta qualidade. O formato GIF permite animações simples (apenas o primeiro quadro é exibido em documentos estáticos).

Onde a imagem será inserida no documento?

Por padrão, as imagens são adicionadas na posição atual do cursor, sem nenhum nó pai. Para um posicionamento preciso, insira imagens como elementos filhos dentro dos parágrafos. Isso proporciona um melhor controle sobre o fluxo do texto e integra as imagens à estrutura do seu documento.

Por que usar a classe ImageContent?

A classe ImageContent gerencia as propriedades da imagem de maneira estruturada. Modifique as dimensões, o posicionamento e a formatação antes da inserção. Essa abordagem garante consistência em todo o processo de geração de documentos e aplica regras de formatação padrão em toda a sua aplicação. A classe encapsula todas as propriedades relacionadas à imagem, tornando o código mais fácil de manter e reduzindo erros de formatação.

Como adiciono imagens via Stream?

É fácil adicionar imagens com URLs locais ou estáticas usando o método anterior. No entanto, as aplicações geralmente funcionam com imagens provenientes de bases de dados, serviços web ou conteúdo gerado dinamicamente. Use o método Stream para adicionar imagens por trás de APIs seguras que exigem autenticação.

O exemplo abaixo mostra um cliente HTTP enviando tokens de autorização para recuperar um fluxo de imagens autenticado. O fluxo de dados integra-se diretamente ao documento antes da exportação. Essa abordagem elimina o armazenamento temporário de arquivos e melhora a segurança de dados de imagem sensíveis.

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

Quando devo usar o método Stream?

Use o método Stream quando:

  • As imagens estão protegidas por APIs seguras que exigem autenticação.
  • Processamento dinâmico de imagens a partir da memória
  • Trabalhar com imagens armazenadas como dados binários em bancos de dados

Este método funciona bem em aplicações empresariais onde as imagens são armazenadas em sistemas de gestão documental, armazenamento na nuvem ou geradas por serviços de processamento de imagens.

Quais são os benefícios do carregamento de fluxos de dados?

O carregamento de fluxos integra imagens de endpoints autenticados sem salvar arquivos temporários. Isso melhora a segurança e o desempenho. Os benefícios incluem:

  • Redução das operações de E/S de disco
  • Não há armazenamento em cache de imagens sensíveis no disco.
  • Fluxos de trabalho de processamento de imagem em tempo real
  • Melhor gerenciamento de memória para imagens grandes
  • Opções flexíveis de origem da imagem

Como posso modificar as propriedades de uma imagem?

O IronWord oferece métodos abrangentes para personalizar as propriedades da imagem. Ajuste essas propriedades antes ou depois de adicionar a imagem ao documento.

ConfiguraçõesDescriçãoExemplo
LarguraDimensão horizontal da imagem em pixelsimage.Width = 500;
AlturaDimensão vertical da imagem em pixelsimage.Height = 300;
WrapTextComportamento de ajuste de texto ao redor da imagemimage.WrapText = WrapText.Square;
DistanceFromLeftMedida de espaçamento a partir da borda esquerda em pixelsimage.DistanceFromLeft = 10;
DistanceFromRightMedida de espaçamento a partir da borda direita em pixelsimage.DistanceFromRight = 10;
DistanceFromTopMedida de espaçamento a partir da borda superior em pixelsimage.DistanceFromTop = 15;
DistanceFromBottomMedida de espaçamento a partir da borda inferior em pixelsimage.DistanceFromBottom = 15;
PosiçãoInformações de localização espacial (coordenadas X e Y)image.Position = new ElementPosition(50, 100);
ScaleFatores de dimensionamento proporcional para os eixos X e Yimage.Scale = new PointF(1.5f, 1.5f);
TranslateCoordenadas de deslocamento para reposicionamentoimage.Translate = new PointF(20, 30);

Como faço para personalizar a largura e a altura?

Implemente largura e altura personalizadas alterando a proporção da tela. Controle a forma como as imagens aparecem nos documentos, seja mantendo as proporções ou ajustando-as a restrições de layout 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 do Word exibindo a imagem de um laptop com a sobreposição do texto "Arquivo de Imagem Etiquetado F", demonstrando a exibição das propriedades da imagem.

O que acontece com a proporção da tela?

Valores personalizados de largura e altura substituem a proporção original. Estique ou comprima imagens para adequá-las a requisitos de layout, como cabeçalhos, barras laterais ou contêineres de tamanho fixo. Distorções extremas podem parecer pouco profissionais. Para manter a proporção ao redimensionar, calcule as dimensões proporcionais com base no tamanho desejado.

Quais propriedades devo configurar primeiro?

Defina as propriedades nesta ordem:

  1. Dimensões (largura/altura) - base do layout da imagem
  2. Posicionamento (Propriedades DistanceFrom) - controle de espaçamento e margens
  3. Propriedades avançadas (escala/translação) - ajuste fino

Essa abordagem garante que cada propriedade seja construída logicamente sobre as anteriores. Algumas propriedades interagem — a quebra de texto afeta o funcionamento das propriedades de distância.

Perguntas frequentes

Como adiciono uma imagem a um arquivo DOCX em C#?

Com o IronWord, você pode adicionar imagens a arquivos DOCX criando uma instância de ImageContent com o caminho do arquivo de imagem e, em seguida, usando o método AddImage(). O IronWord suporta formatos comuns como JPG, PNG, BMP, TIFF e GIF, facilitando a inserção programática de imagens em documentos do Word.

Quais formatos de imagem são suportados ao adicionar imagens a documentos do Word?

O IronWord suporta todos os principais formatos de imagem, incluindo arquivos .jpg, .png, .bmp, .tiff e .gif. Cada formato mantém sua qualidade ao ser inserido: JPEG para fotografias, PNG para gráficos com transparência, BMP para qualidade sem compressão, TIFF para documentos de impressão de alta qualidade e GIF para animações simples (exibindo apenas o primeiro quadro).

Posso controlar o tamanho e o posicionamento das imagens em arquivos DOCX?

Sim, a classe ImageContent do IronWord permite personalizar propriedades da imagem, como largura, altura e quebra de texto. Você pode modificar as dimensões e o posicionamento antes da inserção, tendo controle total sobre a aparência das imagens em seus documentos do Word.

Como faço para inserir uma imagem dentro de um parágrafo para melhorar a estrutura do documento?

O IronWord permite inserir imagens como elementos filhos dentro de parágrafos, proporcionando melhor hierarquia do documento e controle sobre a quebra de texto. Essa abordagem integra as imagens ao fluxo de texto circundante e oferece opções de posicionamento mais precisas em comparação com a adição de imagens sem um nó pai.

Qual é a maneira mais rápida de adicionar uma imagem a um documento do Word programaticamente?

O método mais rápido com o IronWord é criar uma instância de WordDocument, carregar sua imagem usando new ImageContent('photo.jpg'), chamar doc.AddImage(image) e salvar com doc.SaveAs('document-with-image.docx'). Esse processo simples de quatro etapas lida com todo o fluxo de trabalho de inserção de imagem.

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
Desenvolvedor Full Stack

Ahmad é um desenvolvedor full-stack com uma sólida base em C#, Python e tecnologias web. Ele tem um grande interesse em construir soluções de software escaláveis e gosta de explorar como design e funcionalidade se encontram em aplicações do mundo real.

...
Leia mais

Pronto para começar?

Nuget Downloads 56,401Versão:2026.9recém-lançado

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.
Biblioteca NuGet C# para PDF
Instalar com NuGet

Versão: 2026.9

PM > Install-Package IronWord
nuget.org/packages/IronWord/
  1. No Solution Explorer, clique com o botão direito do mouse em Referências e selecione Gerenciar Pacotes NuGet.
  2. Selecione Procurar e pesquise "IronWord".
  3. Selecione o pacote e instale.
DLL de PDF em C#
Baixar DLL

Versão: 2026.9

  1. Baixe e descompacte o IronWord em um local como ~/Libs dentro do diretório da sua solução.
  2. No Solution Explorer do Visual Studio, clique com o botão direito do mouse em Referências. Selecione Procurar e digite "IronWord.dll".

Licenças a partir de US$ 749

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua demonstração ao vivo gratuita.
Booking Badge

Aprovado por milhões de engenheiros em todo o mundo.

Logotipos dos clientes da Iron Software
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.