티스토리 뷰

맥에는 기본적으로 설치되어 있는 유틸리티 중 imagemagick이란 게 있다.

(리눅스나, 윈도우, 모바일 OS 등에서도 실행을 할 수 있다고 한다.)

imagemagick 홈페이지 캡쳐

홈페이지 설명에 따르면 비트맵 이미지를 변환하거나 합치고 편집/생성 등을 할수 있고 다양한 포맷 (PNG, JPEG, GIF, HEIC, TIFF, DPX, EXR, WebP, Postscript, PDF, SVG 까지) 지원한다. 

 

지원 기능은 다음과 같다

- resize

- flip (좌우, 상하 변경)

- mirror (플립과 차이가 뭐지?)

- rotate (방향변경)

- distort (기울이기)

- shear (자르기?)

- transform

- adjust colors

- 다양한 효과 적용

- 텍스트 그리기

- 라인 그리기

- 폴리곤

- 타원

- 베이즈 곡선

 

imagemagick의 강력한 점은 폴더내 전체 이미지에 일괄 적용할 수 있다는 점인데, 최근 이미지 변환이 필요해서 자동화하는 방법을 찾아보다 이런 툴이 있다는 것을 알게 되었다.

만약에 testicons/basic 라는 폴더 안에 다음과 같은 이미지들이 존재하는데 기존 사이즈가 144x144 이고 상하좌우 여백을 넣어 216x216으로 만들고 싶다면 다음과 같이 해당 경로에서 imagemagick의 convert 명령을 이용하면 된다.

명령 옵션을 보면 background를 투명으로 정렬을 중앙으로 한 뒤 크기로 216x216으로 설정한다.

기존 파일 이름을 유지하려면 basename을 가져와야 하는데 -set filename:base "%[basename]"이라 설정을하면 파일 이름을 filename:base라는 이름으로 사용할 수 있다. 따라서 마지막 저장할 파일 이름을 "%[filename:base].png"로 정하면 기존의 파일 이름과 동일하기 때문에 덮어쓰기를 하게 된다. 혹시 모르니 기존의 원본 파일을 그대로 두고 싶다면 "_%[filename:base].png" 앞이나 뒤에 다른 문자열을 추가해서 붙여주면 된다.

convert *.png -background transparent -gravity center -extent 216x216 -set filename:base "%[basename]" "%[filename:base].png"

 

변경 적용 전 후 크기가 달라진 걸 볼 수 있다.

 

변경전 규격 144x144
변경후 규격 216x216

댓글