【ソフトウェア開発】ImageMagick


今回は、オープンソフトウェアで画像加工ソフトである「ImageMagick」の紹介です。

ImageMagickは、CUIベースで画像を加工するオープンソフトウェアです。
CUIなので、コマンドラインベースでの入力になります。

画像ファイルの形式を変更したり、画像に効果をつけたりすることができます。

代表的な使い方を少し紹介。

画像形式をpng→jpgに変換する

$ convert 変換前.png 変換後ファイル.jpg

結果は次のとおりです。(表示は縮小しているので、画像をクリックして確認してみてください)

koalaKoala

画像形式をpng→jpgに変換する(圧縮率を設定する)

$ convert 変換前.png -quality 10 変換後ファイル.jpg

-qualityオプションが圧縮率です。100がMAXなので、10だと10%ということになります。
結果は次のとおりです。

koalaKoala_10

画像サイズをリサイズする

$ convert 変換前.png -resize 640x480 変換後.jpg

-resizeオプションがサイズ指定です。
指定したサイズになるのではなく、縦横比を維持した状態で指定したサイズ内で収まる最大サイズで画像を生成します。
結果は次のとおり。

koalaKoala_640

横幅指定で縦幅自動の場合は、以下のような感じ。

$ 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します。


この記事をシェアする

    Mask_Siva

    北の試される大地に生息しているSEです。
    楽しみながらプログラムを作ったり、ゲームで遊んだりしています。

    コメントをお待ちしております

    HTMLタグは利用できません

    Advertising

    楽天 新品/中古ゲーム販売 通販ショップの駿河屋

    BGM

    ONE WAY
    iTunes Music

    10 その時、蒼穹へ -angela

    ↓の再生ボタンで再生できます

    色々な楽曲を試聴したいなら
    >>>こちら<<<

    Calendar

    2024年3月
     12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31 

    Archive

    My WIsh List

    Amazonで気になっている物をまとめています。

    「これは良かった!」「こっちの方がいいよ!」というものがあれば、教えてください<(_ _)>

    https://amzn.to/3oof0rZ