V různých případech je potřeba rozdělit dokument MS Word do více dokumentů. Můžete například potřebovat vytvořit samostatný dokument pro každou stránku, oddíl nebo kolekci stránek v dokumentu aplikace Word. Aby bylo možné automatizovat dělení dokumentů, tento článek popisuje, jak programově rozdělit MS Word DOCX pomocí Java. Následující části poskytují podrobný návod a ukázky kódu výše uvedených kritérií rozdělení.
- Java API pro rozdělení dokumentů aplikace Word
- Rozdělte Word DOCX/DOC pomocí Java
- Použijte rozsah stránek k rozdělení dokumentu aplikace Word
- Rozdělit dokument Word podle sekcí
- Získejte bezplatnou licenci API
Java API pro rozdělení Word DOCX
Aspose.Words for Java je výkonné a na funkce bohaté rozhraní API pro manipulaci s dokumenty, které umožňuje vytvářet a zpracovávat dokumenty MS Word. Kromě základních a pokročilých funkcí automatizace aplikace Word vám API také umožňuje rozdělit dokument aplikace Word na více dokumentů. Rozhraní API si můžete stáhnout nebo jej nainstalovat do své aplikace založené na Maven pomocí následujících konfigurací.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words</artifactId>
<version>21.1</version>
<classifier>jdk17</classifier>
</dependency>
Word Document Splitter - Helper Class
Než začnete rozdělovat dokumenty, budete muset do svého projektu přidat následující pomocnou třídu, která implementuje rozdělovač dokumentů Java založený na Aspose.Words for Java. Jakmile přidáte třídu, můžete přistoupit k rozdělení dokumentů pomocí ukázek kódu uvedených v sekcích níže.
Rozdělte Word DOCX pomocí Java
Nejprve se podívejme, jak rozdělit dokument MS Word podle stránek. V tomto případě bude každá stránka zdrojového dokumentu převedena na samostatný dokument aplikace Word. Následují kroky k rozdělení stránek dokumentu aplikace Word.
- Načtěte dokument aplikace Word pomocí třídy Document.
- Vytvořte objekt PageSplitter a inicializujte jej objektem Document.
- Procházejte stránky v dokumentu.
- Pomocí metody PageSplitter.getDocumentOfPage(Int pageIndex) načtěte každou stránku do objektu Document.
- Uložte dokument pomocí metody Document.save(String).
Následující ukázka kódu ukazuje, jak rozdělit dokument aplikace Word pomocí jazyka Java.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-words/Aspose.Words-for-Java
// Otevřete dokument aplikace Word
Document doc = new Document("Word.docx");
// Rozdělte uzly v dokumentu na samostatné stránky
DocumentPageSplitter splitter = new DocumentPageSplitter(doc);
// Uložte každou stránku jako samostatný dokument
for (int page = 1; page <= doc.getPageCount(); page++)
{
Document pageDoc = splitter.getDocumentOfPage(page);
pageDoc.save("SplitDocumentByPage_" + page + ".docx");
}
Použijte rozsah stránek k rozdělení Word DOCX v Javě
Můžete také definovat rozsah stránek, který chcete rozdělit ze zdrojového dokumentu aplikace Word. Následují kroky k provedení této operace.
- Načtěte dokument aplikace Word pomocí třídy Document.
- Vytvořte objekt PageSplitter a inicializujte jej objektem Document.
- Použijte metodu PageSplitter.getDocumentOfPageRange(Int, Int) k načtení kolekce stránek do objektu Document.
- Uložte dokument pomocí metody Document.save(String).
Následující ukázka kódu ukazuje, jak rozdělit dokument aplikace Word podle rozsahu stránek pomocí jazyka Java.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-words/Aspose.Words-for-Java
// Otevřete dokument aplikace Word
Document doc = new Document("Word.docx");
// Rozdělte uzly v dokumentu na samostatné stránky
DocumentPageSplitter splitter = new DocumentPageSplitter(doc);
// Získejte část dokumentu
Document pageDoc = splitter.getDocumentOfPageRange(3,6);
pageDoc.save("SplitDocumentByPageRange.docx");
Rozdělte dokument Word podle sekcí pomocí Java
Aspose.Words for Java vám také umožňuje rozdělit dokument aplikace Word podle konců oddílů. Následují kroky k provedení této operace.
- Načtěte dokument aplikace Word pomocí třídy Document.
- Procházejte každou sekci dokumentu pomocí metody Document.getSections().
- Klonujte sekci do objektu Section pomocí metody Document.getSections().get(index).deepClone().
- Vytvořte nový dokument a přidejte do něj klonovanou sekci pomocí metody Document.getSections().add(Section).
- Uložte dokument pomocí metody Document.save(String).
Následující ukázka kódu ukazuje, jak rozdělit dokument aplikace Word podle sekcí pomocí jazyka Java.
// Načtěte dokument Word DOCX
Document doc = new Document("word.docx");
for (int i = 0; i < doc.getSections().getCount(); i++) {
// Rozdělte dokument na menší části, v tomto případě rozdělené podle sekcí
Section section = doc.getSections().get(i).deepClone();
// Vytvořte nový dokument
Document newDoc = new Document();
newDoc.getSections().clear();
// Přidat sekci
Section newSection = (Section) newDoc.importNode(section, true);
newDoc.getSections().add(newSection);
// Uložte každou sekci jako samostatný dokument
newDoc.save("splitted_" + i + ".docx");
}
Získejte bezplatnou licenci API
Můžete získat bezplatnou dočasnou licenci a vyzkoušet API bez omezení hodnocení.
Závěr
V tomto článku jste se naučili, jak rozdělit MS Word DOCX/DOC pomocí Java. Průvodce krok za krokem a ukázky kódu ukázaly, jak rozdělit dokument aplikace Word podle oddílů, stránek nebo rozsahu stránek. Více o Java Word API můžete prozkoumat pomocí dokumentace.