Java での PDFのPDF/A、PDF/E、PDF/Xへの変換

Aspose.PDF for Java は、標準 PDF ファイルをアーカイブおよび交換指向の PDF 標準に検証および変換できます。

PDF を PDF/A に変換

標準 PDF を PDF/A 準拠のアーカイブ文書に変換する必要がある場合は、このサンプルを使用してください。

  1. ソース PDF を Document インスタンスで開いてください。
  2. 呼び出し document.convert(...) と PdfFormat PDF_A_1B、および ConvertErrorAction Delete を指定してください。
  3. 検証ログをサイドカー XML ファイルに書き込み、変換中にコンプライアンス問題が記録されるようにしてください。
  4. 検証済みの PDF/A 出力を保存してください。
public static void convertPdfToPdfA(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        document.convert(logFile(outputFile, "-log.xml").toString(), PdfFormat.PDF_A_1B, ConvertErrorAction.Delete);
        document.save(outputFile.toString());
    }
}

PDF から PDF/E への変換

PDF をエンジニアリング指向の PDF/E 標準に変換する必要がある場合は、この例を使用してください。

  1. PdfFormat の PDF_E_1 とログファイルの出力先パスを指定して、PdfFormatConversionOptions を作成してください。
  2. ソース PDF を Document インスタンスで開いてください。
  3. 呼び出し document.convert(options) して、コンプライアンス変換を準備されたオプションオブジェクトで実行してください。
  4. 生成されたコンプライアンス準拠 PDF ファイルを保存してください。
public static void convertPdfToPdfE(Path inputFile, Path outputFile) {
    PdfFormatConversionOptions options = new PdfFormatConversionOptions(
            logFile(outputFile, "-log.xml").toString(), PdfFormat.PDF_E_1, ConvertErrorAction.Delete);

    try (Document document = new Document(inputFile.toString())) {
        document.convert(options);
        document.save(outputFile.toString());
    }
}

PDF から PDF/X への変換

PDF を印刷指向の PDF/X 標準に変換する必要がある場合に、この例を使用してください。

  1. PdfFormatConversionOptions を、PdfFormat PDF_X_4 および目的のログファイルパスを指定して作成してください。
  2. OutputIntent を FOGRA39 などの印刷対象のカラープロファイルで構成してください。これにより、印刷対象のカラープロファイルが変換設定に埋め込まれます。
  3. ソース PDF を Document インスタンスで開き、document.convert(options) を呼び出してください。
  4. 変換された PDF/X 出力を保存してください。
public static void convertPdfToPdfX(Path inputFile, Path outputFile) {
    PdfFormatConversionOptions options = new PdfFormatConversionOptions(
            logFile(outputFile, "-log.xml").toString(), PdfFormat.PDF_X_4, ConvertErrorAction.Delete);
    options.setOutputIntent(new OutputIntent("FOGRA39"));

    try (Document document = new Document(inputFile.toString())) {
        document.convert(options);
        document.save(outputFile.toString());
    }
}