
블로그 페이지 등 특정 해상도에 맞춰 매일 이미지를 다시 압축하고 크기를 조정하고 있다면, 이 반복 작업을 클릭 한 번으로 끝낼 수 있다면 얼마나 편할까요? Thunar의 외부 명령 연동 기능인 '사용자 지정 작업'을 활용하면 충분히 가능합니다.
참고로 이 방법은 Konqueror처럼 '프로그래밍 가능한' 다른 파일 관리자에서도 동일하게 적용할 수 있습니다.
원리는 간단합니다. 파일을 선택하면 Thunar가 해당 파일의 전체 경로를 '%f'라는 매개변수로 전달합니다. ImageMagick 명령을 Thunar의 사용자 지정 작업(Custom Action)으로 등록해 두면, 선택한 이미지를 Thunar 안에서 바로 압축하고 크기를 조정할 수 있습니다.
Thunar와 ImageMagick 설치
배포판에 아직 설치되어 있지 않다면, 평소 사용하는 패키지 관리 도구로 Thunar와 ImageMagick을 찾아 설치하세요. 데비안 계열 배포판이라면 다음 명령으로 설치할 수 있습니다.
sudo apt-get install thunar imagemagick
대부분의 배포판은 저장소의 모든 프로그램에 접근할 수 있는 GUI 앱스토어 형태의 소프트웨어 센터를 제공합니다. 터미널 사용이 부담스러운 분들은 소프트웨어 센터에서 프로그램을 검색한 뒤 '설치' 버튼만 누르는 것이 더 편할 것입니다.

ImageMagick 옵션 요약 페이지 살펴보기
이 글에서는 선택한 이미지를 축소한 뒤 압축된 JPG로 저장하는 방법만 다루지만, ImageMagick은 이미지를 변형할 수 있는 수십 가지 옵션을 제공합니다. 공식 옵션 요약(Options Summary) 페이지를 방문해 어떤 기능들이 있는지 확인해 보세요. 이 옵션들을 활용하면 여기서 함께 만드는 명령을 더 정교하게 발전시키거나, 이미지를 다양한 방식으로 처리하는 별도의 명령을 새로 만들 수도 있습니다.

테스트 폴더를 만들고 사진 몇 장 복사하기
절대 원본 파일을 직접 다루지 마세요. 실수 한 번이면 원본이 변경되거나, 최악의 경우 영원히 사라질 수 있습니다. 사진 폴더 같은 곳에 테스트용 폴더를 하나 만들고, 실험 대상이 될 파일 몇 개를 복사해 두세요. 그런 다음 Thunar 파일 목록의 빈 공간을 마우스 오른쪽 버튼으로 클릭하고 메뉴에서 '터미널 열기'를 선택합니다.

최적의 압축률·품질 비율 찾기
다음 단계는 자신에게 맞는 최적의 압축률과 품질 비율을 찾는 것입니다. 사람마다 기준이 다르기 때문에 누군가에게 괜찮아 보이는 품질이 다른 사람에게는 너무 낮게 느껴질 수 있습니다. 이미지의 내용에 따라서도 달라집니다. 예컨대 고양이 사진 같은 일반 사진은 선명한 일러스트보다 높은 압축률(낮은 품질) 설정을 잘 견딥니다. 일러스트 역시 텍스트 가독성이 중요한 스크린샷보다는 더 많이 압축할 수 있습니다.
다음 명령으로 여러 번 테스트를 거쳐 자신에게 맞는 최적값을 찾아보세요.
magick INPUT_FILE -quality QQ OUTPUT_FILE
INPUT_FILE은 원본 이미지, OUTPUT_FILE은 압축 및 변환된 결과 파일이며, QQ는 1부터 100 사이의 숫자입니다. 숫자가 클수록 품질이 좋아지고 압축률은 낮아집니다.

이미지 크기 조정 및 축소
'크기 조정(resize)'과 '축소(scale down)'는 서로 다른 개념입니다. 크기 조정에는 이미지를 확대하는 경우도 포함되기 때문입니다. ImageMagick에서는 다음 명령으로 이미지 크기를 조정할 수 있습니다.
magick INPUT_FILE -resize 1920x1200 OUTPUT_FILE
여기서는 1920x1200 해상도를 사용했습니다. 낯설게 느껴진다면 16:9 비율의 일반적인 1920x1080이 아니라 16:10 비율 모니터를 사용 중이기 때문입니다. 어떤 값을 입력하든 ImageMagick은 기본적으로 이미지의 가로세로 비율을 유지하면서 한쪽 차원만 맞춰 이미지가 왜곡되지 않도록 합니다. 다만 이 방식은 더 작은 이미지까지 확대해 버립니다. 온라인 사용을 위해 이미지 용량을 줄이는 것이 목표라면 원치 않는 동작이죠. 지정한 해상도보다 큰 이미지만 조정하려면 해상도 뒤에 >를 붙이면 됩니다.
magick INPUT_FILE -resize 1920x1200> OUTPUT_FILE

명령을 Thunar에 등록하기
원하는 압축률·품질 비율과 축소할 목표 해상도를 정했다면, 터미널에서 해당 명령을 클립보드로 복사합니다. 그런 다음 Thunar에서 '편집 > 사용자 지정 작업 구성…'을 선택합니다.
작업 이름을 입력하고, 원한다면 설명도 함께 추가합니다. 이후 복사해 둔 ImageMagick 명령을 '명령(Command)' 필드에 붙여넣습니다.
명령 안의 입력 파일명을 '%f'로 바꾸고, 출력 파일명은 '%f_output'으로 변경합니다.
조건을 설정하지 않으면 명령이 메뉴에 나타나지 않으므로 주의하세요. '등장 조건(Appearance Conditions)' 탭으로 이동해 '이미지 파일(Image Files)'을 체크하면, 이미지 파일을 선택했을 때만 이 명령이 표시됩니다. 확인을 누르면 사용자 지정 작업이 저장되어 이후 계속 사용할 수 있습니다.

사용자 지정 작업 사용해 보기
이제 이미지 파일을 마우스 오른쪽 버튼으로 클릭하면 등록한 사용자 지정 작업이 나타납니다. 이를 선택하면 같은 폴더에 파일명 뒤에 '_output'이 붙은 새 파일, 즉 압축되고 축소된 이미지가 생성됩니다. 아쉽게도 Thunar는 확장자를 제외한 파일명(basename)만 ImageMagick에 넘겨주는 기능이 없어 이 부분은 수동으로 처리해야 합니다. 이를 우회하는 방법도 있지만, 더 복잡한 스크립트를 작성해야 합니다.

하지만 그 이야기는 다음 기회로 미뤄두겠습니다. 그때까지는 압축률이나 목표 해상도를 달리한 여러 버전의 명령을 미리 만들어 두는 것은 어떨까요? 필요할 때마다 오른쪽 클릭 한 번으로 바로 사용할 수 있습니다!