連載
» 2014年10月29日 11時30分 UPDATE

ITプロ必携の超便利システム管理ツール集(14):アプリ開発者御用達の画像処理ツール「ImageMagick」を普段使いに

「スキャンした画像をPDFで送って」と頼まれた場合、PDF形式のファイル出力機能を持つコピー複合機があれば簡単ですが、PDF出力に対応していないスキャナーやデジカメでは、結構面倒な作業が発生します。そんなとき「ImageMagick」があれば、魔法のように面倒な仕事を片付けられます。

[山市良,テクニカルライター]
「ITプロ必携の超便利システム管理ツール集」のインデックス

連載目次

今回紹介するツール

[ツール名]ImageMagick

[対象]Windows、UNIX、Linux、Mac OS、iOS

[提供元]ImageMagick Studio LLC

[ダウンロード先][URL]http://www.imagemagick.org/[英語]


アプリ開発者向けの高機能画像変換・編集ツール

 「ImageMagick」は、ビットマップ画像(.bmp)を作成、編集、変換するためのオープンソース(Apache 2.0ライセンス)のツールセットです。

 ImageMagickは、BMPやGIF、PNG、JPEG、TIFFといった一般的な画像形式はもちろん、PostScript、EPS、SVGといった特殊用途向けの画像形式や、PDFなどのドキュメント形式にも対応しており、画像形式の相互変換やサイズ変更、カラー調整、合成、テキスト/図形の描画、サムネイル作成など、本格的な画像処理機能を提供します。

 これらの機能は「convert」「identify」「composite」などのコマンドラインツールから利用できる他、C、C++、COM+(Windows)、Java、.NET(Windows)、Perl、PHP、Pythonなど、さまざまなプログラミング言語から呼び出すことができます(画面1画面2)。

画面1 画面1 「convert」は画像形式の変換、「identify」は画像情報の取得、「display」は画像を表示するためのツール
画面2 画面2 Windows上でも同じように利用できる。ただし、Windows版のdisplayは「imdisplay.exe」であることに注意

 ImageMagickはクロスプラットフォーム対応であり、Windows、UNIX、Linux、Mac OS X、iOS向けのバイナリが用意されているので、プラットフォームを問わず、簡単に導入することができます。

 ImageMagickのダウンロードページからは、Linux向けにはRed HatおよびCentOS向けのRPMパッケージが用意されていますが、利用中のLinuxディストリビューションのリポジトリから、標準のソフトウェア管理ツールを利用して簡単にインストールできるはずです。

 なお、Windowsの場合は「C:\Program Files\ImageMagick-<バージョン>」フォルダーにImageMagickのバイナリがインストールされ、このパスがシステムのPATH変数の先頭に追加されます。

 ImageMagickの画像変換用の「convert.exe」は、Windowsのボリューム形式変換ツールである「%Windir%\System32\convert.exe」と同名であることに注意してください。「%Windir%\System32」以外の場所から実行するconvertは、ImageMagickのconvert.exeになります。

筆者はスキャン結果のPDF化に活用

 ImageMagickと筆者との出会いは、10年ほど前、とある企業でPHPベースのちょっとしたWebアプリケーションを開発していたときです。アプリ利用者側がアップロードするさまざまな形式の画像ファイルの品質をチェックし、アップロード後の確認用サムネイルを作成したり、こちらの都合のよいファイル形式で保存したりするのに利用しました。

 しかし今回は、ImageMagickを利用したプログラミングの説明はしません。実は、つい先日までImageMagickのことはすっかり忘れていたからです。

 ImageMagickのことを思い出したのは、先日、ある文書に押印して、PDF形式で送付するように依頼されたからでした。

 オフィスのコピー複合機なら、スキャンした結果をPDF形式で共有フォルダーに出力したり、メールで送信したりする機能を持つものがあります。筆者の手元にはコピー&スキャン機能を備えたプリンターならありますが、Windows標準の「スキャン機能」(Windows FAXとスキャン)は一般的な画像形式(BMP、JPEG、GIF、TIFF、またはPNG)にしか対応していません。

 Wordドキュメントにスキャンした画像を貼り付け、PDF形式でエクスポートするというのも一つの方法ですが、それでは時間がかかって面倒です。何か簡単にできる方法はないものかと考えていたとき、思い出したのがImageMagickです。

 ImageMagickはPDF形式に対応しています。例えば、スキャン結果をJPEG形式で保存したなら、次のコマンドライン1行で、ほんの一瞬でPDF形式に変換することが可能です。

convert ファイル名.jpeg ファイル名.pdf


 複数ページのPDF作成も簡単です。例えば、「bookcover01.jpeg」と「bookcover02.jpeg」という二つのJPEG画像がある場合、次のコマンドライン1行で、2ページのPDFドキュメントを作成できます(画面3)。

convert bookcover*.jpeg bookcover.pdf


画面3 画面3 「convert」コマンドでJPEG画像をPDFドキュメントに一瞬で変換

 複数ファイルの指定にワイルドカードが使えない場合は、「-adjoin」オプションを付けて追加する画像を指定してください。例えば、次の例はファイル形式の異なる三つの画像ファイル「page01.tif」「page02.jpg」「page03.bmp」から、3ページのPDFファイル「page01-03.pdf」を作成するコマンドになります(画面4)。

convert page01.tif -adjoin page02.jpg -adjoin page03.bmp page01-03.pdf


画面4 画面4 複数の画像ファイルをまとめて、複数ページのPDFドキュメントにすることも可能

 画像サイズにも依存しますが、一般的な画像を単体または数枚変換するだけなら、ほんの一瞬で完了します。Wordドキュメントに貼り付けて、PDF形式でエクスポートして……なんてことをしていたのがばからしくなるほどです。

 ちなみに筆者は、エクスプローラーの「送る」メニュー(「Shell:Sendto」にショートカットを登録)にバッチファイルを登録して、右クリックメニューから素早くPDFに変換できるようにしています(画面5)。これ、すごく便利ですよ。ぜひお試しください。

画面5 画面5 エクスプローラーの「送る」メニューから素早くPDF変換できる
「ITプロ必携の超便利システム管理ツール集」バックナンバー

筆者紹介

山市 良(やまいち りょう)

岩手県花巻市在住。Microsoft MVP:Hyper-V(Oct 2008 - Sep 2014)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。マイクロソフト製品、テクノロジを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手がける。個人ブログは『山市良のえぬなんとかわーるど』。


Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

Focus

- PR -

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。