PowershellでPDFを分割 / 結合するコマンドがなかったので、気軽に使えるスクリプトを作成しました。
- Kazatoki/pdf_edit_lib https://github.com/Kazatoki/pdf_edit_lib
ソースコード自体はシンプルなものなので、本記事では使い方だけに焦点を当てております。
(GPLv3ライセンスのため、個々人でご活用いただければ幸いです。)
実現できること
- PowershellでPDFを編集(分割・結合・パスワード解除)
- ドラッグ & ドロップで、PDFを簡単に編集
環境
- Windows 10
- Powershell 5.0 以上
- PDFtk 2.02
環境構築
Install PDFtk
PDFtkをダウンロードし、インストールします。
https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/
pdf編集ツールをダウンロード
以下のリポジトリからzipファイルでダウンロードし、好きなフォルダに格納してください。
https://github.com/Kazatoki/pdf_edit_lib
## gitを使う場合
こちらからgitをインストールし、以下のコマンドを実行してください。
git clone https://github.com/Kazatoki/pdf_edit_lib.git
インストール
インストーラー ~/setup/installer.vbs
を起動することで設定が完了します。
インストール後は、どこでも以下のコマンドが使用できるようになります。
-
pdf_split.ps1
: 指定したPDFファイルをページごとに、バラバラに分解します。 -
pdf_join.ps1
: 指定した複数のPDFファイルを、一つのファイルに結合します。 -
pdf_unlock.ps1
: 指定したPDFのパスワードを解除します。(要:パスワード入力)
ただし、この設定はPowershellを使用しているときしか反映されません。
アンインストールしたい場合は、~/setup/uninstaller.vbs
を実行してください。
使い方
「コマンドラインを使う方法」と「ドラッグ&ドロップで実行する方法」(推奨)があります。
コマンドラインを使う方法
pdf_split.ps1
PDFファイルを引数に指定することで、そのファイルを1ページごとにバラバラに分解できます。
pdf_split.ps1 -filePath input.pdf [ -destPath destinationFolder ]
Example
pdf_split.ps1 .\test.pdf
以下のように、保存先の指定もできます。
pdf_split.ps1 .\test.pdf $home\Documents
pdf_join.ps1
選択した複数のPDFファイルを、一つのファイルに結合することができます。
結合したファイルは、参照先のファイルとおなじフォルダに保存されます。ファイル名の末尾には"_combine"
が追記されます。
また、出力されるPDFのページ順は、指定したファイル名の昇順となります。
pdf_join.ps1 input1.pdf input2.pdf [ input3.pdf ... ]
Example
pdf_split.ps1 .\test1.pdf .\test2.pdf .\test3.pdf
※このコマンドは保存先を指定することができません。
pdf_unlock.ps1
PDFファイルを指定し、パスワードを入力することで、パスワードを解除することができます。
pdf_unlock.ps1 -filePath input.pdf [ -destPath destinationFolder ]
Example
pdf_split.ps1 .\test.pdf
以下のように、保存先の指定もできます。
pdf_split.ps1 .\test.pdf $home\Documents
ドラッグ & ドロップでPDFファイルを分割(結合)
インストール時に作成されたショートカット( ~/pdf_split.ps1
, ~/pdf_join.ps1
, ~/pdf_unlock.ps1
)を使用します。
各ショートカットアイコンの上に、PDFファイルをドラッグ&ドロップすることで、ファイルの分割(split)、結合(join)、パスワード解除(unlock)を実行できます。
ファイルの出力先は、ドラッグ&ドロップしたファイルと同じ場所に作成されます。
以上