linux で pdf を cbz形式に変換する

kobo touchにpdf を入れるのは実に簡単です。パソコンに繋いでドラッグアンドドロップで普通に読み込めます。フォルダの中にあっても大丈夫です。

しかしpdf を直に読むとページめくりが明らかに遅いんですよね。いろいろ調べた結果cbz形式というものに変換すると良いらしいので、linuxで変換する方法についてまとめます。(windowsならば便利なソフトがあるらしいのでもっと簡単だと思います)

pdftoppm コマンドを使う

方針としては以下のようになります

  1. pdfをjpegに変換する
  2. jpegをzip形式に圧縮
  3. リネームで.zip を .cbz に改変する
pdfをjpegに変換するときにpdftoppmを使います。自分の環境では最初から使えたのですが、ない場合はいれる必要があります。

まず端末を開いて目的のpdfのあるフォルダに移動します(以下目的のpdfの名前をabc.pdf とします) 最初にjpegを入れとくフォルダを作成。最終的に消すので名前は何でもいいです。
$ mkdir ./abc

次にpdftoppmによってjpegに変換します。pdftoppmの後にpdfのファイル名、変換後のファイル名を続けて書きます
$ pdftoppm -jpeg abc.pdf ./abc/page -r 300
するとpage-○○○.jpgがぞろぞろと生成されます。-r オプションはDPIの設定です。kobo touchは170dpiですが気持ち多めにしました。

$ zip -r9 abc.cbz ./abc
$ rm -rf ./abc

オプションr はディレクトリを対象としているので必要です。9は圧縮率で数字が大きいほど高圧縮です(9が最高、6がデフォルト)。

このcbzをkobo touchにいれればさくさく読めるようになります。ただし作者名は不明で固定されるようです。

シェルスクリプトを使おう

一つ一つ上の作業を行うのはとても面倒なので初めてシェルスクリプトを作ってみました。 まずは.sh が拡張子のファイルを作成してその中に以下の内容を書きました。

その後実行権限を加えて($ chmod +w ○○.sh)起動すれば同じフォルダにあるすべてのpdfファイルをcbzに直してくれます。初めてシェルスクリプトを書いたのですがこういった何度も行う作業をするのには本当に便利ですね。

関連記事

コメント

非公開コメント

プロフィール

pioessu

Author:pioessu
あくまで主観的に最近知ったこととか書きます。情報"共有"系メイプルブログ

メインはAB。やーっとの思いで250レベルになりました。
サブに浮気しがちです。

おすすめサイト

月別アーカイブ

検索フォーム

連絡先

御用のある方はこちらへ

→メールフォーム