V tomto krátkém článku s návody probereme podrobný postup extrahování obrázků z dokumentu Word v C#. Jako vstupní soubor pro získání obrázků použijeme DOCX. Můžete však také poskytnout dokument ve formátu DOC pro extrahování obrázků pomocí jazyka C#. Dále vytvoříme pracovní příklad, který vám ukáže, jak získat obrázky ze souboru Word pomocí C#.
Kroky k extrahování obrázků z dokumentu Word v C#
- Nainstalujte balíček GroupDocs.Parser for .NET z webu NuGet v projektu .NET a extrahujte obrázky z dokumentu Word
- Přidejte odkaz na potřebné jmenné prostory pro extrahování obrázků ze souboru aplikace Word
- Vytvořte instanci třídy Parser pro načtení vstupního dokumentu DOCX
- Zavolejte metodu GetImages třídy Parser pro shromažďování obrázků z dokumentu aplikace Word
- Iterujte sbírku obrázků a získejte velikost, typ a obsah obrázků
Ve výše uvedených bodech jsme vysvětlili každý krok k vytvoření funkce pro extrahování všech obrázků z dokumentu Word pomocí C#. Budete muset načíst zdrojový soubor aplikace Word inicializací třídy Parser po konfiguraci požadovaného balíčku ze správce balíčků NuGet a zahrnutí požadovaných jmenných prostorů do kódu. Poté vám GetImages umožní shromáždit objekty obrázků a poté můžete iterovat přes kolekci a zobrazit data obrázku.
Kód pro extrahování obrázků z dokumentu Word v C#
using System; | |
using System.Collections.Generic; | |
using System.Text; | |
using System.IO; | |
using GroupDocs.Parser; | |
using GroupDocs.Parser.Data; | |
namespace ExtractImagesFromWordDocumentInCSharp | |
{ | |
class Program | |
{ | |
public static void Main(string[] args) // Main function to extract images from word using C# | |
{ | |
// Remove the watermark in output | |
string licensePath = "GroupDocs.Parser.lic"; | |
GroupDocs.Parser.License lic = new GroupDocs.Parser.License(); | |
lic.SetLicense(licensePath); | |
// Create an instance of Parser class | |
using (Parser parser = new Parser("sample.docx")) | |
{ | |
// Extract images | |
IEnumerable<PageImageArea> images = parser.GetImages(); | |
// Check if images extraction is supported | |
if (images == null) | |
{ | |
Console.WriteLine("Images extraction isn't supported"); | |
return; | |
} | |
// Iterate over images | |
foreach (PageImageArea image in images) | |
{ | |
// Print a page index, rectangle and image type: | |
Console.WriteLine(string.Format("Page: {0}, R: {1}, Type: {2}", image.Page.Index, image.Rectangle, image.FileType)); | |
} | |
} | |
} | |
} | |
} |
V předchozím úryvku kódu je aplikace C# Image Extractor from Word vyvinuta pro demonstraci fungování této funkce. K extrahování obrázků nepoužíváme žádné nástroje třetích stran. Tato ukázka může být dále vylepšena podle vašich specifických požadavků a můžete ji také použít v jakémkoli operačním systému, jako je Windows, macOS a Linux.
V tomto příspěvku jsme diskutovali o procesu extrahování obrázků z dokumentů aplikace Word v C# a vyvinuli pro něj ukázkový kód. Nedávno jsme publikovali článek o extrahování textu z dokumentu Word v C#. Další informace naleznete v průvodci jak extrahovat text z dokumentu aplikace Word pomocí C#.