回答:
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に変換する無料の方法というタイトルのブログ投稿からこの方法を見つけました。
上記の場所で、次のコマンドを使用します。
$ 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
それはきれいではありませんが、実行可能であるように見えます。詳細については、記事を参照してください。
pdfmarks
?
ファイルの識別には、このコマンドfile
が役立つことがよくあります。マジックナンバー、ファイル識別子、エンコーディング情報などについてファイルを調べ、役立つ情報を提供します。
PDFファイルの特定のケースでは、ユーティリティpdfinfo
は特に役立ちます。私の場合、Gentooディストリビューションでpoppler
あり、PDFレンダリング・ライブラリーとともにパッケージ化されています。
pdfinfo -meta
そしてxmpmeta/RDF/Description/conformance
、PDFがPDF / A(そのノードはA
)であるかどうか(ノードが存在しないか、他の値を持つ)であるかどうかを見ているように見えます。スタートです!
これがまさにそれをしている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を作成します。
input
?わかりましたpdf_input
が、何input
ですか?(3)正当な理由がない限り、常にシェル変数を引用する必要があります。また、自分が何をしているのかがわかっていると確信できます。コメントで返信しないでください。 回答を編集して、より明確で完全なものにします。