VAフォトPDF:写真の束を1つのPDFにまとめる/Claude Codeの使い方も解説(Python)

サンプル

Claudeにはいつも相談していますが、「Claude Code」というのは何が違うのですか?

チャットのClaudeは、答えを文章で返してくれます。Claude Codeは、それに加えて、あなたのパソコンの中でファイルを作り、プログラムを動かして、結果を確かめるところまでやってくれます。

プログラムなんて書けませんが、それでも使えますか?

はい。日本語で「こういうものを作って」と頼むだけです。今回は、スマートフォンで撮った書類の写真をまとめて1つのPDFにするツールを、実際に作ってもらう過程をお見せします。インストールから始めますので、そのとおりに進めてみてください。

それだったら、今使っている市販のソフトでもできていますが...

そうですね。でも、余計な機能が入っていたり、設定に手間がかかったりしていませんか? 自分で作れば、自分の使い方にピッタリのツールが使えるようになります。それがこの記事の本当のねらいです。

サンプルのダウンロード

実行ファイルは、Pythonを入れていないパソコンでもそのまま動きます。ソースコード(photo_to_pdf.py)は、この記事の手順でClaude Codeが作ったものそのものです(配布用に、部品の読み込み順など3か所だけ手を加えています。処理の中身は変えていません)。

この記事でできるようになること

  • Claude Desktop(パソコン用のClaudeアプリ)を入れて、Claude Codeを使える状態にする
  • 日本語の依頼文で、パソコン上で動くプログラムを作ってもらう
  • 出来上がったものを動かし、気になった点を伝えて直してもらう
  • 出来上がったプログラムを保存して、次回また続きから頼む

読者として想定しているのは、チャットのClaudeは使っているが、Claude Codeは使ったことがなく、プログラムも書けない方です。Windows 11のパソコンで説明します。

なお、Claude Codeを使うには、Claudeの有料プラン(Pro以上)が必要です。無料プランでは使えません。

準備1:Claude Desktopを入れる

Claude Codeは、パソコン用のClaudeアプリ「Claude Desktop」の中にあります。

Claude Codeは、もともと黒い文字入力の画面(ターミナル)で使う道具です。Claude Desktopには、それが「Code」というタブとして組み込まれていて、いつものチャットと同じ見た目の画面で使えます。ターミナルを使わずに済むので、この記事ではClaude Desktopを使います。

  1. ブラウザで https://claude.com/download を開き、「Download for Windows」を押します。
Claude のダウンロードページ
  1. ダウンロードしたファイルを開き、画面の指示どおりに進めてインストールします。
  2. Claude Desktopを起動し、いつものClaudeのアカウントでサインインします。

もうひとつ、「Git for Windows」というソフトを入れておきます。これはClaude Codeが裏で使う部品で、Windowsでは入っていないとClaude Codeが動きません。中身を知る必要はありません。

  1. https://git-scm.com/downloads/win を開き、「Click here to download」を押します。
Git for Windows のダウンロードページ
  1. ダウンロードしたファイルを開き、何も変えずに「Next」を押し続けてインストールします。設定項目がたくさん出てきますが、すべて既定のままで構いません。
  2. インストールが終わったら、Claude Desktopをいったん閉じて、開き直します。

準備2:Pythonを入れる

今回作るプログラムは「Python(パイソン)」という言語で動きます。Pythonを動かす部品をパソコンに入れておきます。

プログラムの言語は、何も言わなければClaudeが選びます。この記事では、読者の準備を同じにするため、依頼文で「Pythonで」と指定します。Pythonにした理由は、無料で、ExcelやWordがなくてもWindowsのパソコン上で動くこと、写真やPDFを扱う部品(ライブラリ)が豊富で、必要な部品はClaudeが自分で追加できること、Claudeが最も得意とする言語のひとつであることです。ExcelやWordの中で動くものが欲しいときはVBAでも作れます(記事の終わりで触れます)。

  1. https://www.python.org/downloads/ を開き、「Download Python install manager」を押します。
Python のダウンロードページ
  1. ダウンロードしたファイルを開き、画面の指示どおりにインストールします。

これで準備は終わりです。Pythonの使い方を知らなくても大丈夫です。使うのはClaude Codeです。

