ImageMagick

画像を切り取り、統合、変換、加工するためのツール、及び、ライブラリ。

公式サイト:

ImageMagick [Official]

概要

参考:

ImageMagick – Wikipedia

ダウンロード

入手:

Download | ImageMagick [Official]

Index of Binaries | ImageMagick [Official]

インストール

参考:

Windows 10 に ImageMagick をインストールする | イノベートな非日常

使い方

ドキュメント:

Command-Line Processing | ImageMagick [Official]

参考:

基本的な画像処理 | 須﨑純一

ImageMagick メモ | Proton.jp

Batch Resize Images using Linux Command Line and ImageMagick | WP Bullet Guides

Convert an Image File from One Format to Another | microHOWTO

Windows で使う

参考:

ImageMagick を使う Windows 編 – Qiita

Windows 10 で ImageMagick を使ってコマンド一発で超簡単に GIF アニメを作成してみた! | あいしんくいっと

convert コマンド

ドキュメント:

Convert | ImageMagick [Official]

参考:

convert コマンドの使い方 | UNIX/Linux の部屋

オプション

参考:

よく使われるオプション | ImageMagick の使い方 日本語マニュアル

加工前後の画像付き! ImageMagick のオプションを最高に分かりやすく解説してみた | bitA Tech Blog

ImageMagick Option | HobNote

画像の情報を取得する

  • 画像形式を確認する
  • 画像サイズを確認する
  • 色空間/カラープロファイルを確認する
Linux / Mac
$ identify picture.png
Windows
> magick identify picture.png

ドキュメント:

Identify | ImageMagick [Official]

参考:

画像の情報を取得する | ImageMagick の使い方 日本語マニュアル

コマンドで画像ファイルの情報を調べるには | @IT

How can I tell if my image is CMYK from Linux command line? – Super User

How to find the color profile/space used by a photo? – Photography Stack Exchange

画像形式を変換する

ドキュメント:

Convert – Command-Line Tools | ImageMagick [Official]

参考:

ImageMagick の JPEG オプション – Qiita

画像形式/フォーマットの変換 | ImageMagick の使い方 日本語マニュアル

ImageMagick で PNG の形式を変換 | awm-Tech

force output file format – Stack Overflow

argument to specify output format – Stack Overflow

リサイズする (-resize)

ドキュメント:

-resize | ImageMagick [Official]

Image Geometry | ImageMagick [Official]

参考:

画像の拡大/縮小 | ImageMagick の使い方 日本語マニュアル

mogrify コマンドで画像を一括でリサイズする | アナライズギア開発ブログ

出力ファイル名を指定する

グロブしたファイルの形式を変換する。

$ magick convert *.png -set filename:base "%[basename]" "%[filename:base].jpg"

もしくは、mogrify コマンドを使用する。(※ mogrify コマンドは出力ファイルを明示的に指定しない場合、基本的に上書きで処理するため注意する。)

$ mogrify -format jpg *.png

ドキュメント:

Format and Print Image Properties | ImageMagick [Official]

参考:

出力ファイル名を指定する/変える – Qiita

出力ファイル名指定 – Qiita

mogrify で出力ファイル名を変える | R.A. Epigonos et al.

convert to keep same name for converted image – Stack Overflow

keep file names and add prefixes – Stack Overflow

Can magick rename output file the same as input file with additional numbering? – Super User

画像を切り取る

  • -crop
  • -trim
  • -shave

参考:

画像クロップ – Qiita

Can ImageMagick generate multiple outputs from one input? – Stack Overflow

カラープロファイルを変換する

参考:

ImageMagick で手軽にカラープロファイルを付与変換する | sirokiri

RGB 画像を CMYK に変換する | やんま まの blog (仮)

ImageMagick convert CMYK pdf to RGB jpeg or PNG and preseerve colors – Stack Overflow

-colorspace オプション

$ magick original.jpg -colorspace RGB -resize 200x200 -colorspace sRGB thumbnail.jpg

ドキュメント:

-colorspace | ImageMagick [Official]

Color Management | ImageMagick [Official]

参考:

sRGB 空間で画像処理するべからず | 豪鬼メモ

How to set a particular color space for the output – Stack Overflow

-gamma オプション

