ImageMagickはマルチプラットフォームで使えるオープンソースの画像変換アプリで、非常に便利なので時々使用しています。Linuxではもちろん、Windows環境でも使用しています。
複数枚の画像を一括してPDFに変換する等、コマンド一発で処理してくれるので手がかからず便利なのです。
また、PDFを1ページずつ画像化することも出来るのは何気に便利だったりします。
今回、ImageMagickを使ってPNG形式の画像をPDF化しようとした時にエラーが出てどうしようもなくなったので、最新版のImageMagickにバージョンアップしたところ、CONVERTコマンドが使用出来なくなりました。正確に記すとCONVERTコマンドでNTFSの変換(これもCONVERTコマンドだった)が起動します。
コマンド名が変わった?
調べてみたらMAGICKというコマンドに変更になっていました。どうやらVer.7からmagickコマンドに変更になったとか。
更にオプションの-geometryも使えなくなってエラーが表示されます。調べたら-sizeコマンドに変わってしまった様です。ネットで検索してもImageMagick Ver.6の頃の情報ばかりで、この辺りのことは公式サイトを確認するしか有りません。英語で記述されていますがコマンドのサンプルを見ると概ね想像がつくので大丈夫でしょう。
ImageMagick: Command-line Processing
結果的には変更後のコマンドとオプションを使用して目的達成となりました。今回はVer.6で正常に処理出来ない画像が当たってしまったのでVer.7にしてしまいましから余計な手間がかかってしまいましたが、既にImageMagickはVer.7に移行されている様なので覚えるしか無さそうです。
今後の為に備忘録しておきます。
PDFをPNGに変換(複数ページ)
> magick -density 300 -size 3000 source.pdf target%04d.png
PNGをPDFに変換(複数枚画像)
> magick -density 300 *.png target.pdf
ちなみに以前(Ver.6)は下記の様にしていました。
> convert -density 300 -geometry 3000 source.pdf target%04d.png
> convert -density 300 *.png target.pdf
今のところconvertコマンドがmagickに変わり、-geometryオプションが-sizeオプションに変更という感じで理解しています。詳しいことはやはり公式情報を見るか、今後Ver.7系のImageMagick様の記事が増えるのを待つしか無さそうです。
※ImageMagickはPDFからPNGに変換する時に、べらぼうメモリーを消費します。8GBでギリギリという状態です。8GBで足りなくなるとは時代は変わって行っているなぁと思います。
コメント