「PDFパワポ変換」PDFを編集可能なPowerPointスライドへ変換するVBAツール

PowerPointVBA

PDF資料をPowerPointで修正したいのに、AcrobatReaderでは編集できなくて困ったことはないでしょうか。Wordで開くとレイアウトが崩れるし、勤務先ではインターネット環境でのアップロードが禁止されているのでオンラインの変換サービスも使えない、有償のAdobeや変換ソフトもない、そんなときに役立つのが我らがVBAです。

PDFの見た目をできるだけ保ちながら、文字をPowerPoint上で編集できるようにするVBAツール「PDFパワポ変換」を作成しました。PowerPointのマクロでPDFを解析し、編集可能なPPTXファイルを作成します。

ツールのトップ画面、というかトップスライド

できること

  • レイアウト重視と編集重視(テキストを結合)の2種類から選択
  • PDF内の文字をPowerPointの編集可能なテキストへ変換
  • 文字位置、フォントサイズ、文字色、太字、斜体を可能な範囲で再現
  • 写真、罫線、塗り、グラフなどは背景画像として保持
  • 複数のPDFファイルを選択して連続変換
  • 途中のPDFでエラーが発生しても、残りの変換を継続

変換結果は、元のPDFと同じフォルダーへ「元のファイル名-editable.pptx」という名前で保存されます。同名ファイルがある場合は、自動的に連番を付けます。

2つの変換モード

レイアウト重視

文字を細かい単位で配置し、元PDFの位置や書式を優先します。表、帳票、契約書、段組み文書など、見た目を崩したくない場合に向いています。

編集重視(テキストを結合)

同じ段落に属すると判断した行を、できるだけ1つのテキストボックスへまとめます。文章をまとめて修正しやすくなります。

行間、インデント、文字サイズ、文字色、太字、段落番号などを見ながら結合しています。ただし、PDFには「この文字列は同じテキストボックス」という情報が必ずしも残っていないため、すべてのPDFで完全に再現できるわけではありません。

使い方

  1. 配布ZIPを展開します。
  2. 「PDFパワポ変換.ppsm」をダブルクリックします。
  3. マクロがブロックされた場合は、ファイルの安全性を確認したうえで有効化します。
  4. 「レイアウト重視」または「編集重視(テキストを結合)」をクリックします。
  5. 変換するPDFを選択します。CtrlキーやShiftキーを使って複数選択できます。

複数ファイルを選択した場合は、変換結果を大量に開かず、PPTXファイルの保存だけを行います。最後に成功件数と失敗件数を表示します。

ダウンロード

PDFパワポ変換をダウンロード

配布物には、Apache PDFBoxと小型のEclipse Temurin Java Runtimeを同梱しています。JavaやPDFBoxを別途インストールする必要はありません。VBAプロジェクトのロックもかけていませんので、安心してご利用いただけます。

注意点

  • スキャンPDFや画像化された文字は編集可能になりません。OCR機能はありません。
  • PDFで使われているフォントがPCにない場合は、近いフォントへ置き換えられます。
  • 縦書き、文字回転、特殊な文字間隔は完全に再現できない場合があります。
  • 複雑な表では編集重視よりレイアウト重視のほうが安定します。
  • パスワード保護されたPDFは変換できない場合があります。
  • 会社PCなどで利用する場合は、組織のマクロ・Java実行・ソフトウェア利用規則を確認してください。

仕組み

PDFBoxでPDFを解析し、文字を除いたページ画像と、文字の位置・サイズ・色・フォント情報を作成します。PowerPoint VBAはページ画像を背景として配置し、その上へ透明なPowerPoint図形として文字を重ねます。

図や罫線をすべてPowerPoint図形へ変換する方式ではありませんが、背景画像を利用することで見た目を保ちつつ、本文を編集できる実用的な構成にしています。

それでは、よいPDF/VBAライフを!

使用ライブラリ

  • Apache PDFBox 3.0.7(Apache License 2.0)
  • Eclipse Temurin / OpenJDK 21(GPLv2 with Classpath Exception)

ライセンス文書と第三者ソフトウェアの通知は、配布ZIP内に同梱しています。

コメント

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