研究書などの英語でしか出版されていない書籍は、kindleで購入したほうが圧倒的にお得なことも。
ただいちいちわからない単語を調べながら読むのは大変なので、PDF化して全文日本語訳してみます。
個人的に納得できる範囲まで行けなかったので、良い方法あればコメントなどで教えてください!
今回の流れ
思ったようにうまくいかなかったので、こちらを見て求めているものと違ったらブラウザバックです。
- PowerautomateでKindle全ページスクショ(自動)
- スクショを一括でPDFに変換(手動だが一発)
- PDFを圧縮して2MBごとに分割(手動)
- 分割PDFをGoogleドキュメントで開いて文字起こし(手動)
- 文字起こしファイルを翻訳ファイルで開きなおし(手動)
今回訳した書籍
イーロンマスク氏のSpaceX社を追った作品ですが、日本語に訳されておらずハードカバーで6000円します。
kindle版だと1500円で、ここまで価格に差がある+日本語版がないことを考えると一番安い選択肢かな…
購入したら「kindle for PC」をパソコンにインストールして日本語訳したい書籍を開いておきましょう。
洋書をスクショ
kindleの書籍データを直接PDFに変換する方法もあるようですが、Amazonの規約的にアウトらしい。
スクショでの個人利用なら大丈夫らしいですが、一枚一枚ページ送りをして撮影していくのは大変。
そこで利用するのがMicrosoft社が無料で提供している自動化アプリ「Power automate」になります。
参考にしたサイトはこちら。ほぼサイト通りですが、うまくいかなかった部分について補足しました。
Power AutomateでWindows Kindleスクショ自動化してみた|すこんぶ
UI要素の名前変更
セレクタービルダーが表示されるので、赤で囲ったName属性の演算子を「含む」に変更し値を「Kindle」にします。
最後に三点ボタンで名前の変更を選択してWindow名を’Kindle’にします。するとフローのエラーが二つとも消えて作業完了です。エラーが消えなかったら手順を見直してください。
ダブルクリックして変更する項目は「Window ’Kindle 作品名’」で「Document ‘作品名’」ではありません。
動画を見れば良かったのですが、下の項目を変更していてうまく動かず若干苦労しました。
Kindleアプリの起動確認
はじめにKindleのアプリのスクショ撮影をするため、Kindleアプリの起動確認がありますがうまくいかず。
「Kindleアプリが起動していません。起動後再度処理してください。」というメッセージが表示されます。
原因不明なので「ウィンドウにフォーカスする」の右側の三点ボタンから「アクションを無効化する」。
最大化してページ撮影
上記の問題から、スクリプト起動後、Kindleのアプリをクリックしてアクティブにする必要があります。
スクリプト起動後も「スクショ枚数」「右/左開き」の選択項目があり、撮影まで少し時間がありました。
そこでKindleのページ幅を最大にしておき、スクリプトを起動させてからKindleアプリを最大化します。
こうすることで1ページ当たりの文字数が増え、スクリーンショットの枚数が少なくて済むメリットが。
さらに参考にしたサイトにある、スクリーンショットを切り取り加工する手間が省けるのでおすすめ。
設定は左上の「表示>表示オプション>ページ幅」です、さらに行間を狭くするのも効果的でしょう。
スクリプトを起動させたらKindleアプリを選択し、F11キーかアプリ上の「Aa」の右側のボタンで最大化。
注釈の非表示
スクリプトを起動させて撮影を始めたときに、他の人たちがハイライトした部分が表示されていました。
線が引いてあるだけではなく「多くの人がハイライトしています」的な文章があり、読み取りに不便。
「ツール>オプション>他のKindleユーザーが最も多くハイライトした部分を…」のチェックを外します。
画像の一括PDF化
ツールを使おうかと思いましたが、画像を一括選択してWindows標準機能「Microsoft Print to PDF」が便利。
画像を一つ選択してから「Ctrl+A」で全選択、右クリックして一番下にある「その他のオプションを確認」。
「印刷(P)」で印刷画面が表示されるので、プリンターを「Microsoft Print to PDF」に設定します。
下にある「写真をフレームに合わせる」にチェックが入っていると文章が欠けてしまうので外します。
「印刷」ボタンを押すと保存先の指定ができるので、わかりやすい場所にして好きな名前を付けましょう。
これでKindleのデータをPDFデータに変換することができました!
PDFを圧縮する
作ったPDFをilovePDFにアップロードしてGoogleドキュメントで開けるサイズに分割します。
まずはPDF圧縮で低画質高圧縮を選択。文書にもよりますが、印刷された活字なら大丈夫そう。
圧縮が完了したらそのまま下のメニューにある「PDF分割」に飛んでください。この時の容量をメモ。
PDFの分割
圧縮したPDFファイルを2MBずつになるように分割します。計算よりも若干小さく見ておくと〇。
今回の例だと圧縮後容量が14.59MBなので8等分で、212/8=26.5なので27枚ごとに分割かな。
スクショ撮ったときは7等分しようとしていくつかのファイルが2MBを超えたので注意しましょう。
PDFをGoogleドキュメントで開く
PDFをGoogleドキュメントで開くことでOCR(文字の読み取り)を行います。2MBが限界らしい。
分割したPDFファイルをGoogleドライブにアップして右クリック>アプリで開く>Googleドキュメント。
時間がかかるので元のGoogleドライブのタブに戻って、複数ファイルを並行して開いておくとよい。
ここがどうしても自動でできない…コード改修版がある方、教えていただけると非常に嬉しいです!
https://note.com/toranoana_lab/n/na0f9f9da0851
Googleドキュメントを翻訳する
OCRが終わったファイルは文字の大きさや色がバラバラなので、標準テキストに直しておきます。
ツール>ドキュメントの翻訳機能を選択し、言語「日本語」を選び(選択肢の一番下)「翻訳」を押します。
こちらも新たに翻訳ファイル作成に時間がかかるので、Googleドライブに戻って複数ファイルを同時並行。
Googleドキュメントを結合する
必要であればドキュメント1枚のドキュメントに結合しますが、こちらも自動化できなかったので手動。
ここがどうしても自動でできない…コード改修版がある方、教えていただけると非常に嬉しいです!
https://programming-zero.net/join-google-docs-manual
コメント