2015年1月27日 星期二

增加效率的好幫手-OSX服務

記得剛接觸Mac OSX時,看到應用程式選單中多有「服務」這個選項,就對其頗為好奇,但用OSX這麼多年,卻始終沒用過此功能,甚至直到最近才發現,原來「服務」選單中的內容,是要選擇了某些項目後才會出現,比方說,選擇好文字,或是選擇了檔案,才會出現可作用的「服務」項目。
除了對於有哪些「服務」可用好奇外,我也對於是否可以創建自己「服務」項目充滿興趣,如果可以把自己常用的流程製作成一個服務,放在服務選單裡,往後透過點擊服務選單,就能完成繁瑣的流程,那真是一件很棒的事情。比如說我喜歡拍照,但現在數位相機畫素越來越高,我習慣處理完後的數位檔案會以原解析度存放,但是要上傳到臉書等社群網站時,高解析度的檔案不但要花長時間上傳,也容易因為頻寬問題卡住導致上傳失敗,然而如果要把上傳的檔案,一個個用相片處理軟體打開,改變解析度後再另存檔案,又會花上許多時間,如果能在Finder中選好要縮小的檔案後,透過「服務」選單,就能以我想要的解析度產生縮放後的相片,然後我只要把這些相片上傳到社群網站即可,這樣就可省下很多的時間,也不容易出錯。



經過研究後,發現可以透過AppleScript與Automator合作達到我想要的功能,經歷過DOS時代的人,一定都知道bat檔案,bat其實就是batch的縮寫(因為DOS的副檔名最長只能三個字元),其作用是把一些DOS指令組合後放在bat檔案內批次執行,如此就可把常用且固定的功能放在bat檔案內完成。AppleScript提供跟DOS指令一樣的功能,但更棒的是,它是Apple根基於HyperCard所使用的腳本語言HyperTalk所開發出來,以物件導向為觀念,OSX內安裝的每一個應用軟體都是一個物件,透過該軟體專屬的方法可讓AppleScript操作,例如檔案操作就可透過系統軟體Finder來完成,再配合OSX底層的Shell指令,就可達到縮小照片解析度的想法。

所寫好的AppleScript,透過Automator建立執行AppleScript的服務,即可加入到「服務」選單內

現在我只要選擇好我要縮小解析度的檔案,選擇「服務」內的縮小圖檔,於設定解析度的對話盒內輸入新解析度後,就會自動在目前目錄內產生一個目錄,把縮小解析度後的照片檔案好好地放在那裡。








沒有留言:

張貼留言