Extrahovat text z docx pomocí GroupDocs.Viewer pro Java
Hledáte, jak extrahovat text z docx souborů programově? Ať už potřebujete získat čísla stránek, zachytit každý řádek textu nebo vytvořit prohledávatelné indexy, ruční provádění může být časově náročné a náchylné k chybám. GroupDocs.Viewer for Java proces zjednodušuje tím, že poskytuje vysoce výkonné API, která čtou strukturu dokumentu a vrací čistá textová data.

Rychlé odpovědi
- Co znamená “extrahovat text z docx”? Znamená to programové čtení souboru DOCX a získání jeho čistého textového obsahu řádek po řádku.
- Která knihovna to řeší? GroupDocs.Viewer for Java poskytuje třídu
Viewera související API. - Potřebuji licenci? Bezplatná zkušební verze funguje pro hodnocení; placená licence je vyžadována pro produkci.
- Jaká verze Javy je požadována? Jakýkoli JDK 8 + kompatibilní s Mavenem.
- Mohu zpracovávat velké dávky? Ano—opakovým použitím instancí
Viewera zpracováním stránek ve streamu.
Co je “extrahovat text z docx”?
Extrahování textu z DOCX souboru znamená čtení vnitřní XML struktury dokumentu a vrácení čitelného textu bez formátování. To je užitečné pro indexování, vyhledávání nebo předávání obsahu do následných analytických pipeline.
Proč používat GroupDocs.Viewer pro Java?
- Přesnost: Zpracovává složité rozvržení, tabulky a dokumenty s více sloupci.
- Rychlost: Optimalizovaný renderovací engine, který funguje rychle i u velkých souborů.
- Podpora více formátů: Stejné API funguje pro PDF, PPTX, XLSX a další, takže můžete znovu použít kód.
- Žádné externí závislosti: Čistá Java, nevyžaduje nativní knihovny.
Požadavky
- Java Development Kit (JDK) 8 nebo novější.
- Maven nainstalovaný pro správu závislostí.
- DOCX soubor, který chcete analyzovat (umístěte jej do známé složky).
Nastavení GroupDocs.Viewer pro Java
Přidejte repozitář GroupDocs a závislost do vašeho pom.xml:
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/viewer/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-viewer</artifactId>
<version>25.2</version>
</dependency>
</dependencies>
Kroky získání licence
- Bezplatná zkuška: Stáhněte si bezplatnou zkušební verzi ze stránky ke stažení GroupDocs.
- Dočasná licence: Získejte dočasnou licenci pro rozšířené testování prostřednictvím stránky dočasné licence.
- Nákup: Pro plný přístup a podporu zvažte zakoupení licence přes portál pro nákup GroupDocs.
Základní inicializace
- Importujte požadované třídy.
- Vytvořte instanci
Viewer, která ukazuje na váš DOCX soubor. - Použijte
ViewInfoOptions.forPngView(true), abyste požádali o informace na úrovni stránky (metadata a řádky textu).
Jak extrahovat text z docx – Průvodce krok za krokem
1. Extrahování metadat stránky
Metadata stránky, jako je číslo stránky, jsou nezbytná, když potřebujete vytvořit navigační struktury nebo odkazovat na konkrétní sekce.
try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/SAMPLE_DOCX")) {
ViewInfoOptions viewInfoOptions = ViewInfoOptions.forPngView(true);
ViewInfo viewInfo = viewer.getViewInfo(viewInfoOptions);
for (Page page : viewInfo.getPages()) {
int pageNumber = page.getNumber();
System.out.println("Page: " + pageNumber); // Outputs the page number
}
}
ViewInfoOptions.forPngView(true): Instruuje API, aby sbíralo informace o stránce během přípravy PNG renderování.viewInfo.getPages(): Vrací kolekci, kde každý objektPageobsahuje své číslo a další metadata.
Tip: Uvolněte Viewer uvnitř bloku try‑with‑resources, aby se automaticky uvolnily nativní zdroje.
2. Extrahování řádků textu ze stránek
Nyní, když můžete identifikovat každou stránku, získáme skutečné řádky textu.
try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/SAMPLE_DOCX")) {
ViewInfoOptions viewInfoOptions = ViewInfoOptions.forPngView(true);
ViewInfo viewInfo = viewer.getViewInfo(viewInfoOptions);
for (Page page : viewInfo.getPages()) {
System.out.println("Page: " + page.getNumber());
System.out.println("Text lines:");
for (Line line : page.getLines()) {
String lineText = line.getValue();
System.out.print(lineText + "\t");
}
}
}
page.getLines(): Vrací seznam objektůLine, z nichž každý představuje jeden řádek textu tak, jak se zobrazuje na stránce.- Vnitřní smyčka vypisuje každý řádek, oddělený tabulátory pro čitelnost.
Běžné problémy a řešení
| Příznak | Pravděpodobná příčina | Řešení |
|---|---|---|
null čísla stránek | Dokument nebyl načten správně | Ověřte cestu k souboru a ujistěte se, že soubor existuje. |
| Žádné řádky textu nebyly vráceny | Nepodporovaný formát souboru | Zkontrolujte, že je verze DOCX podporována; v případě potřeby aktualizujte GroupDocs. |
OutOfMemoryError u velkých souborů | Viewer drží příliš mnoho stránek v paměti | Zpracovávejte stránky v menších dávkách nebo znovu použijte stejnou instanci Viewer. |
Praktické aplikace
- Indexování vyhledávače: Ukládejte čísla stránek spolu s extrahovaným textem, aby bylo možné přesně získat úryvky.
- Právní revize dokumentů: Získejte každý řádek pro automatizovanou detekci klauzulí nebo procesy redakce.
- Migrace obsahu: Přesuňte starší DOCX obsah do CMS při zachování struktury.
- Přehledové dashboardy: Shrňte klíčové sekce extrahováním nadpisů a odrážek.
Úvahy o výkonu
- Uvolňovat správně: Vždy zavřete
Viewer(použijte try‑with‑resources). - Dávkové zpracování: Při zpracování mnoha dokumentů znovu použijte jednu instanci
Viewerna vlákno, aby se snížila režie. - Možnosti renderování: Pokud potřebujete jen text, můžete přeskočit PNG renderování pomocí
ViewInfoOptions.forTextView()(neukázáno zde), čímž zkrátíte dobu zpracování.
Závěr
Nyní víte, jak extrahovat text z docx souborů pomocí GroupDocs.Viewer pro Java, získat čísla stránek a iterovat přes každý řádek textu. Tyto stavební bloky vám umožní vytvořit výkonné pipeline pro zpracování dokumentů, které jsou rychlé, spolehlivé a snadno udržovatelné.
Další kroky
- Experimentujte s dalšími formáty (PDF, PPTX) pomocí stejného API.
- Kombinujte extrahovaný text s full‑textovým vyhledávačem jako Elasticsearch.
- Prozkoumejte možnosti stylování pro renderované obrázky, pokud potřebujete i vizuální náhledy.
Často kladené otázky
Q: Jaké souborové formáty GroupDocs.Viewer podporuje?
A: Podporuje širokou škálu, včetně DOCX, PDF, XLSX, PPTX a mnoha dalších.
Q: Mohu přizpůsobit výstupní formát při extrahování řádků?
A: Ano, konfigurací ViewInfoOptions (např. forTextView() pro čistý text).
Q: Existuje limit na počet stránek, které lze zpracovat?
A: Neexistuje pevný limit, ale velmi velké dokumenty mohou vyžadovat dávkové zpracování pro úsporu paměti.
Q: Jak zacházet s výjimkami v GroupDocs.Viewer?
A: Zabalte svůj kód Viewer do bloků try‑catch a podle potřeby ošetřete ViewerException nebo obecnou IOException.
Q: Může tento nástroj integrovat s dalšími Java frameworky?
A: Rozhodně! Funguje bez problémů se Spring, Hibernate, Jakarta EE a dalšími.
Zdroje
- Dokumentace GroupDocs
- Reference API
- Stáhnout GroupDocs.Viewer
- Zakoupit licenci
- Stáhnout bezplatnou zkušební verzi
- Požadavek na dočasnou licenci
Poslední aktualizace: 2026-04-13
Testováno s: GroupDocs.Viewer for Java 25.2
Autor: GroupDocs