今回は、オープンソフトウェアで画像加工ソフトである「ImageMagick」の紹介です。
ImageMagickは、CUIベースで画像を加工するオープンソフトウェアです。
CUIなので、コマンドラインベースでの入力になります。
画像ファイルの形式を変更したり、画像に効果をつけたりすることができます。
代表的な使い方を少し紹介。
画像形式をpng→jpgに変換する
$ convert 変換前.png 変換後ファイル.jpg
結果は次のとおりです。(表示は縮小しているので、画像をクリックして確認してみてください)
画像形式をpng→jpgに変換する(圧縮率を設定する)
$ convert 変換前.png -quality 10 変換後ファイル.jpg
-qualityオプションが圧縮率です。100がMAXなので、10だと10%ということになります。
結果は次のとおりです。
画像サイズをリサイズする
$ convert 変換前.png -resize 640x480 変換後.jpg
-resizeオプションがサイズ指定です。
指定したサイズになるのではなく、縦横比を維持した状態で指定したサイズ内で収まる最大サイズで画像を生成します。
結果は次のとおり。
横幅指定で縦幅自動の場合は、以下のような感じ。
$ convert 変換前.png -resize 640x 変換後.jpg
縦幅指定で横幅自動の場合は、以下のような感じ。
$ convert 変換前.png -resize x480 変換後.jpg
他にも色々遊べます。
今回は、ImageMagickのconvertのみ紹介しましたが、他にも使えるコマンドやオプションは多数あります。
ネットで調べてみても大半がconvertの処理なので、他のコマンドやオプションを知りたい場合は、専門書を読んだほうが理解が早いです。
私が参考にしているのは、以下の書籍です。
国内では、唯一日本語で書かれたImageMagick本です。
かなり有用な情報が書かれていますが、すでに絶版です。。。
入手は以下のamazonなどで中古書として入手するしかないですね。
ただ、PHPでの使い方などのサンプルは本当の意味でサンプルです。
実際にサービスとして公開する場合にはセキュリティを意識したPHPのコードにしなければなりませんし、ImageMagickのPHPラッパーであるImagickを使う方法も紹介されていないので、その辺は自分で調べるしかないですね。
個人的にはImagickを使ったほうがPHPのコードはスッキリすると思います。
これからは技術的な情報は、本ブログとQiitaに投稿していこうと思います。
Qiitaは、技術者向けのSNSで、閲覧だけであれば登録しなくてもGoogleなどで用語検索をすればhitします。
コメント