Memanipulasi Tabel di PDF yang Ada

Manipulasi tabel di PDF yang ada

Salah satu fitur terawal yang didukung oleh Aspose.PDF untuk .NET adalah kemampuannya dalam Bekerja dengan Tabel dan ini memberikan dukungan yang besar untuk menambahkan tabel dalam file PDF yang dihasilkan dari awal atau file PDF yang sudah ada. Anda juga mendapatkan kemampuan untuk Mengintegrasikan Tabel dengan Database (DOM) untuk membuat tabel dinamis berdasarkan konten database. Dalam rilis baru ini, kami telah mengimplementasikan fitur baru dalam mencari dan mem-parse tabel sederhana yang sudah ada di halaman dokumen PDF. Kelas baru bernama Aspose.PDF.Text.TableAbsorber menyediakan kemampuan ini. Penggunaan TableAbsorber sangat mirip dengan kelas TextFragmentAbsorber yang sudah ada. Potongan kode berikut menunjukkan langkah-langkah untuk memperbarui konten dalam sel tabel tertentu.

Potongan kode berikut juga bekerja dengan pustaka Aspose.PDF.Drawing.

// Untuk contoh lengkap dan file data, silakan kunjungi https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Jalur ke direktori dokumen.
string dataDir = RunExamples.GetDataDir_AsposePdf_Tables();

// Muat file PDF yang ada
Document pdfDocument = new Document(dataDir + "input.pdf");
// Buat objek TableAbsorber untuk menemukan tabel
TableAbsorber absorber = new TableAbsorber();

// Kunjungi halaman pertama dengan absorber
absorber.Visit(pdfDocument.Pages[1]);

// Dapatkan akses ke tabel pertama di halaman, sel pertama mereka dan fragmen teks di dalamnya
TextFragment fragment = absorber.TableList[0].RowList[0].CellList[0].TextFragments[1];

// Ubah teks dari fragmen teks pertama di sel
fragment.Text = "hi world";
dataDir = dataDir + "ManipulateTable_out.pdf";
pdfDocument.Save(dataDir);

Ganti Tabel Lama dengan Tabel Baru dalam Dokumen PDF

Jika Anda perlu menemukan tabel tertentu dan menggantinya dengan yang diinginkan, Anda dapat menggunakan metode Replace() dari Kelas TableAbsorber untuk melakukan hal tersebut. Contoh berikut menunjukkan fungsionalitas untuk mengganti tabel di dalam dokumen PDF:

// Untuk contoh lengkap dan file data, silakan kunjungi https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Jalur ke direktori dokumen.
string dataDir = RunExamples.GetDataDir_AsposePdf_Tables();

// Muat dokumen PDF yang ada
Document pdfDocument = new Document(dataDir + @"Table_input2.pdf");

// Buat objek TableAbsorber untuk menemukan tabel
TableAbsorber absorber = new TableAbsorber();

// Kunjungi halaman pertama dengan absorber
absorber.Visit(pdfDocument.Pages[1]);

// Dapatkan tabel pertama di halaman
AbsorbedTable table = absorber.TableList[0];

// Buat tabel baru
Table newTable = new Table();
newTable.ColumnWidths = "100 100 100";
newTable.DefaultCellBorder = new BorderInfo(BorderSide.All, 1F);

Row row = newTable.Rows.Add();
row.Cells.Add("Kol 1");
row.Cells.Add("Kol 2");
row.Cells.Add("Kol 3");

// Ganti tabel dengan yang baru
absorber.Replace(pdfDocument.Pages[1], table, newTable);

// Simpan dokumen
pdfDocument.Save(dataDir + "TableReplaced_out.pdf");