$ convert original.jpg -gamma .45455 -resize 400x400 \
  -gamma 2.2 -quality 92 converted.jpg

ドキュメント:

-gamma – Command-line Options | ImageMagick [Official]

-gravity オプション

参考:

ImageMagick Gravity 指定 – Qiita

-profile オプション

入出力ファイルのカラープロファイルを明示的に指定する。

ドキュメント:

-profile | ImageMagick [Official]

-intent オプション

カラープロファイルの変換時に用いるレンダリングインテントを指定する。

  • Perceptual (デフォルト)
  • Saturation
  • Absolute
  • Relative

ドキュメント:

-intent | ImageMagick [Official]

-black-point-compensation オプション

カラープロファイルの変換で黒点補正を有効にする。

ドキュメント:

-black-point-compensation | ImageMagick [Official]

Hald CLUT を適用する (-hald-clut オプション)

ドキュメント:

-hald-clut | ImageMagick [Official]

mogrify コマンド

ドキュメント:

Mogrify – Command-Line Tools | ImageMagick [Official]

参考:

mogrify コマンドで画像を一括でリサイズする | アナライズギア開発ブログ

mogrify コマンドで画像を一括変換しよう | ハトネコエ Web がくしゅうちょう

複数のファイルをまとめて処理する

参考:

How to pass multiple file names? – Stack Overflow

Bash globbing pattern matching for ImageMagick recursive convert to PDF – Stack Overflow

グロブを使う

参考:

Output file globbing – ImageMagick Discussions Archive

globbing multiple extensions – Unix & Linux Stack Exchange

Globbing images to resize them to a different directory · ImageMagick/ImageMagick · Discussion #2736 – GitHub

GIF アニメーション

参考:

ImageMagick で GIF 処理 – Qiita

GIF の形式を変換 | awm-Tech

ImageMagick と FFmpeg を利用して GIF アニメと MP4 動画を生成してみましょう | 丸ノ内テックブログ

SVG 画像を PNG 形式に変換する

magick コマンドに convert サブコマンドを渡して SVG 画像を PNG 形式に変換する。

$ magick convert -density 360 vector.svg picture.png

参考:

SVG を PNG に変換するワンライナー – Qiita

ImageMagick で SVG to PNG | matablo

how to set quality when convert svg to png – ImageMagick Board

How to convert a SVG to a PNG with ImageMagick? – Stack Overflow

Convert and resize SVG to PNG – Stack Overflow

PSD 画像を PNG 形式に変換する

$ magick convert -strip texture.psd[0] output.png

参考:

ImageMagick を使って PSD から PNG の一枚絵を生成するコマンドについて | ウェブエンジニア珍道中

画像形式

ドキュメント:

Image Formats | ImageMagick [Official]

Supported Image Formats | ImageMagick [Official]

参考:

File Format Problem | Just Solve

Formats | METU Astro Physics

脆弱性

Web サービスなどにおいて ImageMagick を用いてユーザー由来のファイルを処理する場合は、最低限、次のような脆弱性対策が望まれる。

  • policy.xml で処理対象を JPEG / PNG / GIF / WebP のみに限定する。
  • 画像フォーマットの判別には純粋にマジックバイトで MIME Type を判別するライブラリを用いる。

参考:

「さようなら ImageMagick」の考察 – Qiita

ImageMagick を使う Web アプリのセキュリティ #1 既知の脆弱性、システム情報の漏洩 | MBSD Blog

ImageMagick を使う Web アプリのセキュリティ #2 DoS | MBSD Blog

ImageMagick を使う Web アプリのセキュリティ #3 XSS/アクセス制御 | MBSD Blog

Clearing Up Some Misconceptions Around the “ImageTragick” Bug | lcamtuf’s blog

ドキュメント

Command-Line Tools | ImageMagick [Official]

Command-Line Processing | ImageMagick [Official]

Command-Line Options | ImageMagick [Official]

リポジトリ

ImageMagick/ImageMagick: ImageMagick 7 – GitHub

リンク

ImageMagick の使い方 日本語マニュアル

Windows ビルド

参考:

ImageMagick/ImageMagick-Windows: Windows Build of ImageMagick 7 – GitHub

記事をシェアする:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA