Buat Tabel
Aspose.Words memungkinkan pengguna membuat tabel dalam dokumen dari awal dan menyediakan beberapa metode berbeda untuk melakukannya. Artikel ini menyajikan detail tentang cara menambahkan tabel berformat ke dokumen Anda menggunakan setiap metode, serta perbandingan setiap metode di akhir artikel.
Gaya Tabel Default
Tabel yang baru dibuat diberi nilai default yang serupa dengan yang digunakan di Microsoft Word:
Properti Tabel | Bawaan dalam Aspose.Words |
---|---|
Border Style |
Single |
Border Width |
1/2 pt |
Warna Batas | Black |
Left and Right Padding |
5.4 pts |
AutoFit Mode |
AutoFit to Window |
Allow AutoFit |
True |
Sebuah tabel dapat sebaris jika diposisikan dengan rapat, atau mengambang jika dapat diposisikan di mana saja di halaman. Secara default, Aspose.Words selalu membuat tabel sebaris.
|
Buat Tabel dengan DocumentBuilder
Di Aspose.Words, pengguna dapat membuat tabel dalam dokumen menggunakan DocumentBuilder. Algoritma dasar untuk membuat tabel adalah sebagai berikut:
- Mulai tabel dengan StartTable
- Tambahkan sel ke tabel menggunakan InsertCell - ini secara otomatis memulai baris baru
- Secara opsional, gunakan properti CellFormat untuk menentukan pemformatan sel
- Sisipkan konten sel menggunakan metode DocumentBuilder yang sesuai seperti Writeln, InsertImage, dan lainnya
- Ulangi langkah 2-4 hingga baris selesai
- Panggil EndRow untuk mengakhiri baris saat ini
- Secara opsional, gunakan properti RowFormat untuk menentukan pemformatan baris
- Ulangi langkah 2-7 hingga tabel selesai
- Panggil EndTable untuk menyelesaikan pembuatan tabel
Rincian penting:
- StartTable juga dapat dipanggil di dalam sel, dalam hal ini ia memulai pembuatan tabel bersarang di dalam sel.
- Setelah memanggil InsertCell, sel baru dibuat, dan konten apa pun yang Anda tambahkan menggunakan metode lain dari kelas DocumentBuilder akan ditambahkan ke sel saat ini. Untuk membuat sel baru pada baris yang sama, panggil InsertCell lagi.
- Jika InsertCell dipanggil segera setelah EndRow dan akhir baris, tabel akan dilanjutkan pada baris baru.
- Metode EndTable untuk mengakhiri tabel hanya boleh dipanggil satu kali setelah memanggil EndRow. Memanggil EndTable memindahkan kursor dari sel saat ini ke posisi segera setelah tabel.
Proses pembuatan tabel dapat dilihat dengan jelas pada gambar berikut:
Contoh kode berikut menunjukkan cara membuat tabel sederhana menggunakan DocumentBuilder dengan pemformatan default:
Contoh kode berikut menunjukkan cara membuat tabel berformat menggunakan DocumentBuilder:
Contoh kode berikut menunjukkan cara menyisipkan tabel bersarang menggunakan DocumentBuilder:
Buat Tabel melalui DOM (Model Objek Dokumen)
Anda dapat menyisipkan tabel langsung ke DOM dengan menambahkan simpul Table baru pada posisi tertentu.
Harap dicatat bahwa segera setelah pembuatan simpul tabel, tabel itu sendiri akan benar-benar kosong, yaitu belum berisi baris dan sel. Untuk menyisipkan baris dan sel ke dalam tabel, tambahkan simpul turunan Row dan Cell yang sesuai ke DOM.
Contoh kode berikut menunjukkan cara membuat tabel baru dari awal dengan menambahkan simpul turunan yang sesuai ke pohon dokumen:
Buat Tabel dari HTML
Aspose.Words mendukung penyisipan konten ke dalam dokumen dari sumber HTML menggunakan metode InsertHtml. Inputnya bisa berupa halaman HTML penuh atau hanya sebagian cuplikan.
Dengan menggunakan metode InsertHtml ini, pengguna dapat menyisipkan tabel ke dalam dokumen melalui tag tabel seperti <table>
, <tr>
, <td>
.
Contoh kode berikut menunjukkan cara menyisipkan tabel ke dalam dokumen dari string yang berisi tag HTML:
Menyisipkan Salinan Tabel yang Sudah Ada
Sering kali Anda perlu membuat tabel berdasarkan tabel yang sudah ada di dokumen. Cara termudah untuk menduplikasi tabel sambil mempertahankan semua pemformatan adalah dengan mengkloning simpul Tabel menggunakan metode deepClone.
Teknik yang sama dapat digunakan untuk menambahkan salinan baris atau sel yang ada ke tabel.
Contoh kode berikut menunjukkan cara menduplikasi tabel menggunakan konstruktor node:
Contoh kode berikut menunjukkan cara mengkloning baris terakhir tabel dan menambahkannya ke tabel:
Jika Anda ingin membuat tabel dalam dokumen yang berkembang secara dinamis dengan setiap catatan dari sumber data Anda, maka metode di atas tidak disarankan. Sebaliknya, keluaran yang diinginkan lebih mudah dicapai dengan menggunakan Mail merge dengan wilayah. Anda dapat mempelajari lebih lanjut tentang teknik ini di Mail Merge dengan Wilayah bagian.
Bandingkan Cara Membuat Tabel
Aspose.Words menyediakan beberapa metode untuk membuat tabel baru dalam dokumen. Setiap metode memiliki kelebihan dan kekurangannya masing-masing, sehingga pilihan yang akan digunakan seringkali bergantung pada situasi tertentu.
Mari kita lihat lebih dekat cara membuat tabel ini dan bandingkan pro dan kontranya:
Metode | Keuntungan | Kekurangan |
---|---|---|
Melalui DocumentBuilder |
Metode standar untuk menyisipkan tabel dan konten dokumen lainnya | Terkadang sulit untuk membuat banyak variasi tabel secara bersamaan dengan instance builder yang sama |
Melalui DOM | Lebih cocok dengan kode di sekitarnya yang membuat dan menyisipkan node langsung ke DOM tanpa menggunakan DocumentBuilder | Tabel dibuat “kosong”: sebelum melakukan sebagian besar operasi, Anda harus memanggil EnsureMinimum untuk membuat simpul turunan yang hilang |
Dari HTML | Dapat membuat tabel baru dari HTML sumber menggunakan tag seperti <table> , <tr> , <td> |
Tidak semua format tabel Microsoft Word yang memungkinkan dapat diterapkan ke HTML |
Mengkloning tabel yang ada | Anda dapat membuat salinan tabel yang ada dengan tetap mempertahankan semua pemformatan baris dan sel | Node turunan yang sesuai harus dihapus sebelum tabel siap digunakan |