ブラウザで英文 PDF をちょっと翻訳しながら楽に読む
英語で書かれた PDF 文書を読むことに苦痛を感じる人は少なくないだろう。自力で意味の取りづらい文章をコピペしてその度に翻訳サイトで翻訳するのは非効率的で面倒くさい。
英文のまま読めればそれに越したことはないが、最低限の補助ツールとして翻訳は利用していたい。
ブラウザで PDF を閲覧することで、もうちょっと楽に翻訳しながら読むことが出来る。
次のような操作を実現できるブラウザ拡張機能を紹介したい。
-
# 辞書で単語の意味を引く
↳ Mouse Dictionary -
# 必要な部分だけポップアップで翻訳する
↳ Edge Translate
本記事では、PDF 全文を簡単に翻訳することは考えていません。あくまで、原文を読んで分かりづらい文章を補助的に翻訳できるツールを考えます。
また、本記事では余談として # さいごに 本記事で紹介した拡張機能の代替案やこの他の PDF の翻訳方法も示してみている。
○ 基本事項
■ 環境
動作を確認している環境は以下の通りになる。
- Windows
- MS Edge または Chrome
ブラウザは MS Edge と Chrome で確認しているが、この他の Chromium ベースのブラウザでも同じように動作すると思われる。
また、紹介する拡張機能は Firefox にも展開しているようなので、こちらでも同じように動作するはずである。
■ 拡張機能の取得
本記事で紹介する 2 つの拡張機能は、ブラウザの拡張機能ストアから取得することが出来る。
ストアのリンクは各拡張機能ごとに掲示している。
▼ ファイルの URL へのアクセスを許可する
ローカルの PDF を読みたい場合は、それぞれの拡張機能で ファイルの URL へのアクセスを許可する
を有効にしておく必要がある。
有効にするためには以下の手順を踏む。
- 拡張機能をインストール
- 右上のツールバーに拡張機能のアイコンが表示されるのでこれを右クリック
-
拡張機能の管理
を開く - ファイルの URL へのアクセスを許可するにチェックを入れて有効にする
これによって、ローカルに保存されたファイルを拡張機能が読めるようになる。
また、拡張機能ごとの設定は 拡張機能のオプション
から設定することが出来る。この設定画面は拡張機能ごとに異なる。
▼ キーボードショートカットの設定
キーボードショートカットは以下のページから設定することが出来る。
- Chrome
- chrome://extensions/shortcuts
- MS Edge
- edge://extensions/shortcuts
適切に簡便なキーボードショートカットを設定しておくと良いだろう。
○ 辞書で単語の意味を引く
単語の辞書的な意味が知りたい場合は、Mouse Dictionary を利用すると良い。
Repository:
wtetsu/mouse-dictionary: 📘A super fast dictionary for Chrome/Firefox - GitHub
2021/11 現在 Ver.1.5.4
以下のようにマウスを置いた単語の辞書的な意味を引くことが出来る。
■ 拡張機能ストア
MS Edge では Chrome のストアを利用する。
■ 特徴
- マウスポインタを合わせた単語を辞書的に引く
- 辞書を増やすことで熟語などにも対応させることが出来る
- ローカルに辞書をダウンロードしているため、オフライン環境でも辞書を引くことが出来る
- PDF は PDF.js で開くことが出来る
- デフォルトのビューワではこの拡張機能を利用することが出来ない
- デフォルトのビューワをオーバーライドしない
■ セットアップ
セットアップは Mouse Dictionary の作者から記事が公開されているので、以下の記事を参照すると良いだろう。
PDF 上で Mouse Dictionary を利用する場合は、内蔵の PDF.js で開ける必要があるので注意が必要になる。
具体的な使い方は次のツイートを参照してほしい。
最速最強を目指して開発中のブラウザ英語辞書ツール Mouse Dictionary ですが、このたび PDF に標準対応しました!
— Tetsu (@wtetsu) August 12, 2020
これまではツールの補助を受けづらかった PDF 英語論文・技術書を読む時も、超高速辞書を気軽に利用可能です。
PDF 対応はまだ新しい機能なので、ご要望や不具合報告もお待ちしております😄 pic.twitter.com/Tz1wKqjQW2
また、ローカルの PDF を開きたい場合も同様にこの拡張機能が提供する PDF.js で閲覧する必要がある。
次のように、PDF ビューワは 拡張機能のオプション
から開けたのちにファイルを読み込む。
「ローカルの英語 PDF についても使いたい!」という要望が意外と多そうなので、いい感じにしました (1.4.2 に更新してみてください) pic.twitter.com/pg8oPV7Rq0
— Tetsu (@wtetsu) August 14, 2020
このビューワのページをブックマークしておくとより楽だろう。
ブラウザにローカルの PDF ファイルをドラック&ドロップしてから拡張機能を動作させても、ファイルを上手く開くことが出来ないので注意が必要。
以下の # Mouse Dictionary の使い方いろいろ ではいくつか具体的な使い方を紹介している。
辞書の追加
Mouse Dictionary は外部からインポートされた辞書を読んで表示する拡張機能なので、辞書をインポートする必要がある。また、欲しい辞書を追加することも出来る。
- デフォルトの辞書 EJDict-hand - GitHub
- 追加辞書は英辞郎がオススメされており、BOOTH で購入可能 EDP - BOOTH
- 和英辞郎などもある
簡単にインポートできる辞書は次の Wiki に一覧がある。
Download dictionary data · wtetsu/mouse-dictionary Wiki - GitHub
当然、辞書があれば引けるので、英日に限らず、さまざまな言語に対応できるらしい。
最近の Mouse Dictionary 活用の素敵な事例、画像内テキスト、タイ語、ドイツ語などがあり、とても素敵です😊
— Tetsu (@wtetsu) June 27, 2019
画像 https://t.co/VF3TP8JOkt
タイ語 https://t.co/cJrCByGp8q
ドイツ語 https://t.co/99gpZ0b99whttps://t.co/rAnrW92drM
○ 必要な部分だけ翻訳する
PDF の選択した文章を翻訳するのみであれば、別タブで翻訳ページを開けて行うことも出来るが、タブを行き来するのは面倒くさい。
選択した文章のみをポップアップで翻訳できるようにしたい。
このような場合には、Edge Translate を利用すると良い。
Repository:
EdgeTranslate/EdgeTranslate: A translation extension. - GitHub
2021/11 現在 Ver.2.2.4
以下のようにドラック&ドロップで選択した文章の右上に翻訳ボタンが表示される。これを押下することで翻訳することが出来る。
下のデモでは元と目的の言語が異なるが、ちゃんと英日翻訳可能。
EdgeTranslate/EdgeTranslate: A translation extension. README # Demo - GitHub
もちろん、選択する範囲を長くすれば全体を翻訳も可能ではあるが、あまり見栄えの良い結果を伴わない。
必要な部分だけを翻訳するに留めた方が良いだろう。
また当然ながら、ドラック&ドロップで選択するため、ページをまたぐ文章に対してあまり上手に翻訳することが出来ない。これはヘッダーやフッターが含まれてしまうためである。
■ 拡張機能ストア
- Edge Translate - Chrome ウェブストア
- Edge Translate - Microsoft Edge Addons
- 侧边翻译 – 🦊 Firefox (ja) 向け拡張機能を入手
■ 特徴
- ウェブページや PDF ファイルで選択した文字列を翻訳
- ポップアップから翻訳
- 改行やハイフネーションを処理
- PDF は PDF.js で開くことが出来る
- デフォルトのビューワでも拡張機能を利用することが出来る
- デフォルトのビューワをオーバーライドする
- PDF のダークモードの利用可能
■ セットアップ
拡張機能のオプション
からいくつかの設定をしておく。
設定例として以下のようにしておくと良いだろう。
-
コンテンツの設定:以下の項目にチェック
詳細な意味
定義
例
-
ハイブリッド翻訳ソース設定 とデフォルトのページ翻訳:
- Google 翻訳または DeepL 翻訳にする
-
レイアウト設定:
長いコンテンツを折りたたむ
にチェック -
その他の設定:以下の項目にチェック
選択して翻訳を有効にする
内臓の PDF ビューアを使用する
翻訳後のテキスト選択をキャンセル
翻訳ボックスの右上にあるピンマークが傾いているとき、任意の箇所をクリックするとボックスが消えるようになる。
さいごに
Mouse Dictionary と Edge Translate 統合させて、PDF 上で同時に利用できるようにならないかしら(強欲な欲望)
頻繁に翻訳を利用していると英語が読めないままになってしまうので、すべてを翻訳してしまうのではなく、必要なところだけ翻訳するようにしたい。あくまで補助的な使い方を心がけておきたい。
また、技術的な問題として PDF ファイルをまるごと翻訳させるとレイアウトが崩れたり、うまく表示されない部分が出てくることがままある。折り返しがうまく処理されない場合も多い。
その意味でも、PDF 内の文書を翻訳するのであれば、必要な部分だけ翻訳する方が効率的であると思われる。
しかしながら、Google や DeepL などでの翻訳を認めない先生などもいるらしく、これらによる翻訳には風当たりの強い部分もあるようだ。
最終的に翻訳はあまり使わずに、Mouse Dictionary があれば読めるくらいにはなっていたい。
Edge Translate では DeepL による翻訳の実装も検討されているようだ。ただし、DeepL の API が中国のユーザをサポートしていないらしく実装が難航しているようだ。
能否考虑添加 DeepL 的翻译接口? · Issue #68 · EdgeTranslate/EdgeTranslate · GitHub
2022/09/05 現在、上の issue が close となり DeepL による翻訳が利用可能です。
ところで、この記事のタグはこれで合っている?
以下では補足や蛇足となるような記述が本文とほとんど同じ量あります。
PDF.js とは
記事内で PDF.js が頻出していたので一応。
PDF.js または pdf.js は、Web 標準に準拠した HTML5 Canvas を使用して Portable Document Format(PDF)ファイルをレンダリングする JavaScript ライブラリです。このプロジェクトは、Andreas Gal が 2011 年に(当初は実験として)立ち上げた後、Mozilla Foundation が主導しています。
Wikipedia より引用
- PDF.js - Official
- mozilla/pdf.js: PDF Reader in JavaScript - GitHub
- PDF.js demo - compressed.tracemonkey-pldi-09.pdf
要は、ブラウザで動く PDF ビューワです。
Mouse Dictionary の使い方いろいろ
作者の方が Twitter でさまざまな使い方についてツイートされていたので、一部抜粋して紹介します。
なんなら、Wiki よりも情報量が多く分かりやすい気がする……
Wiki にある基本操作は以下を参照のこと。
外部の翻訳サイトにコピペや編集しながら辞書の表示もできる
PDF 内の折り返しが改行になる問題もよしなに解決される。
これ、PDF をふつうに Mouse Dictionary で読みながら、DeepL 使いたくなったらふつうにコピペする、という手順で事足りる気がします
— Tetsu (@wtetsu) May 11, 2021
…のですが、👆のやり方で不都合あったら教えてください (Mouse Dictionary を改良します)
↓ こんな感じ https://t.co/TeTG05GVUQ pic.twitter.com/KlUzFfRDn5
上のように Mouse Dictionary 上の PDF ビューワで翻訳したい場合、普通に別タブで翻訳ページを開けていても良いが、やはり面倒である。
この場合には Simple Translate を利用すると解決するかもしれない。
Ctrl+Shift+Space
でツールバーポップアップから翻訳ボックスを表示させることが出来るため、タブを変更する必要がなくなる。ただし、この拡張機能では PDF には対応しておらず、ウェブ上では Edge Translate と同時に表示されてしまうため注意が必要である。(拡張機能オプションから ボタンやパネルを表示しない
ようにしておくと良いかもしれない)
あるいは、DeepL のデスクトップアプリを導入すれば良いだろう。
辞書ウィンドウ内でダブルクリックすると、選択モードに切り替わる。これで、コピペも簡単!
編集しながら利用できる。
ぼくのオススメ英語ツールも Mouse Dictionary, Grammarly, DeepL の 3 つです。
— Tetsu (@wtetsu) December 30, 2020
Mouse Dictionary は編集エリアでも使えるので、英文書くときにも役立ちますよ!pic.twitter.com/lsgorbSTDQ
音声入力させながら辞書を引くことも出来る。
英語音声のポッドキャスト等で英語 (を|で) 勉強する方法は、Google ドキュメント等で音声入力させつつ、Mouse Dictionary で即座に意味を調べるのが一番最強 pic.twitter.com/0HhnQ2xBCN
— Tetsu (@wtetsu) January 17, 2020
YouTube 字幕にも対応できる
ここまで出来るとちょっと怖いわね。
Mouse Dictionary が YouTube 字幕に使えるのはたまたまではなくてテキストっぽいものを探す処理がちゃんと実装されているからなんですよ (アピール) pic.twitter.com/QxW23VG4Sn
— Tetsu (@wtetsu) May 26, 2021
“テキストっぽいものを探す処理” がどれくらいのものを指すのか分からないが、YouTube 字幕以外にも使えそうな予感がありますね。
気持ちの良い場所に表示できる
Shift
を押しながらドラック&ドロップで移動させるて気持ちの良い場所に表示できる。
Mouse Dictionary 1.5.0 でひっそりと smart-snap という便利機能を追加したので、使ってみてください。
— Tetsu (@wtetsu) January 11, 2021
shift 押しながら移動することで、画面上の要素にピッタリと重ねたり、サイドバー風配置したりがとても簡単にできます。https://t.co/fjtzmoOY4r pic.twitter.com/Z8DvkpL2my
ちなみに、ポップアップ表示位置の基本思想はマウスの近くに表示させたくはないようです。
表示スタイルのカスタマイズ
それなりの HTML の知識があれば、表示スタイルをカスタマイズすることも可能のようです。
ちなみに私の Mouse Dictionary 設定はこちらで、表示をやや簡素化しつつ、各種お菓子 emoji から画像検索・類語検索等に飛べるカワイサがウリです。かっこよさはゼロです https://t.co/sGffD46jor pic.twitter.com/8X3mzu1gkZ
— Tetsu (@wtetsu) December 19, 2019
いくつかの設定は JSON でインポート/エクスポートが可能になっている。
Export and import settings · wtetsu/mouse-dictionary Wiki - GitHub
Mouse Dictionary の代替
Mouse Dictionary と同じようにウェブ上の英単語に対して辞書的な意味を引くことの出来る拡張機能があった。
- BooQs
- iKnow!
Edge Translate の代替
Edge Translate と同等の PDF 内の文章を翻訳する Chrome 拡張機能をいくつか見つけることが出来た。
どちらも DeepL を利用した拡張機能のようである。
詳しくは、使い方の記事を参照してほしい。
- PDF Translator
- DeepLopener
ただし、DeepLopener では DeepL の API を利用するために DeepL のアカウント登録が必要になる。
また、DeepL アカウントは無料枠では文字数制限があり、有料枠では従量課金される。金銭面で少しだけ注意が必要になる。
cf. DeepL API:文書ファイル翻訳時の文字数カウント - DeepL ヘルプセンター | どんなことでお困りですか?
代表的な翻訳サイト
皆さんご存知と思われるが、基本的な翻訳方法も紹介しておきたい。
- Google 翻訳
- DeepL 翻訳:世界一高精度な翻訳ツール
- Bing Microsoft Translator - 日本語へ翻訳
- Weblio 翻訳
- 英語翻訳 - エキサイト翻訳
- お試し翻訳 | AI 自動翻訳『みらい翻訳』
DeepL 翻訳はより自然な翻訳が出来るとして人気が高まっている。
PDF 文書を翻訳しながら読むいくつかの方法
上で紹介した方法の他に、PDF 文書を翻訳する方法は以下が考えられる。
知っているだけ書き出してみるが、実用性が伴うかどうかは不明。
-
コピペしたテキストを翻訳
- 最もオーソドックスな方法
- コピペした文章を # 代表的な翻訳サイト で翻訳する
- 折り返しが改行としてコピーされる場合は、Shaper を利用して改行を無くすことが出来る
-
PDF からテキストを抽出してから翻訳
- Poppler ライブラリにある pdftotext 等を利用してテキストを抽出する
- # 代表的な翻訳サイト で翻訳する
- ヘッダーやフッターなどをはじく必要がある
-
ソースファイルから翻訳する
- arXiv などで TeX などのソースファイルを取得できる場合は、これから翻訳することも出来る
-
*.tar.gz
で配布される場合は、$ tar -xvzf foo.tar.gz
から解凍することが出来る - 翻訳する際には、適当に LaTeX コマンドをはじいておく必要がある
-
arXiv Vanity - Read academic papers from arXiv as web pages を利用する
- arXiv にある論文であれば、PDF を HTML 化することが出来る
- HTML 化されたものをブラウザや拡張機能などで翻訳する
-
PDF ファイルをまるごと翻訳 1
- Google 翻訳や DeepL 翻訳では PDF ファイルをまるごと翻訳することが出来る
- ただし、ファイルサイズなどの制約やレイアウトが崩れるなどの問題が残る
-
PDF ファイルをまるごと翻訳 2
- DocTranslator を利用する
- アカウント作成が必要
-
PDF ファイルをまるごと翻訳 3
- Readable を利用する
- 英語の PDF ファイルをレイアウトを保ったまま日本語に翻訳するようです
- DeepL を利用するが、容量に制限がいくつかある
-
PDF を DOCX に変換してから翻訳 1
- MS Word で PDF を開き、
校閲
から翻訳する - ファイルサイズが大きい場合、処理が重い
- レイアウトがあまり壊れない印象
- MS Word で PDF を開き、
-
PDF を DOCX に変換してから翻訳 2
- 適当なコンバータを使って PDF を DOCX に変換する
- Google 翻訳や DeepL 翻訳で Word ファイルをまるごと翻訳する
この他にも、Python などで適当なスクリプトを組んで PDF を一括で翻訳する記事を書いている人もいた。
それぞれの参考記事:
- 「DeepL」が PDF ファイルの翻訳に対応〜自然な訳文が得られると人気の AI 翻訳サービス - 窓の杜
- PDF 文書を簡単に Word で編集する方法 | パソコン工房 NEXMAG
- 論文を Google 翻訳にかける時に便利な WebApp「Shaper」を公開しました - 地力不足の地蔵からの脱却
- pdf ファイルからテキストをぶっこ抜く pdftotext コマンド | Tips of Rubbish
- 英語論文読みを爆速にする、超便利ツール集 #2 クリックで全文を翻訳 arxiv 論文向け - Qiita
他により良い方法があれば教えてほしい。