Ekstrak dan Simpan Lampiran

Mendapatkan Lampiran Dari Dokumen PDF

Dengan Aspose.PDF, memungkinkan untuk mendapatkan semua lampiran dari dokumen PDF. Ini berguna baik ketika Anda ingin menyimpan dokumen secara terpisah dari PDF, atau jika Anda perlu menghapus lampiran dari PDF.

Berikut adalah potongan kode yang menunjukkan cara mendapatkan semua lampiran dari dokumen PDF.

   public static void GetAttachmentsFromPDFDocument() {
// Buka dokumen
Document pdfDocument = new Document(_dataDir+"input.pdf");
  // Dapatkan file tersemat tertentu
  FileSpecification fileSpecification = pdfDocument.getEmbeddedFiles().get_Item(1);
  // Dapatkan properti file
  System.out.printf("Nama: - " + fileSpecification.getName());
  System.out.printf("\nDeskripsi: - " + fileSpecification.getDescription());
  System.out.printf("\nTipe Mime: - " + fileSpecification.getMIMEType());
  // Dapatkan lampiran dari file PDF
  try {
   InputStream input = fileSpecification.getContents();
   File file = new File(fileSpecification.getName());
   // Buat jalur untuk file dari pdf
   file.getParentFile().mkdirs();
   // Buat dan ekstrak file dari 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);
   // Tutup objek InputStream
   input.close();
   output.close();
  } catch (IOException e) {
   e.printStackTrace();
  }
  // Tutup objek Document
  pdfDocument.dispose();
        
    }

Dapatkan Informasi Lampiran

Seperti yang disebutkan dalam Dapatkan Lampiran dari Dokumen PDF, informasi lampiran disimpan dalam objek FileSpecification, dikumpulkan bersama lampiran lainnya dalam koleksi EmbeddedFiles pada objek Document.

Objek FileSpecification menyediakan metode yang mendapatkan informasi tentang lampiran, misalnya:

  • getName() – mendapatkan nama file.
  • getDescription() – mendapatkan deskripsi file.
  • getMIMEType() – mendapatkan tipe MIME file.
  • getParams() – informasi tentang parameter file, misalnya CheckSum, CreationDate, ModDate, dan Size.

Untuk mendapatkan parameter ini, pertama pastikan bahwa metode getParams() tidak mengembalikan null.

Anda dapat melakukan loop melalui semua lampiran dalam koleksi EmbeddedFiles menggunakan for loop, atau mendapatkan lampiran individual dengan menentukan nilai indeksnya. The following code snippet shows how to get information about a specific attachment.

    public static void GetAttachmentInformation() {
  // Buka dokumen
  Document pdfDocument = new Document(_dataDir+"input.pdf");
  // Dapatkan file tertanam tertentu
  FileSpecification fileSpecification = pdfDocument.getEmbeddedFiles().get_Item(1);
  // Dapatkan properti file
  System.out.println("Name:-" + fileSpecification.getName());
  System.out.println("Description:- " + fileSpecification.getDescription());
  System.out.println("Mime Type:-" + fileSpecification.getMIMEType());
  // Periksa apakah objek parameter berisi parameter
  if (fileSpecification.getParams() != null) {
   System.out.println("CheckSum:- " + fileSpecification.getParams().getCheckSum());
   System.out.println("Creation Date:- " + fileSpecification.getParams().getCreationDate());
   System.out.println("Modification Date:- " + fileSpecification.getParams().getModDate());
   System.out.println("Size:- " + fileSpecification.getParams().getSize());
  }