Convert PDF ke format PDF/A

Aspose.PDF untuk Java memungkinkan Anda untuk mengonversi file PDF ke file PDF yang sesuai dengan PDF/A. Sebelum melakukan itu, file harus divalidasi. Artikel ini menjelaskan caranya.

Harap dicatat bahwa kami mengikuti Adobe Preflight untuk memvalidasi kepatuhan PDF/A. Semua alat di pasaran memiliki “representasi” mereka sendiri tentang kepatuhan PDF/A. Silakan periksa artikel ini tentang alat validasi PDF/A sebagai referensi. Kami memilih produk Adobe untuk memverifikasi bagaimana Aspose.PDF menghasilkan file PDF karena Adobe berada di pusat segala sesuatu yang berhubungan dengan PDF.

Sebelum mengonversi PDF ke file yang sesuai dengan PDF/A, validasi PDF menggunakan metode validasi. Hasil validasi disimpan dalam file XML dan kemudian hasil ini juga diteruskan ke metode konversi. Anda juga dapat menentukan tindakan untuk elemen yang tidak dapat dikonversi menggunakan enumerasi ConvertErrorAction.

Konversi PDF ke PDF/A_1b

Cuplikan kode berikut menunjukkan cara mengonversi file PDF ke PDF yang sesuai dengan PDF/A-1b.

// Buka dokumen
Document document = new Document(DATA_DIR + "PDFToPDFA.pdf");

// Konversi ke dokumen yang sesuai dengan PDF/A
// Selama proses konversi, validasi juga dilakukan
document.convert(DATA_DIR + "log.xml", PdfFormat.PDF_A_1B, ConvertErrorAction.Delete);

// Simpan dokumen keluaran
document.save(DATA_DIR + "PDFToPDFA_out.pdf");
document.close();

Untuk melakukan validasi saja, gunakan baris kode berikut:

// Buka dokumen
Document document = new Document(DATA_DIR + "ValidatePDFAStandard.pdf");

// Validasi PDF untuk PDF/A-1a
if (document.validate(DATA_DIR + "validation-result-A1A.xml", PdfFormat.PDF_A_1B)) {
    System.out.println("Valid");
} else {
    System.out.println("Tidak valid");
}
document.close();

Konversi PDF ke PDF/A_3b

Dari Aspose.PDF for Java 9.3.0, API juga mendukung konversi file PDF ke format PDF/A_3b.

// Buka dokumen
Document document = new Document(DATA_DIR + "PDFToPDFA.pdf");

// Konversi ke dokumen yang sesuai dengan PDF/A
// Selama proses konversi, validasi juga dilakukan
document.convert(DATA_DIR + "log.xml", PdfFormat.PDF_A_3B, ConvertErrorAction.Delete);

// Simpan dokumen keluaran
document.save(DATA_DIR + "PDFToPDFA_out.pdf");
document.close();

Konversi PDF ke PDF/A_3a

Dari Aspose.PDF for Java 10.6.0, API juga mendukung konversi file PDF ke format PDF/A_3a.

// Buka dokumen
Document document = new Document(DATA_DIR + "PDFToPDFA.pdf");

// Konversi ke dokumen yang sesuai dengan PDF/A
// Selama proses konversi, validasi juga dilakukan
document.convert("file.log", PdfFormat.PDF_A_3A, ConvertErrorAction.Delete);

// Simpan dokumen keluaran
document.save(DATA_DIR + "PDFToPDFA_out.pdf");
document.close();

Konversi PDF ke PDF/A_2a

Mulai rilis Aspose.PDF for Java 10.2.0, API menawarkan fitur untuk mengonversi file PDF ke format PDF/A3.

    public static void ConvertPDFtoPDFa2a() {
        // Buka dokumen
        Document pdfDocument = new Document(_dataDir + "PDFToPDFA.pdf");

        // Konversi ke dokumen yang sesuai dengan PDF/A
        // Selama proses konversi, validasi juga dilakukan
        pdfDocument.convert("file.log", PdfFormat.PDF_A_2A, ConvertErrorAction.Delete);

        // Simpan dokumen keluaran
        pdfDocument.save(_dataDir + "PDFToPDFA_out.pdf");
    }

Konversi PDF ke PDF/A_3U

Mulai rilis Aspose.PDF for Java 17.2.0, API menawarkan fitur untuk mengonversi file PDF ke format PDF/A_3U.

    public static void ConvertPDFtoPDFa3u() {
        // Buka dokumen
        Document pdfDocument = new Document(_dataDir + "PDFToPDFA.pdf");

        // Konversi ke dokumen yang sesuai dengan PDF/A
        // Selama proses konversi, validasi juga dilakukan
        pdfDocument.convert("file.log", PdfFormat.PDF_A_3U, ConvertErrorAction.Delete);

        // Simpan dokumen keluaran
        pdfDocument.save(_dataDir + "PDFToPDFA_out.pdf");
    }

Buat PDF/A-3 dan lampirkan file XML

Aspose.PDF untuk Java menawarkan fitur untuk mengonversi file PDF ke format PDF/A dan juga mendukung kemampuan menambahkan file sebagai lampiran ke dokumen PDF. Jika Anda memiliki persyaratan untuk melampirkan file ke format kepatuhan PDF/A, maka kami merekomendasikan menggunakan nilai PDF_A_3A dari enumerasi com.aspose.pdf.PdfFormat, PDF/A_3a adalah format yang menyediakan fitur untuk melampirkan format file apa pun sebagai lampiran ke file yang sesuai dengan PDF/A. Namun, setelah file dilampirkan, Anda harus mengonversinya kembali ke format Pdf-3a, untuk memperbaiki metadata. Silakan lihat potongan kode berikut.

    public static void ConvertPDFtoPDFa3u_attachXML() {
        Document doc = new Document();
        // tambahkan halaman ke file PDF
        doc.getPages().add();
        // muat file XML
        FileSpecification fileSpecification = new FileSpecification(_dataDir + "attachment.xml", "Contoh file xml");
        // Tambahkan lampiran ke koleksi lampiran dokumen
        doc.getEmbeddedFiles().add(fileSpecification);
        // lakukan konversi PDF/A_3a
        doc.convert(_dataDir + "log.xml", PdfFormat.PDF_A_3A/* atau PDF_A_3B */, ConvertErrorAction.Delete);
        // simpan file PDF akhir
        doc.save(_dataDir + "attached_PDFA_3A.pdf");
    }