PDFをコマンドラインから編集できるPDFtk使い方メモ
6日間で楽しく学ぶLinuxコマンドライン入門 コマンドの基本操作を身につけよう (ネット時代の、これから始めるプログラミング(NextPublishing))
- 作者: 大津真
- 出版社/メーカー: インプレスR&D
- 発売日: 2015/04/24
- メディア: Kindle版
- この商品を含むブログを見る
PDFtkとは?
PDFを色々編集できる。具体的には...
- PDFファイルを結合
- 抽出
- 回転
- ページ毎に分割
- 透かしやスタンプをいれる
- パスワードロック(ユーザーパスワードやオーナーパスワード)
- パスワードの解除
- 添付ファイルをつける
- 添付ファイルを取り出す
- PDF文書のメタデータを編集
一番のメリットはやっぱり,コマンドラインツールなので,シェルスクリプト等のプログラムを用いて容易に自動化が可能。 大量のPDFファイルなどを処理するときにも便利!
ちなみにPDFではなく画像をコマンドラインから扱いたい場合にはImageMagickがとても便利です。 ImageMagickは↓の記事で解説してます。
インストール
基本的にはこちらからダウンロードしてインストール。
Ubuntuならapt-get、MacならHomebrew等からコマンド一つでインストールできますが,バージョンが少し古いので公式サイトからダウンロード推奨です。
$ sudo apt-get install pdftk # Ubuntu等 $ brew install pdftk # Mac
参考になるサイト
- Linuxサーバーでpdftkを使ってpdfファイルを結合
pdftk : PDF Command Line Tool
2つ目のサイトは,とても参考になりました。 (※ もう記事がありませんでした)
基本的には,↑のサイトを見れば分かります。ここではこれらのサイトの補足的なことをメモ。
入力ファイル名の指定方法
1. スペースで区切って複数指定
$ pdftk input1.pdf input2.pdf 操作 output output.pdf
2. ファイル名にハンドルを付けて指定
ハンドルを付けるとより柔軟で複雑な操作が可能。 スペースで区切って複数のファイルを指定した場合,指定した順番に操作が実行される。 但し,ハンドルを付けることでこの順番を入れ替えたり出来る。
$ pdftk A=input1.pdf B=input2.pdf 操作 output output.pdf
例) input1.pdfを180度回転させて、input2.pdfと結合
$ pdftk A=input1.pdf B=input2.pdf cat A Bsouth output output.pdf
3. ワイルドカードの指定
$ pdftk *.pdf 操作 output output.pdf 他にも $ pdftk input_00??.pdf 操作 output 出力ファイル名
ページ結合・抽出・回転(cat,shuffle)
PDFファイルの結合が可能。と言いつつもページの抽出やページの入れ替え,回転なども出来る。 ページの範囲の指定はファイル名にハンドル(A=ファイル名, B=ファイル名...等)を付けておく必要有り。
具体例はこちら↓
// 1から10ページ目までを抽出 $ pdftk input1.pdf cat 1-10 output out.pdf // 全てのページを90°回転 $ pdftk input1.pdf cat 1-endeast output out.pdf // 5,11,20ページのみ抽出 $ pdftk input1.pdf cat 5 11 20 output out.pdf // 5から25ページの奇数ページを抽出し,90°回転(ちなみにoddは奇数ページ,evenは偶数ページ) $ pdftk input1.pdf cat 5-25oddwest output out.pdf // 奇数ページを180度回転(shuffleは,ページを交互に配置しながら結合します) $ pdftk A=input1.pdf shuffle Aoddsouth Aeven output out.pdf // 結合する順番を入れ替える $ pdftk A=input1.pdf B=input2.pdf cat B A output out.pdf // ページを逆順に並べ替え $ pdftk input1.pdf cat end-1 output out.pdf
ページ回転のオプションは↓のように行えます(PDFtkの最新バージョン使ってる場合)
- north : 0°
- south : 180°
- east : 90°
- west : 270°
- left : -90°
- right : +90°
- down : +180°
left,right,downは相対的な角度です.
aptやbrewで古いバージョンのPDFtkでは、上のようにページ回転のオプションを指定するとエラーが発生しました。どうやら古いバージョンでは頭文字を大文字(north → N, south → S, ...)で記述するそうです。古いバージョンのPDFtkを使ってる人は注意してください.
ページ分割(burst)
入力ファイルをページ毎に分割して新しいPDFファイルを指定。
$ pdftk input.pdf burst // ホームフォルダ直下にout_01.pdfのような形式で出力するには $ pdftk input.pdf burst ~/out_%02d.pdf
Tips
PDFtkとか関係ないですが,Adobe ReaderでPDFファイルを開きたいなら↓のコマンドでOK. PDFtkを使うときには知っておくと何かと便利です。
$ acroread ファイル名
- 作者: John Whitington,村上雅章
- 出版社/メーカー: オライリージャパン
- 発売日: 2012/05/25
- メディア: 単行本(ソフトカバー)
- クリック: 166回
- この商品を含むブログ (9件) を見る