Jika Anda memiliki dokumen dan ingin menggunakan gambar di dalam dokumen itu di beberapa dokumen lain, inilah salah satu solusinya. Pada artikel ini, kita akan belajar mengekstrak gambar secara terprogram dari dokumen PDF, Excel, PowerPoint, dan Word menggunakan Java.
- Ekstraksi Gambar Java API
- Ekstraksi Gambar dari dokumen PDF di Java
- Ekstrak Gambar dari dokumen Word, Excel, PowerPoint di Java
- Ekstrak Gambar dari Halaman Tertentu di Java
Ekstraksi Gambar Java API
Untuk ekstraksi gambar, kita akan menggunakan GroupDocs.Parser for Java. Java API ini mendukung penguraian dokumen dan ekstraksi gambar, teks, dan metadata dari dokumen pengolah kata, spreadsheet, presentasi, arsip, dan dokumen email. Berikut ini adalah format dokumen yang didukung oleh Java API untuk ekstraksi gambar.
Jenis Dokumen | Format File |
---|---|
Dokumen Pengolah Kata | DOC, DOCX, DOCM, DOT, DOTX, DOTM, ODT, OTT, RTF |
Spreadsheet | XLS, XLSX, XLSM, XLSB, XLT, XLTX, XLTM, ODS, OTS, XLA, XLAM, ANGKA |
Presentasi | PPT, PPTX, PPTM, PPS, PPSX, PPSM, POT, POTX, POTM, ODP, OTP |
Dokumen Portabel | |
EML, EMLX, MSG | |
Arsip | ZIP |
Sebelum Anda memulai dengan contoh-contoh di bawah ini, saya akan merekomendasikan untuk menyiapkan lingkungan dengan mengunduh versi terbaru dari penguraian dokumen Java API dari bagian unduhan atau Anda dapat mengatur konfigurasi berikut dalam aplikasi java berbasis maven Anda:
<repository>
<id>GroupDocsJavaAPI</id>
<name>GroupDocs Java API</name>
<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-parser</artifactId>
<version>20.8</version>
</dependency>
Ekstrak Gambar dari Dokumen PDF di Java
Ikuti langkah-langkah sederhana ini untuk mendapatkan semua gambar dari dokumen PDF.
- Membuat instance objek kelas Parser.
- Panggil metode getImages dari kelas Parser untuk mendapatkan semua gambar.
- Ulangi gambar menggunakan PageImageArea.
- Simpan gambar menggunakan metode simpan PageImageArea.
Selesai. Lihat kode lengkap di bawah ini. Gambar yang diekstraksi dapat disimpan dalam format BMP, GIF, JPEG, PNG, dan WebP.
// Ekstrak Gambar dari Dokumen Word, Excel, PowerPoint, PDF Secara terprogram menggunakan GroupDocs.Parser for Java
try (Parser parser = new Parser("path/document.pdf")) {
// Ekstrak gambar
Iterable<PageImageArea> images = parser.getImages();
// Buat opsi untuk menyimpan gambar dalam format PNG
ImageOptions options = new ImageOptions(ImageFormat.Png);
int imageNumber = 0;
// Ulangi gambar dan Simpan
for (PageImageArea image : images) {
// Cetak indeks halaman, persegi panjang, dan jenis file gambar:
System.out.println(String.format("Page: %d, R: %s, Type: %s", image.getPage().getIndex(),
image.getRectangle(), image.getFileType()));
image.save(String.format("filesPath/image_%d.png", imageNumber), options);
imageNumber++;
}
}
Ini adalah gambar yang diambil dari dokumen PDF menggunakan kode di atas.
Ekstrak Gambar dari File Word, Excel, PowerPoint di Java
Demikian pula, semua gambar dapat diambil dari file pengolah kata, spreadsheet, presentasi, dengan basis kode yang tidak berubah. Apa yang harus Anda ubah? Hanya jalur dokumen sumber dan ekstensi file yang tepat.
Parser parser = new Parser("path/document.docx") // Word Document
// Parser parser = new Parser("path/document.xlsx") // Excel Spreadsheet
// Parser parser = new Parser("path/document.pptx") // PowerPoint Presentation
// Parser parser = new Parser("path/document.pdf") // PDF Document
Ekstraksi Gambar dari Halaman Dokumen Tertentu di Java
Jika Anda tidak ingin mengekstrak semua gambar dari seluruh dokumen tetapi dari beberapa halaman tertentu. Kode di bawah ini menunjukkan bagaimana kita dapat mengekstrak gambar dari halaman tertentu dari dokumen di Java.
// Ekstrak Gambar dari halaman tertentu Word, Excel, PowerPoint, PDF di Java menggunakan GroupDocs.Parser
try (Parser parser = new Parser("path/document.pdf"")) {
// Dapatkan info dokumen
IDocumentInfo documentInfo = parser.getDocumentInfo();
// Buat opsi untuk menyimpan gambar dalam format PNG
ImageOptions options = new ImageOptions(ImageFormat.Jpeg);
int imageNumber = 0;
// Ulangi halaman
for (int pageIndex = 0; pageIndex < documentInfo.getPageCount(); pageIndex++) {
// Cetak Nomor Halaman
System.out.println(String.format("Page %d/%d", pageIndex + 1, documentInfo.getPageCount()));
// Ulangi gambar - Mengabaikan NULL-Memeriksa dalam contoh
for (PageImageArea image : parser.getImages(pageIndex)) {
// Cetak Informasi Gambar dan Simpan file
System.out.println(String.format("R: %s, Text: %s", image.getRectangle(), image.getFileType()));
image.save(String.format("filesPath/image_%d.jpeg", imageNumber), options);
imageNumber++;
}
}
}
Kesimpulan
Hari ini, kita belajar cara mengekstrak gambar dari seluruh dokumen, dan halaman khusus dokumen pengolah kata, spreadsheet, presentasi, dan PDF di Java. Tidak ada perbedaan kode jika kita harus mengekstrak gambar dari file dengan format file yang berbeda. Kami hanya harus melewati jalan dan nama yang benar. Itu dia.