Última Atualização:** 2026-03-14
Testado Com: GroupDocs.Editor para .NET (última versão)
Autor: GroupDocs

Make sure to keep markdown formatting.

Now produce final content.# Extrair Imagens de DOCX – Uso Avançado de Documentos Editáveis

Se você é um desenvolvedor .NET que deseja extrair imagens de DOCX e aprimorar suas capacidades de edição de documentos, o GroupDocs.Editor para .NET oferece um conjunto poderoso de ferramentas. Este guia abrangente o conduzirá pelo uso avançado de documentos editáveis usando o GroupDocs.Editor, detalhando cada passo para que você possa aproveitar todo o seu potencial.

Respostas Rápidas

  • Como posso extrair imagens de um arquivo DOCX? Use EditableDocument.Images após carregar o documento com Editor.
  • Posso converter DOCX para HTML com recursos incorporados? Sim—chame EditableDocument.GetEmbeddedHtml() ou GetContent() para obter a marcação HTML.
  • Qual método salva o documento editado como HTML? EditableDocument.Save(htmlFilePath) cria um arquivo HTML com uma pasta de recursos.
  • É possível extrair fontes de um documento Word? Use EditableDocument.Fonts para recuperar todos os recursos de fontes.
  • Preciso de uma licença para uso em produção? É necessária uma licença válida do GroupDocs.Editor; uma avaliação gratuita está disponível.

O que é extract images from docx?

Extrair imagens de um arquivo DOCX significa recuperar programaticamente cada imagem incorporada no documento Word para que você possa reutiliz‑las, modificá‑las ou armazená‑las separadamente. O GroupDocs.Editor expõe a coleção Images em uma instância de EditableDocument, tornando essa tarefa simples.

Por que usar o GroupDocs.Editor para este fluxo de trabalho?

  • Controle total sobre os recursos do documento (imagens, fontes, CSS) sem manipulação manual de ZIP.
  • Conversão perfeita de DOCX para HTML preservando layout e estilo.
  • Extração fácil de recursos para manipulação personalizada de imagens, incorporação de fontes ou entrega via CDN.
  • Padrão robusto de descarte garante que não haja vazamentos de memória em serviços de longa duração.

Pré‑requisitos

  • Visual Studio instalado na sua máquina de desenvolvimento.
  • .NET Framework compatível com o GroupDocs.Editor.
  • Biblioteca GroupDocs.Editor para .NET. Você pode baixá‑la aqui.
  • Uma licença válida do GroupDocs.Editor. Você pode obter uma avaliação gratuita ou comprar uma licença temporária.

Importar Namespaces

Para começar, certifique‑se de importar os namespaces necessários no seu projeto .NET:

using System;
using System.Collections.Generic;
using System.IO;
using GroupDocs.Editor.HtmlCss.Resources;
using GroupDocs.Editor.HtmlCss.Resources.Fonts;
using GroupDocs.Editor.HtmlCss.Resources.Images;
using GroupDocs.Editor.HtmlCss.Resources.Textual;
using GroupDocs.Editor.Options;

Etapa 1: Criando uma Instância de EditableDocument

Primeiro, você precisa criar uma instância de EditableDocument carregando e editando um documento de entrada em um formato suportado.

string inputFilePath = "YourSampleDocument.docx";
Editor editor = new Editor(inputFilePath, delegate { return new WordProcessingLoadOptions(); });
EditableDocument beforeEdit = editor.Edit(new WordProcessingEditOptions());

Nesta etapa, carregamos o documento de entrada e o preparamos para edição.

Como extract images from DOCX?

A seguir, exploramos as capacidades de extração de recursos, começando com a necessidade mais comum — obter todas as imagens de um arquivo Word.

Etapa 2: Extraindo Recursos do Documento

O EditableDocument contém vários recursos que podem ser extraídos e manipulados. Vamos detalhá‑los:

Etapa 2.1: Extrair Documento Inteiro como HTML

Você pode gerar uma única string que contém todo o documento com todos os seus recursos incorporados como HTML.

string allAsHtmlInsideOneString = beforeEdit.GetEmbeddedHtml();

Esta string será bastante grande, pois inclui folhas de estilo, imagens e fontes codificadas em base64.

Etapa 2.2: Extrair Todas as Imagens (palavra‑chave principal em ação)

Extraia todas as imagens do documento — este é o núcleo de extract images from docx.

List<IImageResource> allImages = beforeEdit.Images;

Etapa 2.3: Extrair Todas as Fontes (palavra‑chave secundária)

Se você também precisar extract fonts from word, use a chamada a seguir:

List<FontResourceBase> allFonts = beforeEdit.Fonts;

Etapa 2.4: Extrair Todas as Folhas de Estilo

Extraia todas as folhas de estilo em formato textual.

List<CssText> allStylesheets = beforeEdit.Css;

Etapa 2.5: Reunir Todos os Recursos

Reúna todos os recursos em uma única chamada.

List<IHtmlResource> allResources = beforeEdit.AllResources;

Isso inclui imagens, fontes e folhas de estilo.

Etapa 2.6: Obter Marcações HTML

