PDFをテキストに変換して読み上げる

PDFを読み上げる方法はいくつかあります。
Adobe Reader上でPDFをそのまま読むこともできますが、操作やフォーカスが難しい場合があります。
いくつかPDFをテキストに変換する方法をご紹介します。

テキストに変換すれば、Notepad++などのテキストエディタとNVDAで読み上げが可能です。
「ひとつずつ」で補足しているCCENTの問題集は、Adobe Readerですべてコピーし貼り付けの方法でテキストに変換しています。そして、ページ数がわかるように置換処理をしてます。置換処理は、ページ数への置換処理を参照ください。

上のテキスト変換方法は、PDFのセキュリティ設定で処理が許可されていることを前提にしています。
コピーなどが許可されていないPDFの読み上げは、セキュリティ制限があるPDFの読み上げを参照してください。2つの方法を紹介します。

問題集の無料特典のPDF版総仕上げ問題は、NVDAの読み上げ内容をテキストに出力する方法を利用しています。

Adobe Readerのインストール

Adobe Readerは、Adobe Acrobat Reader DCの略名です。こちらからダウンロードできます。
確認しているバージョンは、2018.011.20058です。
TABキーで移動すると以下のようなオプションのチェックボックスがあります。デフォルトはチェックが入っています。特に必要なければ、チェックをはずしたほうが混乱を避けられます。チェックはスペースキーの押下でオン・オフできます。

  • Acrobat Reader Chrome 拡張機能をインストール
  • 無償の McAfee Security Scan Plus ユーティリティをインストールして、現在使用している PC のセキュリティ状態を確認
  • McAfee Safe Connect をインストールして、1 タップでオンラインアクティビティと個人情報を保護

「今すぐインストール」リンクの選択でインストールファイル保存ダイアログが表示されます。
「readerdc_jp_xa_crd_install.exe」を保存し、実行します。選択したオプションによって、このファイル名は異なるようです。

Adobe Readerの起動

NVDAを利用している状態で、初めてAdobe Readerを起動すると「アクセシビリティ設定アシスタント」ダイヤログが起動します。
上下ーキーで移動し、「スクリーンリーダーのオプション設定」を選択した状態で、「次へ」に進みます。
「文書から読み上げ順序を推測」が選択されていることを確認し、「次へ」。
「文書全体を一度に読み上げる」を選択。続けて、ページレイアウトは「連続ページ」を選択し、「次へ」。
「PDF文書をWEBブラウザに表示」はチェックを外し、「完了」を選択します。

Adobe Readerですべてコピーし貼り付け

Adobe ReaderでPDFを開き、表示された内容を全て選択・コピーし、Notepad++などのテキストエディタに張り付ける方法です。
単純なコピーと貼り付けですが、試したPDFの中では、この方法が最も正確にテキスト変換できました。

  1. PDFをAdobe Readerで開きます。「支援テクノロジーでのタグ付けされていない文書の読み上げ」のウィンドウが起動した場合は、TABで移動し、キャンセルします。
  2. メニューの「表示」から「ページ表示」、続けて「見開きページ表示」を選択します。表示が「単一ページ」だと、全て選択しても、そのページだけが選択される場合があるためです。
  3. メニューの「表示」から「閲覧モード」を選択します。これは、次の「すべて選択」する対象が本文になるためです。「閲覧モード」がすでに選択されていた場合は、この操作で解除されます。次のコピー操作がうまくいかない場合は、再度、この「閲覧モード」を選択する操作を行ってください。実行の度に「閲覧モード」のオン・オフが切り替わります。
    なお、Adobe Readerの操作中に「警告。文書を操作できません」などが聞こえる場合がありますが、無視して構いません。
  4. メニューの「編集」から「すべて選択」を選択します。続けて、メニューの「編集」から「コピー」を選択します。サイズの大きなPDFの場合は時間がかかります。コピー完了後も、「警告。文書を操作できません」などが聞こえる場合があります。これはコピー完了の合図にもなります。
  5. Notepad++などのテキストエディタに、Ctrl+Vなどで張り付けします。

