不得不說,mac的命令列好用。除了因為繼承UNIX而保持shell命令的一致外,osx還對命令列對了一些擴充套件,使其更好的與系統本身合作無間。比如open filename
就可以使用系統預設程式來開啟這個檔案。今天知道了screencapture,更是覺得方便。
使用方法:
screencapture -i test.png
執行後會呼叫系統預設的截圖程式,也就是按cmd-shift-4
出來的那個截圖程式。截圖完畢後,會儲存到test.png中。
-i
模式預設是自由模式,按一下空格鍵,可以在自由模式和視窗模式間切換。按下control鍵,截圖就不會儲存到檔案中,而是儲存到剪貼簿中。
screencapture命令的其他選項:
-c 強制截圖儲存到剪貼簿而不是檔案中
-C 截圖時保留游標(只在非互動模式下有效)
-d display errors to the user graphically(不知道啥意思)
-i 互動模式擷取螢幕。可以是選區或者是視窗。
control key - 截圖儲存到剪貼簿
space key - 在滑鼠選區模式和視窗模式間切換
escape key - 退出截圖
-m 只擷取主顯示器(-i模式下無效)
-M 截圖完畢後,會開啟郵件客戶端,圖片就躺在郵件正文中
-o 在視窗模式下,不擷取視窗的陰影
-P 截圖完畢後,在圖片預覽中開啟
-s 只允許滑鼠選擇模式
-S 視窗模式下,擷取螢幕而不是視窗
-t<format> 指定圖片格式,模式是png。可選的有pdf, jpg, tiff等
-T<seconds> 延時擷取,預設為5秒。
-w 只允許視窗擷取模式
-W 開始互動擷取模式,預設為視窗模式(只是預設模式與-i不同)
-x 不播放聲效
-a do not include windows attached to selected windows(不懂)
-r 不向圖片中加入dpi資訊
-l<windowid> 抓取指定windowid的視窗截圖
-R<x,y,w,h> 抓取指定區域的截圖
-B<bundleid> 截圖輸出會被bundleid指出的程式開啟
在你的程式中,只要簡單的呼叫這個命令,就擁有了牛逼的截圖功能了