電腦中有一堆圖像檔,想要壓縮成較細的檔案才上存到某處、或者傳送給別人,但手頭上又沒有要課金可以執行批次工作的Adobe Photoshop的話,可以怎辦?
用Mac上的Automator,再一步一步經去「錄影」,然後播放?不是不可以,只是太太太麻煩了,如果要批次處理的只有十個、二十個的話,花的時間和一個一個手動在Preview上匯出沒有太大分別。
在Mac OS上,其實是可以安裝只在命令列上執行的程式ImageMagick去批次處理!
首先需要在Mac OS上安裝ImageMagick。
打開Terminal。
輸入下面的指令安裝ImageMagick:
brew install imagemagick
正常安裝的話,可以跳過這個步驟。如果出現錯誤的話,那就代表你的Mac上還未有套件管理程式Homebrew,所以請先安裝Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
安裝第一次ImageMagick可能會快上一些時間,因為ImageMagick本身的功能是很強的,我們這次只是用上一個小小的檔案壓縮功能。
在安裝完成後,就可以用上ImageMagick。
假設我們這次是要把100個2MB至5MB大小不等的JPEG圖檔壓成300kb大小。
那最快的方法是──
在桌面開一個叫「img」的資料夾,然後把那100個圖檔全都複製進去。切記,是複製!Copy!不是移動/Move,因為ImageMagick處理完成後是不會留下副本的。
確定無誤後,在Terminal輸入下面命令:
cd ~/Desktop/img/ && mogrify -define jpeg:extent=300kb *.jpg
簡單解說:
cd ~/Desktop/img/ &&
,是要Terminal去處理桌面裡名叫「img」的資料夾。
mogrify
,ImageMagick是執乎命令。
-define jpeg:extent=300kb
就是要把輸出的JPEG圖檔都以300kb為目標大小,那是目標,結果可能會比300kb大或小的,因為尺寸不變,只在壓縮比例上盡力。不過如果原圖是少於300kb的話,也會被灌水變成300kb。300kb這數字可以按需修改。
*.jpg 就是指「img」的資料夾裡面的所有jpg圖檔(尾綴副檔名是要小楷的,大楷的請用*.JPG)。
這樣就會在尺寸不變的情況下把資料夾裡面的所有jpg檔壓縮成300kb左右大小。不過在尺寸不變的情況下,壓縮太強的話,可能失真會很嚴重。
我們也可以用ImageMagick來修改圖像檔案尺寸(resize),這次,我們假設要按比例把寬度縮減成640 pixels。
-resize 640
,就是按比例把圖像的寬縮小到640 pixel。
cd ~/Desktop/img/ && mogrify -define jpeg -resize 640 *.jpg
兩個命令沒有相抵觸的話,可以一拼使用──
cd ~/Desktop/img/ && mogrify -define jpeg:extent=300kb -resize 640 *.jpg
這樣用的話,就可以在640 pixel寬話,縮小成300kb大小的話,應該可以保持一定的畫質。
其實ImageMagick不限於Mac OS,在Linux上也可以用。