この方法はお奨めですが、PDFのページ数の把握が難しい場合があります。ページ毎に同じ文字列が出力されるPDFの場合は、他のアプリを利用し置換処理にて、ページ数を把握できます。
ページ数への置換処理を参照ください。

Adobe Readerでテキスト形式保存

以下は、Adobe ReaderでPDFを開き、テキストファイル形式で保存する方法です。
試したPDFでは、部分的に2重に出力される場合がありましたが、操作は簡単です。

  1. PDFをAdobe Readerで開きます。「タグ付けされていない文書の読み上げ」のウィンドウが起動した場合は、TABで移動し、キャンセルします。
  2. メニューの「ファイル」から「その他の形式で保存」、続けて「テキスト…」を選択。
  3. 「名前を付けて保存」のウィンドウが開きます。保存先やファイル名を選択し、「保存」します。

「送る」メニューにxdoc2txtを登録

Adobe Readerですべてコピーやテキスト形式で保存した場合、PDFでのページ数がわからなくなりますが、xdoc2txtというツールを利用するとページ数を自動挿入してくれます。テキストへの変換スピードも高速です。「Adobe Readerでテキスト形式保存」する方法よりもテキストへの変換精度が良い場合もあります。PDFだけでなく、WORDやEXCEL、パワーポイント、一太郎なども対応しているようです。
ただし、資料によっては、文字化けすることがあります。上のAdobe Readerを利用する方法では問題ない場合もありますので、使い分けるのが良いです。

オリジナルのxdoc2txtはコマンドプロンプトで利用したり、ショートカットを準備しますが、有志の方が簡単なセットアップツールを準備されています。そちらをご紹介しておきます。
一度セットアップすれば、簡単な操作で処理ができます。

誰でも使えるxdoc2txt

このセットアップツールだけで、コンテキストメニュー(右クリック)の「送る」メニューにxdoc2txtが登録されます。
対象のPDFファイルを選択し、xdoc2txtを選択すれば、テキスト変換されます。テキストファイルは、同じフォルダに作成されます。

その他、何か問題ある場合はバージョンアップもお試しください。このセットアップツールを利用すると2016年版のxdoc2txtが登録されますが、オリジナルサイトでは2018年10月の最新版がリリースされています。バージョンアップ方法も誰でも使えるxdoc2txtに記載されています。

xdoc2txtのページ数の表記

