はじめに
PDFを印刷して、ボールペンで入力して、再度スキャンするというルーティンを何度も繰り返してました・・・。
私は金釘流(字が下手だということらしい。)という流派に属しており、字を書くのもストレス。
それをスキャンして送って、相手を困らせるのもストレス。
これをなんとかしたい!!
と、もう10年くらい考えておりました。なので、作りました。
試行錯誤した期間が長いため、記事が長くなります。
私自身でも整理したいため、分割して投稿します。
-目次-
1.はじめにと、成果物紹介
2.機能説明
3.ソースコード解説
4.今後について
(後で変えるかもしれません。)
出来たもの
最終的には、権利関係が全くわからないので、フリーにしますが、
そのまま商用に製品化ーとかはやめてください。(なんとなく納得いかないので)
ソースコード、ダウンロートはGitから:
https://github.com/kinjoarata/PDFEditor2/tree/main/PDFEditor2
使い方
1.PDFファイル
私の運営しているプログラミングスクールの入会申込用紙を仮定してExcelでPDFの申込み用紙を作りました。
1ページ目(申込欄):
2.PDFEditor2(PythonのCanvas)で開く
3.PDFEditor2(PythonのCanvas)で文字等を入力する
4.PDFを出力
途中で気付いたこと
これだけだったら、Adobeのローカルアプリ上で出来るんですね・・・。
最後の方に調べて、「入力を署名」で無料でPDFの上に文字を乗っけられるし、○つけられるし、レ点付けられるし・・・。ずっと有償版買わないといけないって思ってた。
PDFEditorを作り終わりそうなときに気付いてしまって、まぁ困った。
しかーし! そこで折れたらプログラマーとしてのプライドが許さない!
もっと使い勝手がいいのを作ってやろうじゃないか!
ということで、色々機能を付けることにしましたので、次回から機能の説明をします!
・入力内容のCSV保存
・入力内容のCSV読み込み
・一括CSV→複数PDF出力
想定している使われ方
一般的というよりは、業務的に使えそうなアプリになりました。
定期的に手入力しなきゃならないデータがあります。
それらを事務方の方で予め入力してくれないかな???
ということで、CSVデータから一括でPDFを作れるようにしました。
「年末調整とか」
1.PDFテンプレートを用意
2.PDFEditor2 で1件目のレイアウト、csvデータを作成+保存
3.csvデータを編集して、全社員分のcsvデータ作成
4.一括処理でPDFを作成
5.印刷して配って、従業員は確認して、印鑑押して提出。
「毎月やらないといけないやつ」
1.PDFテンプレートを用意
2.PDFEditor2 でレイアウト、データを作成
3.csvデータの日付だけ変えて、PDFを作成
4.印刷して、印鑑押して、提出。
「帳票システムとして使用」
1.PDFテンプレートを用意
2.システムからcsvファイル作成
3.csvファイルの存在確認後、関連したPDFを生成
4.所定のフォルダに置く
5.システムからダウンロードできるようになる。
とりあえず思いつくのはこれくらいですが、悪くはないかなと。
自己満足出来るくらいのクオリティはでてます。
ソースコード、ダウンロードはGitから
【重要】
画面ディスプレイの解像度をフルHD(1920x1080)を想定して作成しております。
ここからダウンロードできますが、環境設定が必要となります。
https://github.com/kinjoarata/PDFEditor2/tree/main/PDFEditor2
関連記事(全4個)
PythonでPDFの上に文字とか乗っけるアプリを作った!-1.はじめに、成果物紹介-
(この記事です)
PythonでPDFの上に文字とか乗っけるアプリを作った!-2.機能説明-
https://qiita.com/ArataKinjo/items/f934812de7b471b352a8
PythonでPDFの上に文字とか乗っけるアプリを作った!-3.ソースコード解説-
https://qiita.com/ArataKinjo/items/c92b4637c44f2bf574e3
PythonでPDFの上に文字とか乗っけるアプリを作った!-4.今後について-
https://qiita.com/ArataKinjo/items/c71492569bd9bb76d092