Untuk mengekstrak Attachments, kita akan menggunakan Aspose.PDF for Java API yang merupakan API konversi yang kaya fitur, kuat dan mudah digunakan untuk platform Java. Anda dapat mengunduh versi terbarunya langsung dari Maven dan menginstalnya dalam proyek berbasis Maven Anda dengan menambahkan konfigurasi berikut kepom.xml.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java AP</name>
<url>https://releases.aspose.com/java/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>version of aspose-pdf API</version>
</dependency>
Ekstrak Lampiran dari PDF Java
Anda memerlukan Aspose.PDF for Java untuk mencoba kode di lingkungan Anda.
- Dapatkan koleksi file tertanam.
- Dapatkan hitungan file yang disematkan.
- Loop melalui koleksi untuk mendapatkan semua lampiran.
- Periksa apakah objek parameter berisi parameter.
- Dapatkan Lampiran dan tulis ke file atau streaming.
Ekstrak Lampiran dari dokumen PDF
// Open document
Document pdfDocument = new Document(_dataDir+"input.pdf");
// Get particular embedded file
FileSpecification fileSpecification = pdfDocument.getEmbeddedFiles().get_Item(1);
// Get the file properties
System.out.printf("Name: - " + fileSpecification.getName());
System.out.printf("\nDescription: - " + fileSpecification.getDescription());
System.out.printf("\nMime Type: - " + fileSpecification.getMIMEType());
// Get attachment form PDF file
try {
InputStream input = fileSpecification.getContents();
File file = new File(fileSpecification.getName());
// Create path for file from pdf
file.getParentFile().mkdirs();
// Create and extract file from pdf
java.io.FileOutputStream output =
new java.io.FileOutputStream(
fileSpecification.getName(),
true);
byte[] buffer = new byte[4096];
int n = 0;
while (-1 != (n = input.read(buffer)))
output.write(buffer, 0, n);
// Close InputStream object
input.close();
output.close();
}
catch (IOException e) {
e.printStackTrace();
}
// Close Document object
pdfDocument.dispose();