Tinypng를 파인더에서 사용하자

이전에도 Tinypng 관련해서 Adobe Photoshop(포토샵)에서 사용하는 방법과 앱을 이용하는 방법을 소개했었다. 이번에는 파인더에서 좀 더 빠르게 Tinypng를 적용하는 방법에 대해 소개한다.

이전 글

전제 조건

서드파티 앱을 이용하는 것과 동일하게 API 키가 필요하다. tinypng.com 회원가입 이후 간단히 API 키를 발급받을 수 있다. 한 달 500개의 이미지 압축을 제공하며 그 이상은 별도의 비용 결제를 해야 한다.

tinypng.com의 Account page에서 API key를 만들 수 있다.

tinypng.com의 Account page, Add API Key를 선택하여 API 키를 생성하자.

Automator 만들기

1. Automator 앱을 실행 (CMD + Shift + a)

2. 문서 유형 선택에서 ‘빠른 동작’ 선택

3. 빠른 동작 만들기

A. 동작 보관함의 ‘➊ 유틸리티’ → ‘➋ 셸스크립트 실행’을 선택한 뒤 우측 비어있는 공간으로 드래그 앤 드롭

B. ➌ 현재 수신하는 작업흐름 : 파일 또는 폴더 선택

C. ➍ 선택 항목 위치 : Finder.app 선택

D. ➎ 셸 : /bin/zsh 선택

E. ➏ 통과 입력 : 인수 선택

F. ➐ 아래 스크립트를 복사하여 붙여넣기

# MacOS Automator Quick Action for image compression using Tinypng.com
# You need to register to obtain a personal API key
# https://tinypng.com/developers
#
# The code below should be put inside "Run Shell Script" Action with the following configuration in the Automator:
# workflow receives current: files or folders | in Finder
# shell: /bin/zsh
# pass input: as arguments

set -e -o pipefail
export PATH="$PATH:/usr/local/bin"
APIKEY=YOUR_API_KEY_HERE
tinypng () {
	file_name="$1:t:r"
	file_ext="$1:t:e"
	file_dir="$1:h"20
	compressed_url="$(curl -D - -o /dev/null --user api:$APIKEY --data-binary @"$1" https://api.tinify.com/shrink|grep location|cut -d ' ' -f 2|sed 's/\r//')"
	curl -o "${file_dir}/${file_name}_compressed.${file_ext}" "$compressed_url"
}

for f in "$@"
do
	if [ -f "$f" ]; then
		tinypng "$f"
	elif [ -d "$f" ]; then
		find "$f" -name "*.png" -o -name "*.jpeg" -o -name "*.jpg" | while read file_name; do
		tinypng "$file_name"; done
	fi
done

G. ➑ APIKEY= 부분에 Tinypng.com에서 생성한 API 키를 입력한다

H. 저장하기(CMD + s)

4. 이미지 압축 후 작업 완료 후 알림을 받고 싶다면

A. ‘유틸리티 → ➊ 알림표시’를 우측 스크립트 아래로 드래그 앤 드롭

B. ➋ 제목 및 부제목, 메시지에 알림 내용 입력

C. 저장하기 (CMD + s)

설정 완료

파인더에서 이미지 파일을 마우스 우측 버튼으로 클릭해 보면 ‘Tinypng’라는 항목을 이용하여 Tinypng를 바로 적용할 수 있다.

실제 이미지 처리 속도는 영상보다 느리다…
Tags: , ,

공유하기

2 Comments

답글 남기기