Sisipkan dan Lampirkan Dokumen

Terkadang diperlukan untuk menggabungkan beberapa dokumen menjadi satu. Anda dapat melakukan ini secara manual atau Anda dapat menggunakan fitur penyisipan atau penambahan Aspose.Words.

Operasi penyisipan memungkinkan Anda memasukkan konten dokumen yang dibuat sebelumnya ke dalam dokumen baru atau yang sudah ada.

Pada gilirannya, fitur tambahkan memungkinkan Anda menambahkan dokumen hanya di akhir dokumen lain.

Artikel ini menjelaskan cara menyisipkan atau menambahkan dokumen ke dokumen lain dengan berbagai cara dan menjelaskan properti umum yang dapat Anda terapkan saat menyisipkan atau menambahkan dokumen.

Masukkan Dokumen

Seperti disebutkan di atas, di Aspose.Words, sebuah dokumen direpresentasikan sebagai pohon node, dan operasi memasukkan satu dokumen ke dokumen lain adalah menyalin node dari pohon dokumen pertama ke pohon dokumen kedua.

Anda dapat menyisipkan dokumen di berbagai lokasi dengan cara berbeda. Misalnya, Anda bisa menyisipkan dokumen melalui operasi penggantian, bidang penggabungan selama operasi penggabungan, atau melalui penanda.

Anda juga dapat menggunakan metode InsertDocument atau InsertDocumentInline, yang mirip dengan menyisipkan dokumen dalam Microsoft Word, untuk menyisipkan seluruh dokumen pada posisi kursor saat ini tanpa perlu mengimpor sebelumnya.

Contoh kode berikut menunjukkan cara menyisipkan dokumen menggunakan metode InsertDocument:

Contoh kode berikut menunjukkan cara menyisipkan dokumen menggunakan metode InsertDocumentInline:

Subbagian berikut menjelaskan opsi di mana Anda dapat menyisipkan satu dokumen ke dokumen lain.

Masukkan Dokumen Selama Operasi Temukan dan Ganti

Anda dapat menyisipkan dokumen saat melakukan operasi pencarian dan penggantian. Misalnya, sebuah dokumen dapat berisi paragraf dengan teks [PENDAHULUAN] dan [KESIMPULAN]. Namun di dokumen akhir, Anda perlu mengganti paragraf tersebut dengan konten yang diperoleh dari dokumen eksternal lain. Untuk mencapai hal tersebut, Anda perlu membuat handler untuk event replace.

Contoh kode berikut menunjukkan cara membuat handler untuk event pengganti untuk digunakan nanti dalam proses penyisipan:

Contoh kode berikut menunjukkan cara memasukkan konten dari satu dokumen ke dokumen lain selama operasi pencarian dan penggantian:

Masukkan Dokumen Selama Operasi Mail Merge

Anda dapat menyisipkan dokumen ke dalam bidang gabungan selama operasi mail merge. Misalnya, templat mail merge bisa berisi bidang gabungan seperti [Ringkasan]. Namun di dokumen akhir, Anda perlu memasukkan konten yang diperoleh dari dokumen eksternal lain ke dalam bidang gabungan ini. Untuk mencapai hal tersebut, Anda perlu membuat handler untuk acara penggabungan.

Contoh kode berikut menunjukkan cara membuat handler untuk peristiwa penggabungan untuk digunakan nanti dalam proses penyisipan:

Contoh kode berikut menunjukkan cara menyisipkan dokumen ke dalam bidang gabungan menggunakan pengendali yang dibuat:

Masukkan Dokumen di Bookmark

Anda dapat mengimpor file teks ke dalam dokumen dan menyisipkannya tepat setelah penanda yang telah Anda tetapkan dalam dokumen. Untuk melakukan ini, buat paragraf yang diberi bookmark di mana Anda ingin dokumen disisipkan.

Contoh pengkodean berikut menunjukkan cara menyisipkan konten satu dokumen ke bookmark di dokumen lain:

Tambahkan Dokumen

Anda mungkin memiliki kasus penggunaan di mana Anda perlu menyertakan halaman tambahan dari dokumen ke akhir dokumen yang sudah ada. Untuk melakukan ini, Anda hanya perlu memanggil metode AppendDocument untuk menambahkan dokumen ke akhir dokumen lainnya.

Contoh kode berikut menunjukkan cara menambahkan dokumen ke akhir dokumen lain:

Impor dan Sisipkan Node Secara Manual

Aspose.Words memungkinkan Anda menyisipkan dan menambahkan dokumen secara otomatis tanpa persyaratan impor sebelumnya. Namun, jika Anda perlu menyisipkan atau menambahkan simpul tertentu pada dokumen Anda, seperti bagian atau paragraf, Anda harus mengimpor simpul tersebut secara manual terlebih dahulu.

Saat Anda perlu menyisipkan atau menambahkan satu bagian atau paragraf ke bagian atau paragraf lainnya, pada dasarnya Anda perlu mengimpor node dari pohon simpul dokumen pertama ke bagian atau paragraf kedua menggunakan metode ImportNode. Setelah mengimpor node, Anda perlu menggunakan metode InsertAfter/InsertBefore untuk memasukkan node baru setelah/sebelum node referensi. Hal ini memungkinkan Anda untuk menyesuaikan proses penyisipan dengan mengimpor node dari dokumen dan menyisipkannya pada posisi tertentu.

Anda juga dapat menggunakan metode AppendChild untuk menambahkan simpul baru yang ditentukan ke akhir daftar simpul anak, misalnya, jika Anda ingin menambahkan konten di tingkat paragraf, bukan di tingkat bagian.

Contoh kode berikut menunjukkan cara mengimpor node secara manual dan menyisipkannya setelah node tertentu menggunakan metode InsertAfter:

Konten diimpor ke dokumen tujuan bagian demi bagian, yang berarti bahwa pengaturan, seperti pengaturan halaman dan header atau footer, dipertahankan selama impor. Penting juga untuk dicatat bahwa Anda dapat menentukan pengaturan pemformatan saat Anda menyisipkan atau menambahkan dokumen untuk menentukan bagaimana dua dokumen digabungkan.

Properti Umum untuk Menyisipkan dan Menambahkan Dokumen

Metode InsertDocument dan AppendDocument menerima ImportFormatMode dan ImportFormatOptions sebagai parameter masukan. ImportFormatMode memungkinkan Anda mengontrol bagaimana pemformatan dokumen digabungkan saat Anda mengimpor konten dari satu dokumen ke dokumen lain dengan memilih mode format berbeda seperti UseDestinationStyles, KeepSourceFormatting, dan KeepDifferentStyles. ImportFormatOptions memungkinkan Anda memilih opsi impor yang berbeda seperti IgnoreHeaderFooter, IgnoreTextBoxes, KeepSourceNumbering, MergePastedLists, dan SmartStyleBehavior.

Aspose.Words memungkinkan Anda menyesuaikan visualisasi dokumen yang dihasilkan ketika dua dokumen ditambahkan bersama dalam operasi penyisipan atau penambahan dengan menggunakan properti Section dan PageSetup. Properti PageSetup berisi semua atribut suatu bagian seperti SectionStart, RestartPageNumbering, PageStartingNumber, Orientation, dan lain-lain. Kasus penggunaan yang paling umum adalah menyetel properti SectionStart untuk menentukan apakah konten yang ditambahkan akan muncul di halaman yang sama atau dipecah menjadi halaman baru.

Contoh kode berikut menunjukkan cara menambahkan satu dokumen ke dokumen lain sambil menjaga agar konten tidak terpecah menjadi dua halaman: