
Dokumenty Microsoft Word jsou základem pro vytváření a sdílení textového obsahu. Pokud vyvíjíte C# aplikace, které interagují s dokumenty Word, možná budete potřebovat extrahovat text z dokumentů Word pomocí C# v ASP.NET a přitom zajistit, aby bylo formátování zachováno. Ať už analyzujete text, extrahujete konkrétní části nebo kombinujete obsah do jednoho dokumentu, tato příručka vám ukáže, jak efektivně extrahovat text z dokumentů Word pomocí nejlepší C# knihovny pro extrakci textu z dokumentů Word.
Obsah
- C# Knihovna pro extrakci textu z dokumentů Word
- Porozumění extrakci textu v dokumentech Word
- Extrahování textu z dokumentu Word
C# Knihovna pro extrakci textu z dokumentů Word
Aspose.Words for .NET je funkčně bohatá, snadno použitelná knihovna navržená pro práci s dokumenty Word. Poskytuje komplexní sadu funkcionalit, včetně extrakce textu z dokumentů Word v .NET, vytváření, manipulaci a konverzi dokumentů. Aspose.Words for .NET je neocenitelným nástrojem pro vývojáře, kteří hledají efektivní extrakci textu z Wordu v C#.
Můžete stáhnout DLL nebo nainstalovat knihovnu přímo z NuGet pomocí konzoly správce balíčků:
PM> Install-Package Aspose.Words
Porozumění extrakci textu v dokumentech Word
Dokument MS Word se skládá z různých prvků, jako jsou odstavce, tabulky a obrázky. Požadavky na extrakci textu se tedy mohou lišit v závislosti na scénáři. Například můžete potřebovat extrahovat text z naskenovaného dokumentu Word v C# nebo extrahovat text z Word souboru pomocí C# .NET. Každý prvek v dokumentu Word je reprezentován jako uzel, se kterým budete pracovat během procesu extrakce. Pojďme prozkoumat, jak extrahovat text z dokumentů Word a efektivně zpracovávat formátování při extrakci textu v C#.
Extrahování textu z dokumentu Word
V této části implementujeme C# extraktor textu pro dokumenty Word. Pracovní postup pro extrakci textu zahrnuje:
- Definování uzlů, které budou zahrnuty do procesu extrakce textu.
- Extrakce obsahu mezi zadanými uzly (včetně nebo vyloučení počátečních a koncových uzlů).
- Klonování extrahovaných uzlů pro vytvoření nového dokumentu Word obsahujícího extrahovaný obsah.
Vytvořme metodu nazvanou ExtractContent, která přijme uzly a další parametry pro extrakci textu. Tato metoda zpracuje dokument a klonuje uzly. Zde jsou parametry, které předáme metodě:
- StartNode a EndNode slouží jako počáteční a koncové body pro extrakci obsahu. Tyto mohou být blokové (např. Paragraph, Table) nebo inline uzly (např. Run, FieldStart, BookmarkStart, atd.).
- Pro pole předávejte odpovídající objekt FieldStart.
- Pro záložky použijte uzly BookmarkStart a BookmarkEnd.
- Pro komentáře využijte uzly CommentRangeStart a CommentRangeEnd.
- IsInclusive určuje, zda jsou značky zahrnuty v extrakci. Pokud je nastavena na false a jsou předány stejné nebo po sobě jdoucí uzly, bude vrácen prázdný seznam.
Úplná implementace metody ExtractContent, která přesně extrahuje text z chráněných dokumentů Word v C#, je následující:
Dále jsou potřeba některé pomocné metody, které vyžaduje metoda ExtractContent pro usnadnění operace extrakce textu:
Nyní jsme připraveni využít tyto metody a extrahovat text z dokumentů Word pomocí C#.
Extrahování textu mezi odstavci dokumentu Word
Pro extrakci obsahu mezi dvěma odstavci v dokumentu Word DOCX postupujte podle těchto kroků:
- Načtěte dokument Word pomocí třídy Document.
- Odkazujte na počáteční a koncové odstavce pomocí metody Document.FirstSection.Body.GetChild(NodeType.PARAGRAPH, int, boolean).
- Zavolejte metodu ExtractContent(startPara, endPara, true) pro extrakci uzlů do objektu.
- Použijte pomocnou metodu GenerateDocument(Document, extractedNodes) pro vytvoření dokumentu obsahujícího extrahovaný obsah.
- Nakonec uložte vrácený dokument pomocí metody Document.Save(string).
Zde je ukázka kódu, která demonstruje, jak extrahovat text z velkých Word souborů extrakcí obsahu mezi 7. a 11. odstavcem:
Extrahování textu mezi různými typy uzlů
Také můžete extrahovat obsah mezi různými typy uzlů. Například, extrahujme obsah mezi odstavcem a tabulkou a uložme ho do nového dokumentu Word. Postupujte podle těchto kroků:
- Načtěte dokument Word pomocí třídy Document.
- Odkazujte na počáteční a koncové uzly pomocí metody Document.FirstSection.Body.GetChild(NodeType, int, boolean).
- Zavolejte metodu ExtractContent(startPara, endPara, true) pro extrakci uzlů do objektu.
- Použijte pomocnou metodu GenerateDocument(Document, extractedNodes) pro vytvoření dokumentu obsahujícího extrahovaný obsah.
- Uložte vrácený dokument pomocí metody Document.Save(string).
Zde je ukázka kódu, která ilustruje, jak extrahovat text mezi odstavcem a tabulkou v C#:
Extrahování textu mezi odstavci na základě stylů
Nyní prozkoumejme, jak extrahovat obsah mezi odstavci na základě stylů. V tomto příkladu extrahujeme obsah mezi prvním “Nadpisem 1” a prvním “Nadpisem 3” v dokumentu Word. Postupujte podle těchto kroků:
- Načtěte dokument Word pomocí třídy Document.
- Extrahujte odstavce do objektu pomocí pomocné metody ParagraphsByStyleName(Document, “Heading 1”).
- Extrahujte odstavce do dalšího objektu pomocí pomocné metody ParagraphsByStyleName(Document, “Heading 3”).
- Zavolejte metodu ExtractContent(startPara, endPara, true), přičemž předáte první prvky v obou polích odstavců jako parametry.
- Použijte pomocnou metodu GenerateDocument(Document, extractedNodes) pro vytvoření dokumentu obsahujícího extrahovaný obsah.
- Nakonec uložte vrácený dokument pomocí metody Document.Save(string).
Zde je ukázka kódu, která demonstruje, jak extrahovat obsah mezi odstavci na základě stylů:
Další informace o extrakci textu
Prozkoumejte další scénáře .NET API pro extrakci textu z dokumentů Word v tomto dokumentačním článku.
Získejte zdarma knihovnu pro extrakci textu z Wordu
Můžete získat bezplatnou dočasnou licenci pro extrakci textu bez omezení hodnocení.
Závěr
Aspose.Words for .NET je všestranná knihovna, která zjednodušuje proces extrakce textu z Wordu v C# při zachování formátování. S jejími rozsáhlými funkcemi a uživatelsky přívětivým API můžete efektivně pracovat s dokumenty Word a automatizovat různé scénáře zahrnující zpracování speciálních znaků během extrakce textu z Wordu v C#. Ať už vyvíjíte aplikace, které potřebují zpracovávat dokumenty Word, nebo jednoduše extrahujete text, Aspose.Words for .NET je cenným nástrojem pro vývojáře.
Prozkoumejte další funkce Aspose.Words for .NET prostřednictvím dokumentace. Pokud máte jakékoli dotazy, neváhejte se obrátit na naše forum.
Viz také
Tip: Měli byste se také podívat na Aspose PowerPoint do Word Converter, který demonstruje populární proces konverze prezentace na dokument Word.