Tutorial ini memberikan detail tentang cara membaca tabel PDF di Java dan mengakses teks milik setiap sel di dalam tabel yang diinginkan. Anda akan memiliki kontrol penuh untuk merujuk ke tabel tertentu di halaman target PDF dan mengurai semua baris dan sel untuk mengambil data. Untuk menulis pembaca tabel PDF ini di Java tidak diperlukan alat atau perangkat lunak pihak ketiga lainnya.
Langkah-langkah Membaca Tabel PDF di Java
- Konfigurasikan aplikasi pembaca tabel PDF Anda untuk menambahkan Aspose.PDF dari repositori Maven
- Muat file PDF sampel yang berisi tabel di dalamnya menggunakan objek kelas Document
- Buat instance dan inisialisasi objek TableAbsorber untuk mengambil semua tabel PDF dari halaman PDF yang dipilih
- Iterasi melalui semua baris dalam tabel yang diinginkan
- Ulangi semua sel di baris yang diinginkan dan ambil semua fragmen teks dari setiap sel
- Tampilkan teks yang diambil dari sel
Langkah-langkah ini menjelaskan bagaimana menggunakan Java ekstrak tabel dari PDF bersama dengan informasi tentang perpustakaan yang diperlukan yang akan ditambahkan ke proyek. Ini juga menyatakan urutan operasi untuk menyelesaikan tugas seperti pertama memuat PDF, lalu mengakses halaman tertentu, dan mengambil tabel yang diinginkan. Terakhir, urai semua baris dan sel untuk mendapatkan informasi.
Kode untuk Membaca Tabel PDF di Java
import com.aspose.pdf.License; | |
import com.aspose.pdf.AbsorbedCell; | |
import com.aspose.pdf.AbsorbedRow; | |
import com.aspose.pdf.AbsorbedTable; | |
import com.aspose.pdf.Document; | |
import com.aspose.pdf.TableAbsorber; | |
import com.aspose.pdf.TextFragmentCollection; | |
public class ReadPDFTableInJava { | |
public static void main(String[] args) throws Exception { // main function for reading PDF table data in ReadPDFTableInJava | |
// For avoiding the trial version limitation, load the Aspose.PDF license prior to reading table data | |
License licenseForHtmlToPdf = new License(); | |
licenseForHtmlToPdf.setLicense("Aspose.Pdf.lic"); | |
// Load a source PDF document which contains a table in it | |
Document pdfDocument = new Document("PdfWithTable.pdf"); | |
// Instantiate the TableAbsorber object for PDF tables extraction | |
TableAbsorber tableAbsorber = new TableAbsorber(); | |
// visit the table collection in the input PDF | |
tableAbsorber.visit(pdfDocument.getPages().get_Item(1)); | |
// Access the desired table from the tables collection | |
AbsorbedTable absorbedTable = tableAbsorber.getTableList().get(0); | |
// Parse all the rows and get each row using the AbsorbedRow | |
for (AbsorbedRow pdfTableRow : absorbedTable.getRowList()) | |
{ | |
// Access each cell in the cells collection using AbsorbedCell | |
for (AbsorbedCell pdfTableCell : pdfTableRow.getCellList()) | |
{ | |
// Access each text fragment from the cell | |
TextFragmentCollection textFragmentCollection = pdfTableCell.getTextFragments(); | |
// Access each text fragment from the fragments collection | |
for (com.aspose.pdf.TextFragment textFragment : textFragmentCollection) | |
{ | |
// Display the table cell text | |
System.out.println(textFragment.getText()); | |
} | |
} | |
} | |
System.out.println("Done"); | |
} | |
} |
Untuk mengekstrak tabel dari PDF Java kode disediakan di sini yang menggunakan kelas TableAbsorber dan AbsorbedTable untuk menangani tabel dalam PDF. Itu juga menggunakan kelas AbsorbedRow dan AbsorbedCell untuk mengelola baris dan kolom sebelum menggunakan kelas TextFragment untuk mengambil data sel. Juga, ada banyak kelas penyerap lain yang tersedia untuk berbagai elemen dalam dokumen seperti font, paragraf, teks, dan fragmen teks.
Artikel ini telah menjelaskan bahwa dengan menggunakan Java PDF ekstraksi tabel dapat dilakukan dalam beberapa langkah. Jika Anda ingin mempelajari cara membaca teks dan gambar dari file PDF, lihat artikel di cara membaca file PDF di Jawa.