Obtenha a marcação HTML do documento sem recursos incorporados.

string htmlMarkup = beforeEdit.GetContent();

Como convert docx to html com tratamento personalizado?

Às vezes, você precisa ajustar links externos para que apontem para seus próprios manipuladores de recursos.

Etapa 3.1: Preparar Prefixos Personalizados

Prepare prefixos que serão adicionados antes dos links externos originais.

string customImagesRequesthandlerUri = "http://example.com/ImagesHandler/id=";
string customCssRequesthandlerUri = "http://example.com/CssHandler/id=";
string customFontsRequesthandlerUri = "http://example.com/FontsHandler/id=";

Etapa 3.2: Gerar Marcações HTML com Prefixo

Gere marcações HTML com links ajustados.

string prefixedHtmlMarkup = beforeEdit.GetContent(customImagesRequesthandlerUri, customCssRequesthandlerUri);

Etapa 3.3: Obter Conteúdo HTML Apenas do Corpo

Alguns editores WYSIWYG lidam apenas com marcação HTML pura sem cabeçalhos.

string onlyBodyContent = beforeEdit.GetBodyContent();

Etapa 3.4: Conteúdo Apenas do Corpo com Prefixo

Gere conteúdo apenas do corpo com prefixos de imagem personalizados.

string prefixedBodyContent = beforeEdit.GetBodyContent(customImagesRequesthandlerUri);

Etapa 3.5: Extrair Folhas de Estilo

Extraia as folhas de estilo usadas no documento.

List<string> stylesheets = beforeEdit.GetCssContent();

Etapa 3.6: Folhas de Estilo com Prefixo

Extraia as folhas de estilo com prefixos personalizados.

List<string> prefixedStylesheets = beforeEdit.GetCssContent(customImagesRequesthandlerUri, customFontsRequesthandlerUri);

Como save document as html corretamente?

Etapa 4: Salvar Documento como HTML

Salve o documento editado como um arquivo HTML, incluindo seus recursos.

string htmlFilePath = Path.Combine("output", Path.GetFileNameWithoutExtension(inputFilePath) + ".html");
beforeEdit.Save(htmlFilePath);

Este método cria um diretório separado para recursos como folhas de estilo, imagens e fontes.

Etapa 5: Descartando EditableDocument

EditableDocument implementa IDisposable e fornece a capacidade de verificar se a instância foi descartada.

Console.WriteLine("EditableDocument is {0} disposed", !beforeEdit.IsDisposed ? "not" : "already");

Etapa 5.1 Manipulando Evento Dispose

Você também pode assinar o evento de descarte.

EventHandler someMethod = delegate { Console.WriteLine("Disposing event was spotted!"); };
beforeEdit.Disposed += someMethod;

Etapa 6: Criando EditableDocument a partir de HTML

Crie uma instância de EditableDocument a partir de um documento HTML.

Etapa 6.1: A partir de Arquivo HTML

EditableDocument afterEditFromFile = EditableDocument.FromFile(htmlFilePath, null);

Etapa 6.2: A partir de Marcações HTML

EditableDocument afterEditFromMarkup = EditableDocument.FromMarkup(htmlMarkup, allResources);

Essas instâncias (afterEditFromFile e afterEditFromMarkup) são idênticas à original (beforeEdit).

Etapa 7: Descarte Manual

Descarte manualmente suas instâncias de EditableDocument.

beforeEdit.Dispose();
afterEditFromFile.Dispose();
afterEditFromMarkup.Dispose();
editor.Dispose();

Isso garante a limpeza adequada dos recursos.

Problemas Comuns e Soluções

  • Imagens não aparecem após a extração: Verifique se o documento realmente contém imagens incorporadas e se você está acessando beforeEdit.Images após chamar Edit.
  • Fontes ausentes na saída HTML: Certifique‑se de chamar GetCssContent(customImagesRequesthandlerUri, customFontsRequesthandlerUri) para incorporar URLs de fontes corretamente.
  • Strings HTML grandes causando pressão de memória: Use GetContent() para marcação sem recursos incorporados e sirva imagens/CSS a partir de arquivos separados.

Perguntas Frequentes

Q: Quais formatos o GroupDocs.Editor suporta?
A: O GroupDocs.Editor suporta DOCX, XLSX, PPTX e muitos outros formatos de escritório populares.

Q: Posso usar o GroupDocs.Editor sem uma licença?
A: Sim, você pode usá‑lo com uma avaliação gratuita ou uma licença temporária.

Q: Como extraio recursos específicos de um documento?
A: Use as coleções Images, Fonts e Css na instância EditableDocument.

Q: É possível ajustar links na saída HTML?
A: Sim, passe prefixos de URI personalizados para GetContent ou GetBodyContent para reescrever links de imagem, CSS e fonte.

Q: Como salvo um documento editado como um arquivo HTML?
A: Chame o método Save na instância EditableDocument, fornecendo um caminho de arquivo que termine com .html.


Última Atualização: 2026-03-14
Testado Com: GroupDocs.Editor para .NET (última versão)
Autor: GroupDocs