【Mac】zip にまとめられたイメージを PDF に
自炊した本や雑誌を、zip にまとめて閲覧しているひとは多いかと思う。
これを Kindle で読むために、PDF にしてみたいと思った。
プレビュー.app の印刷で、「PDF で保存」を使えば簡単だろうが、ここではコマンドを利用したい。
imageMagick のインストールと convert
jpg を PDF に変換するようなコマンドが、なんかあるだろ、と思っていろいろ捜してみたんだが、けっきょく imageMagick に頼るのか一番みたいだ。
imageMagick は Homebrew でインストールできる。
brew install imagemagick
imageMagick をインストールすると、convert というコマンドが使えるようになる。convert をもちいれば、画像を pdf 書類に変換できるようになるわけだ。
基本は、
convert 画像ファイル 出力PDF
とシンプル。
複数の画像を指定する場合は、ワイルドカードの「 * 」が使える。
convert フォルダのパス/*.jpg out.pdf
これでフォルダ内の jpg ファイルが、ひとつの PDF としてまとめられるはずである。
シェルスクリプト
画像ファイルだけを内包した zip ファイルを pdf ファイルにする場合、シェルスクリプトにすればこんな風になるかと思う。
zip2pdf.sh アーカイブ.zip
というような使い方を想定している。
📝 zip2pdf.sh
#!/bin/bash
# zipファイルのある場所へ移動
dir=`dirname "$1"`
cd "${dir}"
# zip ファイルのファイル名を摘出
# ${変数%.*} は拡張子を消す変数展開
zipName=`basename "${1}"`
folder=`echo ${zipName%.*}`
# unzip でファイルを解凍。-d オプションで展開先
# のディレクトリを指定している。
# cd でそのディレクトリへ移動
unzip -d "${folder}" "${zipName}"
cd "${folder}"
# フォルダの中身すべてを PDF にコンバートする。
# 中身は全部、画像ファイルである、という前提である。
convert * ../"${folder}".pdf
# 必要なら展開先のフォルダを削除
# cd ../
# rm -r "${folder}"
これで出来上がる pdf のファイルサイズは、zip ファイルのサイズとあまり変わらないので、おそらく画像は劣化していないと思う。
ちなみに、pdf を kindle へ送るのは、以下のサイトさまのような方法で出来るらしい。
最近のコメント