PDFをPDF / Aに変換しますか?


11

Linuxでランダムな起源のPDFが与えられた場合、どうすればよいですか。

  • PDF / A形式かどうか確認しますか?
  • PDF / A形式でない場合は、忠実度の損失を最小限に抑えてPDF / Aに変換しますか?

変換によってドキュメントのエキゾチックな要素が失われる可能性があることは承知していますが、比較的遠い将来にドキュメントを開く機能が、そのような洗練された機能よりも重要であると仮定しましょうとにかく時間)。元のファイルを開くことができないリスクよりも、ドキュメントを並べて簡単に表示できる場合は、変換の正確さを視覚的に確認できます。

回答:


9

識別

PDF / Aファイルの識別に使用できるように見えるこのツールを見つけました。DROID(Digital Record and Object Identification)と呼ばれています。これはJavaベースで、GUIまたはコマンドラインから実行できます。

抜粋

DROIDは、National Archivesがファイル形式の自動バッチ識別を実行するために開発したソフトウェアツールです。幅広いデジタル保存活動の一環としてデジタル保存部門によって開発されたDROIDは、保存されているすべてのデジタルオブジェクトの正確な形式を識別し、その識別情報を中央レジストリにリンクできるように、デジタルリポジトリの基本的な要件を満たすように設計されていますその形式とその依存関係に関する技術情報の。

国立公文書館が後援していることを考えると、PDF / A形式の意図された目的を考えると、これはこれを行うための適切なツールだと思います。また、このプロジェクトはオープンソースであり、コードはGithubで入手できます。また、National Archives Webサイトからバイナリ形式でパッケージ化されています

検証と変換

検証と変換を実行するツールを探しているなら、PDFBoxがこれを実行できると思います。PDFBoxは、WebサイトのフロントページにPDF / A検証を表示します。これは別のJavaアプリケーションです8-)。

ウェブサイトからの抜粋

PDF / A検証
PDF / A ISO標準に照らしてPDFを検証します。

メインページの左側のコマンドラインツールセクションの下に、ツールの次の使用方法が表示されます。

$ java -jar pdfbox-app-x.y.z.jar org.apache.pdfbox.ConvertColorspace [OPTIONS] <inputfile> <outputfile>

veraPDFは、PDF / Aを検証できる別のツールです。これはOpen Preservation Foundationのリファレンスツールセットの一部です。これはJavaアプリケーションでもあります。

変換

変換を実行するだけで、次のツールを使用する既存のPDFをPDF / Aに変換する無料の方法というタイトルのブログ投稿からこの方法を見つけました。

  • Ghostscript 8.64のみ。
  • PDFBox 0.7.3
  • pdfmarks(追加のメタデータを提供するファイル)
  • PDFA_def.ps
  • USWebCoatedSWOP.icc

上記の場所で、次のコマンドを使用します。

$ gs -sDEVICE=pdfwrite -q -dNOPAUSE -dBATCH -dNOSAFER     \
-dPDFA -dUseCIEColor -sProcessColorModel=DeviceCMYK       \
-sOutputFile=Out_PDFA.pdf PDFA_def.ps pdfmarks IN_PDF.pdf

いぼがないわけではありません。記事では、そのうちの1つについて説明し、ハイパーリンクの印刷フラグを修正しています。この記事では、これらを修正するために使用できるJavaアプリケーションを提供します。

$ java FixPrintFlag Out_PDFA.pdf New_verifiablePDFA.pdf

それはきれいではありませんが、実行可能であるように見えます。詳細については、記事を参照してください。

参照資料


私はこれを試さなければならないでしょう-それはひどく有望に見えます。少し手を加えると、これをCUPS-PDFプリンターに統合することさえ可能かもしれません。/etc/cups/cups-pdf.confには、その目的のために有望に見える設定があります。お時間をいただきありがとうございます!現時点では実際にはテストしていませんが、これに戻ります(できれば明日)。
CVn 2013年

@MichaelKjörling-質問をありがとう。私はこれまでPDF / A形式について聞いたことがなく、私たちはこれとまったく同じことを仕事で必要としています。それで、あなたは私がこのことについて今知っている天才のように見えるのを助けました8-)。
slm

なにpdfmarks
Andrew


1

ファイルの識別には、このコマンドfileが役立つことがよくあります。マジックナンバー、ファイル識別子、エンコーディング情報などについてファイルを調べ、役立つ情報を提供します。

PDFファイルの特定のケースでは、ユーティリティpdfinfoは特に役立ちます。私の場合、Gentooディストリビューションでpopplerあり、PDFレンダリング・ライブラリーとともにパッケージ化されています。


1
pdfinfo -metaそしてxmpmeta/RDF/Description/conformance、PDFがPDF / A(そのノードはA)であるかどうか(ノードが存在しないか、他の値を持つ)であるかどうかを見ているように見えます。スタートです!
CVn

0

これがまさにそれをしているbashコマンドラインスクリプトです:

#!/bin/bash

pdf_input=$1
ps_output=${pdf_input%.*}.ps
pdfa_output=${pdf_input%.*}_a.pdf
pdftops $input $ps_output

gs -dPDFA -dBATCH -dNOPAUSE -dNOOUTERSAVE -dUseCIEColor -sProcessColorModel=DeviceCMYK -sDEVICE=pdfwrite -sPDFACompatibilityPolicy=1 -sOutputFile=$pdfa_output $ps_output

パスにあるpdf2pdfa.shというファイルに保存し、次のように呼び出します。

pdf2pdfa.sh input.pdf

input_a.pdfを作成します。


1
(1)これが何をするか説明してください。(2)とはinput?わかりましたpdf_inputが、何inputですか?(3)正当な理由がない限り、常にシェル変数を引用する必要があります。また、自分が何をしているのがわかっていると確信できます。コメントで返信しないでください。 回答を編集して、より明確で完全なものにします。
G-Manが 'Reinstate Monica'を
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.