Klonowanie i łączenie dokumentów w Aspose.Words dla Java

Wprowadzenie do klonowania i łączenia dokumentów w Aspose.Words dla Java

W tym samouczku przyjrzymy się, jak klonować i łączyć dokumenty za pomocą Aspose.Words dla Java. Omówimy różne scenariusze, w tym klonowanie dokumentu, wstawianie dokumentów w punktach zamiany, zakładkach i podczas operacji korespondencji seryjnej.

Krok 1: Klonowanie dokumentu

Aby sklonować dokument w Aspose.Words dla Java, możesz użyćdeepClone() metoda. Oto prosty przykład:

Document doc = new Document("Your Directory Path" + "Document.docx");
Document clone = doc.deepClone();
clone.save("Your Directory Path" + "CloneAndCombineDocuments.CloningDocument.docx");

Ten kod utworzy głęboki klon oryginalnego dokumentu i zapisze go jako nowy plik.

Krok 2: Wstawianie dokumentów w punktach zamiany

Możesz wstawiać dokumenty w określonych punktach zamiany w innym dokumencie. Oto jak możesz to zrobić:

Document mainDoc = new Document("Your Directory Path" + "Document insertion 1.docx");
FindReplaceOptions options = new FindReplaceOptions();
options.setDirection(FindReplaceDirection.BACKWARD);
options.setReplacingCallback(new InsertDocumentAtReplaceHandler());
mainDoc.getRange().replace(Pattern.compile("\\[MY_DOCUMENT\\]"), "", options);
mainDoc.save("Your Directory Path" + "CloneAndCombineDocuments.InsertDocumentAtReplace.docx");

W tym przykładzie używamy aFindReplaceOptions obiekt, aby określić procedurę obsługi wywołania zwrotnego dla zamiany. TheInsertDocumentAtReplaceHandler klasa obsługuje logikę wstawiania.

Krok 3: Wstawianie dokumentów w zakładkach

Aby wstawić dokument w określonej zakładce w innym dokumencie, możesz użyć następującego kodu:

Document mainDoc = new Document("Your Directory Path" + "Document insertion 1.docx");
Document subDoc = new Document("Your Directory Path" + "Document insertion 2.docx");
Bookmark bookmark = mainDoc.getRange().getBookmarks().get("insertionPlace");
insertDocument(bookmark.getBookmarkStart().getParentNode(), subDoc);
mainDoc.save("Your Directory Path" + "CloneAndCombineDocuments.InsertDocumentAtBookmark.docx");

Tutaj znajdujemy zakładkę według nazwy i używamyinsertDocument metoda wstawiania zawartości plikusubDoc dokument w miejscu zakładki.

Krok 4: Wstawianie dokumentów podczas korespondencji seryjnej

Możesz wstawiać dokumenty podczas operacji korespondencji seryjnej w Aspose.Words for Java. Oto jak:

Document mainDoc = new Document("Your Directory Path" + "Document insertion 1.docx");
mainDoc.getMailMerge().setFieldMergingCallback(new InsertDocumentAtMailMergeHandler());
mainDoc.getMailMerge().execute(new String[] { "Document_1" }, new Object[] { "Your Directory Path" + "Document insertion 2.docx" });
mainDoc.save("Your Directory Path" + "CloneAndCombineDocuments.InsertDocumentAtMailMerge.doc");

W tym przykładzie ustawiamy wywołanie zwrotne scalania pól za pomocąInsertDocumentAtMailMergeHandler klasa do obsługi wstawiania dokumentu określonego w polu „Dokument_1”.

Wniosek

Klonowanie i łączenie dokumentów w Aspose.Words for Java można przeprowadzić przy użyciu różnych technik. Niezależnie od tego, czy chcesz sklonować dokument, wstawić treść w punktach zamiany, zakładkach, czy podczas korespondencji seryjnej, Aspose.Words zapewnia zaawansowane funkcje do płynnego manipulowania dokumentami.

Często zadawane pytania

Jak sklonować dokument w Aspose.Words dla Java?

Możesz sklonować dokument w Aspose.Words dla Java za pomocądeepClone() metoda. Oto przykład:

Document doc = new Document("Your Directory Path" + "Document.docx");
Document clone = doc.deepClone();
clone.save("Your Directory Path" + "ClonedDocument.docx");

Jak wstawić dokument w zakładce?

Aby wstawić dokument do zakładki w Aspose.Words for Java, możesz znaleźć zakładkę według nazwy, a następnie użyćinsertDocument sposób wstawiania treści. Oto przykład:

Document mainDoc = new Document("Your Directory Path" + "MainDocument.docx");
Document subDoc = new Document("Your Directory Path" + "SubDocument.docx");
Bookmark bookmark = mainDoc.getRange().getBookmarks().get("MyBookmark");
insertDocument(bookmark.getBookmarkStart().getParentNode(), subDoc);
mainDoc.save("Your Directory Path" + "CombinedDocument.docx");

Jak wstawiać dokumenty podczas korespondencji seryjnej w Aspose.Words dla Java?

Możesz wstawiać dokumenty podczas korespondencji seryjnej w Aspose.Words for Java, ustawiając wywołanie zwrotne scalania pól i określając dokument, który ma zostać wstawiony. Oto przykład:

Document mainDoc = new Document("Your Directory Path" + "MainDocument.docx");
mainDoc.getMailMerge().setFieldMergingCallback(new InsertDocumentAtMailMergeHandler());
mainDoc.getMailMerge().execute(new String[] { "DocumentField" }, new Object[] { "Your Directory Path" + "DocumentToInsert.docx" });
mainDoc.save("Your Directory Path" + "MergedDocument.docx");

W tym przykładzieInsertDocumentAtMailMergeHandlerclass obsługuje logikę wstawiania pola „DocumentField” podczas korespondencji seryjnej.