作業フォルダを作って、Claude Codeで開く

Claude Codeは「フォルダ」を単位に仕事をします。作ってもらうプログラムや、その材料になるファイルは、すべてそのフォルダの中に置かれます。

  1. エクスプローラーで、「ドキュメント」の中に新しいフォルダを作ります。名前は「VAフォトPDF」とします。
  2. その中に「テスト写真」というフォルダを作り、スマートフォンで撮った書類の写真を何枚か入れておきます。手元にあるもので構いません。
  3. Claude Desktopを開き、上部の「Code」タブを押します。
  4. 「ローカル」の横にあるフォルダのボタンを押し、いま作った「VAフォトPDF」を選びます。
Code タブの送信欄。フォルダ・モード・モデルの表示

送信欄の下に、3つの表示があります。

  • 左端の「自動」は、Claudeがファイルの作成やプログラムの実行を、いちいち確認せずに進める設定です。有料プランでは最初からこれになっています。もし「自動」が選べないときは、「編集を受け入れる」を選んでください。
  • 右端の「Sonnet 5」などはAIのモデル名です。Sonnet、OpusまたはFableを推奨します。この記事のプログラム作成はSonnet 5を使用しました。
権限モードの選択メニュー

依頼する

送信欄に、次の文をそのまま貼り付けて送ります。

私は法律事務所で事務を担当しています。依頼者から、契約書や領収書などの書類をスマートフォンで撮影した写真が何枚も送られてくることがあります。また、弁護士が記録をデジタルカメラで撮影して持ち帰ることもあります。こうした写真は、1つのPDFにまとめて保管し、必要に応じて印刷や送付をしたいのですが、今は写真を1枚ずつ開いて手作業で並べており、枚数が多いと時間がかかります。

写真の束を手作業なしで1つのPDFにするために、フォルダの中の写真をまとめて1つのPDFにするプログラムを作ってください。

目的は、写真フォルダを選んでボタンを押すだけで、印刷や送付にそのまま使えるPDFが出来上がっている状態にすることです。写真は書類を写したものなので、1枚を1ページとして、A4の縦向きのページに、縦横の比率を保ったまま収めてください。ページの順番はファイル名の順にしてください。出来上がったPDFは写真と同じフォルダに、フォルダと同じ名前で保存してください。

パソコンはWindows 11で、Pythonはインストール済みです。必要なライブラリがあればインストールして構いません。使う人はプログラムの知識がないので、ファイルをダブルクリックすれば起動し、ボタンでフォルダを選べる簡単な画面にしてください。

プログラムはPythonのファイル1つにまとめてください。出来上がったら、テスト用の画像を作って実際に動かし、PDFが正しくできることを確かめてから報告してください。

依頼文を貼り付けたところ

法律事務所でない方は、最初の段落を自分の状況に書き換えてください。困っていることを具体的に書くほど、出来上がりは良くなります。逆に、「どう作るか」は書いていません。それはClaudeに任せます。

依頼(プロンプト)の書き方について、より詳しく知りたい方は、こちらの記事をご参照ください。

送信すると、Claudeが作業を始めます。画面には「実行済み 9件のコマンド、作成済み 2個のファイル」のように、何をしているかが表示されます。パソコンの中で、必要な部品(ライブラリ)を自分で追加し、プログラムを書き、テスト用の写真で実際に動かして確かめています。

数分で、完了の報告が返ってきます。

作成完了の報告

このとき筆者の環境では、依頼から報告まで10分ほどでした。報告には、作ったファイルの名前、使い方、確認した内容が書かれています。

確認の画面が出たら

「自動」でも、ときどきClaudeから確認を求められることがあります。内容は画面に書いてあります。読んで、次のように判断してください。

  • ソフトやライブラリを追加してよいか、という質問は、自分の依頼に必要なら「はい」で構いません。Claudeは理由を書いています。判断がつかなければ、「それは何のために必要ですか。入れずに済む方法はありますか」と送信欄から聞き返してください。
  • 作業フォルダの外にあるファイルを読んでよいか、という確認は、自分が指定した場所(別の場所にある写真フォルダなど)なら「はい」、心当たりのない場所なら「いいえ」です。

