ImageMagick

コマンドラインから画像に対し簡単な処理を行えるツール。

縮小、結合などの作業ごとにソフトを用意しておく必要が無く、バッチを用意しておけば一括で処理を行えるのがメリット。

ダウンロード

  1. http://www.imagemagick.org/script/download.phpから日本(Japan)のサイトを選択
  2. binariesを選択(Windows用)
  3. ImageMagick-(バージョン)-windows.zipをダウンロード

別にどこにインストールしてもいいと思うが、フォルダ構成は次の様にしておくと都合が良いと思う。

(任意のフォルダ)
  ∟ImageMagick
    ∟image
    ∟www
    ∟animate.exe
    ∟convert.exe
    ∟...
  ∟縮小用バッチ
  ∟回転用バッチ
  ∟...

バッチファイルメモ

画像ファイルをD&Dすればまとめて処理してくれる様に。

大体の処理の流れはこんな感じ。新しく、「(元のファイル名)_XXX.(元の拡張子)」というファイルが作成される。

@echo off
rem 引数が渡されなければ即終了
if "%~1" == "" ( exit /b )
echo ----------------------------------------
echo (処理の説明)
rem 現在ディレクトリをバッチのある場所に
cd /d %~dp0
rem 各引数について処理を実行
for %%A in ( %* ) do ^
ImageMagick\(実行ファイル名) (オプション) %%A "%%~dpnA_XXX%%~xA"
echo ----------------------------------------
echo 成功
pause

for文内で「%(変数名)」を使う時は、「%%(変数名)」と2個重ねる必要がある。
%Aはパス名文字列を示すが、パスに空白が含まれるなど“クオート”する必要があれば自動的にクオートされた文字列になり、必要がなければされてない文字列になる(ややこしい)。
%~dAはドライブ、%~pAはドライブ以下のパス、%~nAは拡張子を除いたファイル名、%~xAは拡張子に置換される。

縮小

@echo off
if "%~1" == "" ( exit /b )
echo ----------------------------------------
echo 縮小
cd /d %~dp0
for %%A in ( %* ) do ^
ImageMagick\convert.exe -geometry 864x648 %%A "%%~dpnA_small%%~xA"
echo ----------------------------------------
echo 成功
pause

回転

@echo off
if "%~1" == "" ( exit /b )
echo ----------------------------------------
echo 画像 180度回転
cd /d %~dp0
for %%A in ( %* ) do ^
ImageMagick\convert.exe -rotate 180 %%A "%%~dpnA_rotate%%~xA"
echo ----------------------------------------
echo 成功
pause

白を透過

@echo off
if "%~1" == "" ( exit /b )
echo ----------------------------------------
echo 白を透過
cd /d %~dp0
for %%A in ( %* ) do ^
ImageMagick\convert.exe -transparent white %%A "%%~dpnA_transparent.png"
echo ----------------------------------------
echo 成功
pause

software/imagemagick.txt · 最終更新: 2017/05/26 by ikatakos
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0