Autohotkey에서 ImageMagick 사용하기
ImageMagick 은 이름에서도 알 수 있는 바와 같이 image 파일들에 대해 여러 효과를 낼 수 있는 툴인데요~
아래 포스팅에서 소개 드렸다시피 저는 캡쳐 한 이미지들로 GIF 파일을 만드는데 종종 사용하곤 했습니다.
2012/03/22 - [유틸] - ImageMagick 으로 GIF 파일 만들기
그런데 아래 Autohotkey 포럼을 찾아보니 Autohotkey 에서 Com Object 를 통해 ImageMagick 을 사용할 수 있더군요.
현재 저는 Autohotkey unicode 32 비트를 사용하고 있어서 ImageMagick도 아래 주소에서 32 비트 dll 버전을 설치 했습니다.
http://www.imagemagick.org/script/binary-releases.php#windows
설치 중간에 아래 그림과 같은 설정 부분에서 OLE Control 설치 부분을 체크 했습니다.
아래 포럼 주소에 imageMagick 사용과 관련한 예제가 나와있는데~
http://www.autohotkey.com/board/topic/56987-com-object-reference-autohotkey-v11/page-3#entry373462
여러 사진들을 사용하여 썸네일 이미지등을 만들 때 대단히 유용해 보이더군요.
oI := ComObjCreate("ImageMagickObject.MagickImage.1")
imgs := Object()
Loop, 16 {
filename := "plasma" . A_Index . ".jpg"
oI.convert("-size", "200x200", "plasma:", filename)
imgs.Insert(filename)
}
imgs.Insert("montage.jpg")
stitch(oI, imgs*)
stitch(obj, params*) {
obj.montage("-geometry", "+0+0", params*)
}
oI.convert("montage.jpg", "-verbose", "info:image_info.txt")
oI.convert("montage.jpg", "-define", "histogram:unique-colors=false", "histogram:histogram.gif") ; create histogram
FileRead, info, image_info.txt
FileDelete, image_info.txt
MsgBox % info
위 코드를 돌려보시면~ plasma1.jpg, plasma2.jpg, plasma3.jpg … 등과 같은 파일이 생성되고~ 마지막에 아래 그림과 같이
histogram.gif 파일과~
각 이미지들에 대한 모음인 montage.jpg 파일이 생성됩니다.