「いいえ」を選んでも、Claudeは別の方法を探すか、できない理由を説明します。壊れることはありません。ただし、確認の画面をそのままにしておくと、Claudeは止まったまま待ち続けます。

動かす

エクスプローラーで「VAフォトPDF」フォルダを開くと、2つのファイルができています。

出来上がったファイル
  • photo_to_pdf.py — プログラム本体
  • 写真をPDFにする.bat — ダブルクリックで起動するためのファイル

「写真をPDFにする.bat」をダブルクリックすると、小さな画面が開きます。

出来上がったプログラムの画面

ボタンを押して「テスト写真」フォルダを選ぶと、そのフォルダの中に「テスト写真.pdf」ができます。開いて確かめてみてください。

直してもらう

筆者が自分の写真で試したところ、3つ気になる点がありました。写真によっては印刷すると文字が薄くて読みにくいこと、紙を横にして撮った写真がそのまま横倒しでPDFに入ること、背景の机まで写っていることです。

最初のプログラムの出力。紙を横にして撮った写真が、横倒しのまま入っている(図は記事用に作った架空の書類の写真です)

こういうときは、同じ送信欄に、気になった点をそのまま書いて送ります。筆者が送ったのは次の文です。

実際に使ってみると、写真の紙の部分が印刷すると文字が読みにくいものがありました。 また、紙の方向がバラバラで読みにくい状態となっています。 さらに、背景の机まで写っているのも気になります。

白黒(グレースケール)で出力する選択肢を追加してください。ふだんはカラーのままで、必要なときだけ白黒を選べる形にしてください。明るさのむらを軽く整える程度で問題ありません。 文字の向きに応じて、紙の方向を修正するようにしてください。 紙の部分を切り抜いて表示するようにしてください。

前半で「何に困ったか」、後半で「どうなってほしいか」を書いています。専門用語は要りません。

このとき、Claudeから確認が返ってきました。文字の向きを判定するために、無料の文字認識ソフト(Tesseract OCR)をパソコンに追加で入れてよいか、という内容です。

追加の依頼文と、Claude からの確認

これは前の節で書いた「ソフトを追加してよいかの質問」です。依頼に必要なものなので「インストールしてよい」を選びました。Claudeがインストールを済ませ、プログラムを直し、筆者の写真で確かめて、10分ほどで報告が返ってきました。

修正後のプログラムの画面。白黒の選択肢が付いた
直したプログラムの出力。同じ写真が、紙だけ切り抜かれ、読める向きになった
薄暗い写真を「白黒(グレースケール)で出力する」で処理したページ

報告には、5枚の写真のうち2枚は紙の切り抜きが判定できなかったので、元の写真のまま収めた、と書かれていました。そこで理由を聞いてみました。

残り2枚が判定できなかった原因は何ですか?

Claudeは、その2枚は紙面の中に写真や色付きの帯が多く、紙と机の境目を見分けられなかったこと、判定できないときは誤って中身を切らずに元の写真を残す設計にしてあること、精度を上げる方法もあるが別の写真で誤検出が増える可能性があること、を説明してくれました。

筆者はこれで十分と考え、次の一言で終わりにしました。

わかりました。このままで良いです。

Claudeは最終的な仕様をまとめて報告し、作業は完了です。

このように、出来たものを動かしてみて、気になったことを言葉で伝え、分からないことは質問する。これを繰り返すだけです。依頼文は、最初の1通と、直してもらう1通、質問が1通、決定が1通の計4通でした。Claudeが手を動かしていた時間は、合わせて40分ほどです。

保存と、次回の続け方

出来上がったプログラムは、作業フォルダ「VAフォトPDF」の中にそのまま残っています。特別な保存操作は要りません。フォルダごとコピーすれば、他のパソコンにも持っていけます(そのパソコンにもPythonが必要です)。

次回、同じプログラムに手を加えたいときは、Claude Desktopの左側にあるセッション一覧から、今回のセッションを開けば、続きから頼めます。新しいセッションを開いて同じフォルダを選んでも構いません。Claudeはフォルダの中のプログラムを読んでから作業します。

応用:もっと大きなプログラムでも同じです