xdoc2txtで自動挿入されるページ表記は「–(ページ数/全体のページ数–」です。
例えば「–216/640–」のようになります。この例の場合、全体で640ページあり、その216ページを指します。ページ表記が挿入される場所は、そのページの終わり部分です。よって、「–215/640–」の下から「–216/640–」までが、216ページとなります。

xdoc2txtをコマンド操作でテキスト変換

上のセットアップツールをそのまま利用するとSJISでテキストファイルが作成されますが、資料によっては、一部文字化けする場合があります。
xdoc2txtには保存する文字コードを指定するオプションなどが用意されています。例えば、UTF-8で出力することで、文字化けした部分が改善することがあります。
誰でも使えるxdoc2txtのショートカット修正もよいですが、ここではコマンド操作でテキスト変換する方法をご紹介します。

  1. オリジナルサイトからxdoc2txtをダウンロードします。
    64bit版と32bit版があります。
  2. ダウンロードしたファイルを任意の場所に展開します。展開後に3つのフォルダができます。commandフォルダのみが必要です。commandフォルダを利用しやすい場所にコピーします。別のフォルダ名にしても構いません。ここでは例として、Cドライブ直下にコピーし、xdocというフォルダ名に変更したとします。
  3. 上のxdocフォルダ内に変換したいPDFファイルを置きます。ここでは、test.pdfというファイルを置いたとします。
  4. コマンドプロンプトを起動します。xdocフォルダにコマンドで移動します。

    > cd c:\xdoc 

  5. UTF-8に変換する場合は、以下のように実行します。
    > xdoc2txt.exe -f -8 test.pdf

    変換が完了すると、xdocフォルダにtest.txtというファイルが作成されます。コマンドプロンプト上では、以下のように表示されます。
    test.pdf ==> test.txt

セキュリティ制限があるPDFの読み上げ

PDFからテキストへ変換するためには、PDFのセキュリティ設定で、コピーなどが許可されている必要があります。
許可されていないPDFは、Adobe Reader上で表示されたPDFをそのままNVDAで読み上げる方法やNVDAの読み上げ内容をテキストに出力する方法があります。

Adobe Reader上で読み上げる

  1. PDFをAdobe Readerで開きます。
  2. NVDAを利用している場合、「支援テクノロジーでのタグ付けされていない文書の読み上げ」のウィンドウが起動します。「文書から読み上げ順序を推測」と「文書全体を読み上げる」が選択されていることを確認し、「開始」を押下します。読みあげ準備が開始されます。NVDAでは処理進捗をある程度教えてくれます。
  3. 処理完了後は、NVDAのブラウザモードで読み上げ可能です。ブラウザモードとフォーカスモードは、NVDAキー+スペースで切り替えます。

NVDAの読み上げ内容をテキストに出力する

上のAdobe Reader上で読み上げる内容をNVDAのスピーチビューアーに表示させ、その内容をテキストに出力する方法です。
内容を正確に把握したい場合や繰り返し確認したい場合に有効です。
以下は、一旦スピーチビューアーにPDFの内容をすべて表示させた後、スピーチビューアーの内容をコピーし、テキストエディタに張り付けています。

  1. PDFをAdobe Readerで開きます。
  2. NVDAを利用している場合、「支援テクノロジーでのタグ付けされていない文書の読み上げ」のウィンドウが起動します。「文書から読み上げ順序を推測」と「文書全体を読み上げる」が選択されていることを確認し、「開始」を押下します。読みあげ準備が開始されます。NVDAでは処理進捗をある程度教えてくれます。
  3. 処理完了後、一旦、ページ表示の状態を確認します。メニューの「表示」から「ページ表示」を選択し、「スクロールを有効にする」が選択されていることを確認します。選択されている場合、チェックと読み上げます。
  4. ページの先頭が表示されていることを確認します。ページの先頭には、メニューの「表示」から「ページナビゲーション」を選択し、「最初のページ」を選択します。例えば、PDF版総仕上げ問題の場合、最初のページは「総仕上げ問題(PDF版)」です。解答の場合は「総仕上げ問題(PDF版)解答」です。
  5. ここで、NVDAのスピーチビューアーを起動します。NVDAメニューの「ツール」から「スピーチビューアー」を選択します。ショートカットキーならば、NVDAキー + Nキーを押した後、Tキー、Sキーです。
  6. フォーカスをPDFファイルに戻し、下矢印キーを押し続けます。押し続ける時間は、PDFの内容によります。例えば、PDF版総仕上げ問題は26ページありますが、15秒ほどでした。処理が間に合わないため、読み上げられない場合が多いと思います。下矢印キーを一度放し、下矢印キーを再度押します。同じ内容が繰り返されれば、PDFの最後の行とわかります。PDF版総仕上げ問題の場合は「Q26」です。解答の場合は「A36」が最後の行です。
  7. フォーカスをスピーチビューアーに戻します。Ctrl+Aで全て選択し、Ctrl+Cでコピーします。
  8. Notepad++などのテキストエディタにCtrl+Vなどで、貼り付けします。ファイルに保存して、完了です。あとは、テキストエディタでPDFの内容が確認できます。

なお、起動したスピーチビューアーは、再度、NVDAメニューの「ツール」から「スピーチビューアー」を選択すると閉じることができます。ショートカットキーは起動時と同じく、NVDAキー + Nキーを押した後、Tキー、Sキーです。

(ここがページの最後です。更新日:2019年7月26日)