Kindle のスクショを自動化

 

23/03/07
3/31追記
5/18追記


「【DIY】Kindle のスクショを自動化してみた」という YouTube 動画を見つけた。

動画を見てもらえばすむ話なのだが、今回はおいらがやってもできましたという報告を兼ねての忘備録である。

実は今回の『開運の作法』という Kindle 本は買ったやつなので PDF 化する必要はなかったのだが(笑)、unlimited で無料購入した本は20冊までしか残しておけないというルールがあるので、残しておきたい本ばかりになってしまった場合はこのように PDF 化しておけば心置きなく削除して新しい本が入れられる。もちろん手作業でも可能だが、およそ気が遠くなるほど時間がかかるので、自動化しちゃおうというわけである。
 

■スクリプトファイルの作成

アプリケーション>ユーティリティ>スクリプトエディタを使う。

スクリプトエディタにはあらかじめシステム設定で「プライバシーとセキュリティ>アクセシビリティ」、「プライバシーとセキュリティ>フルディスクアクセス」 を許可しておこう。

スクリプトエディタを開く。

 

以下のコードをペースト。

-- ページ数
set pages to 320
-- 対象アプリ
set target to "Kindle"
-- 保存フォルダ
set savepath to "~/Pictures/フォルダの名前/"
-- 開始ファイル番号
set spage to 1
-- めくり方向(1=左 2=右)
set pagedir to 1
-- ページめくりウエイト(秒)
set pausetime to 2.0
-- 切り抜きサイズ(画面中心から)
set cropx to 0
set cropy to 0
-- リサイズ横(切り抜く前のサイズ換算=画面横/切り抜き横*仕上がり横)
set resizew to 0
if pagedir = 1 then
set keychar to (ASCII character 28)
else
set keychar to (ASCII character 29)
end if
if target is not "" then
tell application target
activate
end tell
end if
delay pausetime
repeat with i from spage to pages
if i < 10 then
set dp to "00" & i
else if i < 100 then
set dp to "0" & i
else if i < 1000 then
set dp to "" & i
end if
set spath to (savepath & "p" & dp & ".png")
do shell script "screencapture " & spath
if cropx is not 0 and cropy is not 0 then
if resizew is not 0 then
do shell script "sips -c " & cropy & " " & cropx & " --resampleWidth " & resizew & " " & spath & " --out " & spath
else
do shell script "sips -c " & cropy & " " & cropx & " " & spath & " --out " & spath
end if
end if
tell application "System Events"
keystroke keychar
end tell
delay pausetime
end repeat
activate

少しだけ直す部分があるのだが、その前にキャプチャ書類を保存するフォルダを作っておく。
 

■保存フォルダの作成

Finder で「picture」で検索し、「ピクチャ」というフォルダを開く。

「ピクチャ」フォルダの中に新規フォルダを作り、今回は「開運」と名付ける。

ちなみに新規フォルダを作る作業が多い人は、「ツールバーを右クリック>ツールバーをカスタマイズ」でツールバーに「新規フォルダ」ボタンを常駐させておくと非常に便利だ。

 
■スクリプトの修正

【ページ数】:Kindle 本は字の大きさによってページ数が変わってしまうので、気持ち多めに設定しておく。今回は結果的に247ページだったので320のままで大丈夫だった。多い分は最終ページだけ重複して保存されるので、あとで消去すればよい。

【保存フォルダ】:「ピクチャ」フォルダの中に作った保存フォルダの名前(ここでは「開運」)を入れる。

【めくり方向】:本が縦書きの場合は1のままでよい。横書きのときは2に設定。

 
■スクリプトの実行

再生ボタンを押して実行。今回は10分ちょっとで終わった。

前述の通り最終ページだけ重複して保存されるので、多い分はゴミ箱に捨てよう。

 
■切り取り作業

画面全体をキャプチャしているので、本の部分以外をまとめて切り取る作業を行う。
App Store でダウンロードしておいた XnConvert というフリーアプリを起動。

「フォルダの追加」をクリック。

「開運」フォルダを選択。

「動作」タブを開く。

「変換後」を開いてサイズを調整する。

サイズ指定が終わったら切り取り後のファイルの保存先を作ろう。「出力」タブを開き、赤丸のところをクリック。

開運フォルダを選択し、Open。

New Folder をクリックし、わかりやすく「切り取り後」という新規フォルダを作る。

Open をクリック。

保存先のフォルダが「Pictures/開運/切り取り後」になっているのを確認して「変換」をクリック。

 
■PDFを作成

「切り取り後」内のファイルを「すべて選択して右クリック>クイックアクション>PDFを作成」を実行。

できあがった PDF書類に「開運の作法」と名前を付けてできあがり!

 

 
【3月31日追記】

Kindle 本をスクショして作った PDF 書類を iPhone で読むときは Apple Books(通称「ブック」)をインストールしよう。

PDF 書類を AirDrop で Mac から iPhone に転送。
iPhone で受信するときに保存場所を聞かれるので、ブックのライブラリを選択。

 

 
【5月18日追記】

以前「Kindle本をテキスト化」で、「Google ドキュメント」を使って Kindle 本のスクショ(jpeg)からテキストを抽出したことがあったが、本1冊分となると大変な作業だった。
しかし PDF 書類になっていれば、まとめてテキスト化することができるのだった!

Google ドライブを起動。

マイドライブに PDF ファイルをアップロードしておき、ファイルを「右クリック > アプリで開く > Google ドキュメント」で Google ドキュメントを起動。

完了するまで待とう。

完了! テキストを全選択し、iText Express にコピペ。

これはラクだ〜。