この記事のきっかけは、ある弁護士の方が自作された、写真から書類のPDFを作る数千行のプログラムでした。うまく動かない箇所があり、筆者がClaude Codeで原因を調べて修正したのですが、やったことはこの記事と同じです。「この写真で補正が効かない。原因を調べて直してほしい」と依頼し、Claudeが実際に動かして原因を突き止め、直し、確かめる。数千行あっても、中身を把握していなくても、依頼の仕方は変わりません。

なお、そのような込み入った原因調査では、送信欄の右下でモデルを上位のもの(OpusやFable)に切り替えると、やり取りの回数が減ります。

この記事で作成したツールに、次のような改修を加えることも可能です。ぜひ、自分自身の好みに合ったツールに仕上げてください。

  • ツールを実行形式で出力する。(Pythonがインストールされていない環境でも動作できるようになります。)
  • ツールのアイコンを自分の好きなものにする。
  • 出力先のフォルダを選べるようにする。
  • 入力元のファイルを個別に選択できるようにする。
  • 斜めから撮影した写真を修正できるようにする。
  • OCR機能を追加する。(テキストの検索やコピーができるようになります。)

ExcelやWordのVBAでも、同じ流れで作ってもらえます。VBAの場合は、コードをファイルとして出し入れする「VAコード」を使うと、Claude Codeとの受け渡しが簡単になります。


VAフォトPDF ― 写真の束を、フォルダを選ぶだけで1つのPDFに

こんな悩みはありませんか

  • 依頼者からスマートフォンで撮った書類の写真が何枚も送られてきて、1枚ずつ開いて確認している
  • 記録をデジタルカメラで撮影して持ち帰ったが、写真のままでは保管や送付がしにくい
  • 写真をPDFにまとめるとき、向きがバラバラだったり、背景の机が写っていたりして見づらい
  • 薄暗い写真は、印刷すると文字が読みにくい

VAフォトPDFは、写真の入ったフォルダを選ぶだけで、こうした整理をまとめて済ませる無料ツールです。

まとめることに徹する、という割り切り

このツールが行うのは、写真をPDFにまとめることだけです。PDFの編集は行いません。紙の切り抜きも、判定に自信がない写真では行わず、元の写真のまま収めます。誤って中身を切り落とすより、そのまま残すほうが安全だからです。

主な機能

  • フォルダの中の写真(JPG・PNG・BMP・TIFF・HEIC)を、ファイル名順に1つのPDFにまとめる(数字の名前は人が数える順)
  • 1枚を1ページとして、A4縦のページに縦横の比率を保って収める
  • 写真の向きの記録を反映し、記録が無い写真は文字の向きを判定して読める向きに回転する
  • 背景が写っている場合は紙の部分を切り抜く(判定できないときは元のまま)
  • 「白黒(グレースケール)で出力する」を選ぶと、明るさのむらを軽く整えた白黒で出力する
  • PDFは写真と同じフォルダに、フォルダと同じ名前で保存する

安心して使える設計

  • 完全ローカル動作:クラウドや外部サービスへの通信は行いません。写真の内容がパソコンの外に出ることはありません
  • 原本を書き換えない:元の写真はそのまま残ります
  • 生成AIを使わない:文字の向きの判定は、同梱の文字認識エンジンによる機械的な処理です

動作環境・導入方法

Windows環境を想定しています。実行ファイル形式(.exe)で配布しているため、Pythonの知識やインストールは不要です。VA_PhotoPDF.exeを任意のフォルダに置いてダブルクリックするだけで起動できます(必要なファイルを1つにまとめた形式のため、起動に十数秒かかることがあります)。

初回起動時に「WindowsによってPCが保護されました」と表示された場合は、「詳細情報」→「実行」を選択してください。

記事の手順でPythonを入れた方は、ソースコードのphoto_to_pdf.pyをそのまま動かすこともできます。

オープンソースで公開

実行ファイル・ソースコード一式を、MIT Licenseの下でオープンソース公開します。改変・再配布・商用利用を含め自由にご利用いただけます(著作権表示とライセンス条文の保持が条件です)。同梱している外部ソフト(Tesseract OCRなど)のライセンスは、zip内のTHIRD_PARTY_LICENSES.txtに記載しています。

コメント

タイトルとURLをコピーしました