web-dev-qa-db-ja.com

コマンドラインからPDFメタデータを編集するには?

PDFファイルのメタデータを編集するためのコマンドラインツールが必要です。

Aiptek MyNote Premiumタブレットを使用して、このデバイスでメモや議事録を書き、後でインポートし、inkscapeとghostscriptを使用した簡単なスクリプトでPDFに自動的に変換します。

Pdfのメタデータにいくつかのカテゴリを追加するコマンドラインツールはありますか?後でカテゴリごとに(たとえば、gnome-doで)pdfを見つけることができますか?

更新:pdftkで解決策を試しましたが、動作しますが、gnome-doはpdf-metadataの面倒を見ないようです。 gnome-doにそれをさせる方法はありますか?

81
bdr529

Exiftoolを試してください。リポジトリのlibimage-exiftool-Perlパッケージから入手できます。

例として、drawing.pdfというpdfファイルがあり、そのメタデータを更新する場合、次のようにユーティリティexiftoolを使用します。

exiftool -Title="This is the Title" -Author="Happy Man" -Subject="PDF Metadata" drawing.pdf

何らかの理由で、入力されたサブジェクトがPDFファイルのメタデータのキーワードフィールドに表示されます。場合によっては問題ではなく、望ましい場合もありますが、これは問題になる可能性があり、証拠であり、nautilusメタデータプレビューアはこれを表示しませんが、Adobe AcrobatビューアーとPDF-XChangeビューアーは表示します。

使用しない場合、プログラムは元のファイルのバックアップを作成します。 -overwrite_originalスイッチ。これは、更新されたpdfがあるフォルダーに重複が存在することを意味します。上記の例から。という名前のファイル。 drawing.pdf_originalが作成されます。

自己の責任において上書きスイッチを使用してください。万が一に備えて、このファイルを使用して、このファイルをより良い場所に移動するスクリプトを作成しないことをお勧めします。

99
Sabacon

pdftkを使用してメタデータを編集できます。 update_infoパラメーターを確認してください。データファイルについては、以下に例を示します。

InfoKey: Title
InfoValue: Mt-Djing: multitouch DJ table
InfoKey: Subject
InfoValue: Dissertation for Master degree
InfoKey: Keywords
InfoValue: DJing, NUI, multitouch, user-centered design
InfoKey: Author
InfoValue: Pedro Lopes

ソース

15
Olli

Ghostviewを使用する

このコンテンツで「pdfmarks」という名前のファイルを作成します。

[ /Title (Document title)
  /Author (Author name)
  /Subject (Subject description)
  /Keywords (comma, separated, keywords)
  /ModDate (D:20061204092842)
  /CreationDate (D:20061204092842)
  /Creator (application name or creator note)
  /Producer (PDF producer name or note)
  /DOCINFO pdfmark

次に、このpdfmarksファイルをPDF、PS、またはEPS入力ファイルと結合します。

gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=output.pdf no_marks.pdf pdfmarks

ソース: http://milan.kupcevic.net/ghostscript-ps-pdf/

6

pdftkメソッドについて詳しく説明します。これは、設定されているすべてのものを表示するのでいいのですが、好きなものを変更できると同時に、(.bashrcまたはその他のエイリアスファイル)を1つのコマンドで実行します。これにより、編集するファイルの新しいバージョンが作成され、メタデータファイルでお気に入りのエディターが開き、変更が実装され、変更されたPDFファイルのファイル作成/変更時間が同じに設定されます。オリジナル。使用するには、.bashrcファイルをリソースに追加した後、単に入力します

editPDFmetadata myfile.pdf

エイリアスは次のとおりです。

editPDFmetadata() {
OUTPUT="${1}-new.pdf"
METADATA="tmp${1}-report.txt"
pdftk ${1} dump_data output $METADATA
$EDITOR $METADATA
pdftk ${1} update_info $METADATA  output $OUTPUT
touch -r ${1} ${OUTPUT}
}

上記の定義をホームフォルダーの.bashrcファイルに配置し、新しいターミナルを開くだけで使用できるようになります。

0
CPBL