オンラインPC館

ImageMagickの色変換

画像の色を透過色に変換(magick)

magickを使用して画像の色を透過色に変換する方法です。
ただし、指定した部分に複数色が使用されている場合はきれいに透過されません。
また、ファイル形式はGIF、PNG、WebPなどで出力しないと透過色になりません。

指定色→透過色

@echo off
cd "ターゲットフォルダのパス"
for %%a in (*) do "magick.exeのパス" "%%a" -transparent "元の背景色をカラーコードで指定" "%%~na.出力ファイル形式"
for /r %%a in (*) do if /i "%%~xa" neq ".出力ファイル形式" del "%%a"

画像の色を別の色に変換(magick)

magickを使用して画像の色を別の色に変換する方法です。
ただし、指定した部分に複数色が使用されている場合はきれいに変更されません。

指定色→指定色

@echo off
cd "ターゲットフォルダのパス"
for %%a in (*) do "magick.exeのパス" "%%a" -fill "背景色を何色に変更するかをカラーコードで指定" -opaque "元の背景色をカラーコードで指定" "%%~na.出力ファイル形式"
for /r %%a in (*) do if /i "%%~xa" neq ".出力ファイル形式" del "%%a"

画像をモノクロ画像に変換(magick)

magickを使用して画像をモノクロ画像に変換する方法です。

@echo off
cd "ターゲットフォルダのパス"
for %%a in (*) do "magick.exeのパス" "%%a" -type GrayScale "%%~na.出力ファイル形式"
for /r %%a in (*) do if /i "%%~xa" neq ".出力ファイル形式" del "%%a"

ImageMagickの色変換(元が透過色)

透過画像のフォーマット変換(magick)

magickを使用して画像の透過色を白に変換し、PNG形式からJPG形式に変換する方法です。

透過色→白色、PNG→JPG

@echo off
cd "ターゲットフォルダのパス"
for %%a in (*) do "magick.exeのパス" "%%a" -fill "#ffffff" -opaque"none" -strip "%%~na.jpg"
for /r %%a in (*) do if /i "%%~xa" neq ".jpg" del "%%a"

画像の透過色を別の色に変換(magick)

magickを使用して画像の透過色を別の色に変換する方法です。

透過色→指定色

@echo off
cd "ターゲットフォルダのパス"
for %%a in (*) do "magick.exeのパス" "%%a" -fill "背景色を何色に変更するかをカラーコードで指定" -opaque "none" "%%~na.出力ファイル形式"
for /r %%a in (*) do if /i "%%~xa" neq ".出力ファイル形式" del "%%a"

ImageMagickの色変換(元が複数色)

画像の複数の色を一括で変換(magick)

magickを使用して画像の複数の色を一括で変換する方法です。
「-fill」と「-opaque」の指定を記述した分だけ色数を変更する事ができます。
ただし、指定した部分に複数色が使用されている場合はきれいに変更されません。

指定色→指定色、指定色→指定色

@echo off
cd "ターゲットフォルダのパス"
for %%a in (*) do "magick.exeのパス" "%%a" -fill "背景色を何色に変更するかをカラーコードで指定" -opaque "元の背景色をカラーコードで指定" -fill "背景色を何色に変更するかをカラーコードで指定" -opaque "元の背景色をカラーコードで指定" "%%~na.出力ファイル形式"
for /r %%a in (*) do if /i "%%~xa" neq ".出力ファイル形式" del "%%a"

指定した部分に複数色が使用されている場合

指定した部分に複数色が使用されている場合は、他の画像編集ソフトで単色に変更してから行うときれいに変換できます。
画像編集ソフト