PDFハンドリング1
PythonのPyPDF2を利用して結合、合成などをドラッグ&ドロップだけで実行するシステムを考えました。
ドラッグ&ドロップでできることは、以下の作業です。
1.PDFをファイル名順に結合して、結合前のファイル名を栞として添付する(栞無しも可能)
2.PDF2つを前面・背面として合成する(長・短)
3.PDFの全ページに、ロゴを付ける
4.PDFの全ページに、透かしを付ける
5.PDFからページを抜き出す
6.PDFから同じページ数を順に抜き出す
7.PDFの栞データを抜き出す
8.PDFに栞を付ける
9.PDFの栞を削除する
1.PDFをファイル名順に結合して、結合前のファイル名を栞として添付する(栞無しも可能)
PDFの結合の際に、ファイル名順、栞をファイル名で付ける機能を利用すると、会議の資料を手分けして案件ごとにPDFを作成。
ファイル名に議題の番号を名前を含めて一か所にあつめてから、本ツールにドラッグ&ドロップすると、栞付きのPDFに、会議の最中のページの移動が楽にできるので便利です。
使い方は、複数のPDFを一つのフォルダに集めて置いて、本ツールにドラッグ&ドロップするだけです。
栞付加の方は、結合する前のファイル名から、栞を新たに作りながら結合します。
栞維持の方は、結合する前のPDFにもともと含まれている栞を、そのまま活かして結合します。
PDFの結合で栞が上手く機能しないツールもありますので、特に【結合_栞維持.vbs】はお役に立てるのではないかと思います。
2.PDF2つを前面・背面として合成する(長・短)
2つのPDFを同時にドラッグ&ドロップすると、前面・背面として合成します。
どちらを前面にして、どちらを背面にするかを明示する際は、従属する方のPDFのファイル名に、半角の大括弧をつけて、その中に前面または背面と記入しておくことで実現します。
合成後のファイル名は、大括弧が付いていない方をもとに作成しています。
長・短でどちらを選ぶかは、長の方はページ数が多い方、短はページ数の少ない方に合わせます。
3.PDFの全ページに、ロゴを付ける
4.PDFの全ページに、透かしを付ける
2.PDF2つを前面・背面として合成する(長・短)の応用で、2つのPDFを表裏合成するのですが、その際に、片方のPDFは1ページ目を繰り返しもう片方の全ページに合成します。
スタンプの方は、繰り返す方を前面から貼り付けます。
透かしの方は、繰り返す方を背面から貼り付けます。
5.PDFからページを抜き出す
複数ページのPDFの7ページ目から11ページ目までを抜き出したい際は、VBSのファイル名の大括弧内を[7-11]に書き換えてから、PDFをドラッグ&ドロップします。
図のXの位置に抜き出したい範囲の最初の数字、Yの位置に最後のページの数字を書き込みます。
6.PDFから同じページ数を順に抜き出す
繰り返し同じページ数に分割するのが、CubePDFUtilityなどでは少し面倒に感じますので、PDFを4ページずつ12個のファイルに分割したいと思ったときに作成しました。
PDFをドラッグ&ドロップする前にVBSのファイル名を変更します。
4ページずつ分割するときは、Yの位置に4を書き込みます。
分割を1ページ目からの場合はXの位置に1を書き込みます。
分割したいページの前に、前文などがあった場合に、分割の頭を変えられるので便利です。
7.PDFの栞データを抜き出す
栞付きのPDFをドラッグ&ドロップすると、栞のデータがテキストファイルに出力されます。
栞のテキストデータが必要なケースは少ないかもしれませんが、栞のデータを少し改変して付け直したいときなどに便利です。
8.PDFに栞を付ける
UTF-8で保存したテキストファイルとPDFを同時にドラッグ&ドロップすると、PDFに栞が付けられます。
栞のファイルの構造は、タイトル<>ページ番号が1行ずつなのですが、栞に階層がある場合は、行の頭で[TAB]キーで階層の数だけ下げておきます。
青空文庫より<>1
[TAB]1.だしの取り方<>1
[TAB]2.狸と与太郎<>5
[TAB]3.余と万年筆<>7
[TAB]4.ア、秋<>12
[TAB]5.魚美人<>15
[TAB]第2階層<>16
[TAB][TAB]第3階層<>16
[TAB][TAB][TAB]第4階層<>16
9.PDFの栞を削除する
PDFから、栞を削除したPDFを作成するツールです。