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ładzieInsertDocumentAtMailMergeHandler
class obsługuje logikę wstawiania pola „DocumentField” podczas korespondencji seryjnej.