VA FAX:インターネットFAX送信用のPDFを作成(Python)

サンプル

うちの事務所でも、インターネットFAXを使うようになりました。

いちいち紙に印刷する手間が省けるので、便利ですよね。

でも送信できるPDFファイルのサイズや容量などに制限があって、それに合わせるのが結構めんどうです。

分かりました。Claude Codeを使って、PDFをドラッグ&ドロップしてボタンを押すだけで、そういった条件への適合をすべて自動でやってくれるツールを作りましよう。

ありがとうございます!


目次

  • ダウンロード
  • VA FAX ― インターネットFAX送信用のPDFを、ドラッグ&ドロップで自動変換
  • こんな悩みはありませんか
  • 変換までに徹する、という割り切り
  • 主な機能
  • 対応FAXサービス
  • 安心して使える設計
  • 動作環境・導入方法
  • オープンソースで公開

ダウンロード

このツールは、こちらの統合版(インストーラー付き)にも含まれています。

要件定義書(仕様書)はこちらです。

VA FAX ― インターネットFAX送信用のPDFを、ドラッグ&ドロップで自動変換

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

クラウドPBXやインターネットFAXの導入が進み、パソコンからFAXを送信できる事務所が増えました。便利になった一方で、送信するPDFには意外と厳しい条件があります。

  • 送信条件(A4・モノクロ・3MB以内など)に合わせて、PDFを手作業で加工するのが面倒
  • テキスト付きのPDFをそのまま送ると、フォントが置き換わったり、送信に失敗したりすることがある
  • B4・A3のページが混ざった資料を、A4に収め直すのが手間
  • 容量オーバーのたびに、解像度を下げたりファイルを分けたりと試行錯誤している
  • どのページが原因で送信できないのか、見当がつかない

VA FAXは、お手元のPDFをドラッグ&ドロップして「変換して出力」を押すだけで、こうした条件への適合をすべて自動で済ませる無料ツールです。

変換までに徹する、という割り切り

このツールが行うのは、送信できるPDFを作るところまでです。FAXの送信そのものは、変換後のPDFをお使いのFAXサービスの画面でアップロードして行っていただきます。

もうひとつのこだわりが、実行前の確認です。ファイルを読み込むと、ページ数・用紙サイズ・カラーの有無などの事前診断結果と、変換後の見込みを示すプレビュー(変換イメージ)が表示されます。仕上がりを目で確かめてから「変換して出力」を押す——という流れなので、「白黒にしたら図面がつぶれていた」といった事故を送信前に防げます。

主な機能

変換(自動で行われます)

  • 入力された複数のファイルの結合(削除や順番の入れ替えもできます)
  • 全ページの画像化(テキスト付きPDFで起こるフォントの置き換わり・送信失敗を構造的に回避します)
  • 用紙正規化(B4・A3等はA4に縮小、A4より小さいページは原寸のまま中央配置、横向きページはサービスが非対応の場合に回転して縦置き)
  • 白黒2値化(FAX標準のG4圧縮。ディザ方式は、文字ページには単純閾値、写真ページには誤差拡散を1ページずつ自動選択)
  • 容量上限を超える場合の自動調整(容量の大きい原因ページだけ画質を下げ、他のページの画質は保ちます。画質を下げたくない場合は、複数ファイルへの分割も選べます)

選べる設定(必要なときだけ)

  • 写真・図版中心の資料向けに、濃淡を残すグレースケール(JPEG圧縮)も選択可能
  • 適用した方式・解像度を記録した変換レポートの出力

変換が終わると、プレビューが実際に出力されたPDF(変換結果)に切り替わるので、自動調整があった場合もその仕上がりを確認できます。あとは出力されたPDFをFAXサービスの画面でアップロードするだけです。

対応FAXサービス

サービスごとの制約(容量上限・対応用紙など)をプロファイルとして同梱しており、初回起動時にお使いのサービスを選ぶだけで、以後はそのサービスの条件に合わせた変換が行われます。

サービス備考
MOT/FAX(標準)公式仕様に基づく
MOVFAX公式仕様に基づく
メッセージプラス公式仕様に基づく
秒速FAX送信公式仕様に基づく
eFax容量上限(合計1MB)は参考値(公式未確認)
jFax容量上限(合計1MB)は参考値(公式未確認)
カスタムお使いのサービスの公表仕様を入力して利用

一覧にないサービスをお使いの場合も、「カスタム」に公表仕様(最大ファイルサイズ・ページ数上限・対応用紙サイズ等)を入力すれば利用できます。eFax・jFaxをお使いの場合は、初回はご自身のFAX番号宛にテスト送信して仕上がりをご確認ください。

安心して使える設計

法律事務所等での利用を想定し、文書の秘密が外部に出ない設計にしています。

  • 完全ローカル動作:クラウドAPIや外部サービスへの通信は一切行いません。ネットワーク通信を行うコード自体を含んでいません
  • 文書情報を保存しない:変換はすべてメモリ内で処理し、一時ファイルを作りません。保存されるのはフォルダパス等の画面状態のみです
  • 文書のプロパティ情報も引き継がない:入力PDFの作成者名・タイトル等のメタデータは、出力PDFに含まれません
  • ログにもファイル名を残さない:不具合調査用のログには技術情報のみを記録します
  • 原本を書き換えない:入力したPDFはそのまま残ります

動作環境・導入方法

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

初回起動時に「WindowsによってPCが保護されました」と表示された場合は、「詳細情報」→「実行」を選択してください。続いてFAXサービスの選択画面が表示されるので、契約中のサービスを選べば準備完了です。

設定ファイル(settings.json)を他のパソコンの同じ場所へコピーすれば、FAXサービスの選択や既定設定を事務所内の複数のパソコンに一括で配布することもできます。

オープンソースで公開

実行ファイル・操作マニュアル・ソースコード一式を、MIT Licenseの下でオープンソース公開します。改変・再配布・商用利用を含め自由にご利用いただけます(著作権表示とライセンス条文の保持が条件です)。ソースコードも同梱していますので、内部でどのような処理が行われているかご自身で確認いただくことも可能です。

コメント

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