2013年5月16日 星期四

Ninja Catcher - 具有匿蹤技術的連續自動抓圖工具



  最近整理硬碟翻到一個寫了很久的程式,想說整理一下並加上新圖示可以發表讓有興趣的朋友玩玩看,一個完全可以連續自動抓圖的超級小工具,功能就是......抓圖!

  這個工具的原始構想是想要側錄螢幕上操作的過程,用了市面上螢幕錄影工具發覺不是要按鍵去觸發啟動錄影 非常耗資源,轉思考到抓圖,但是目前沒有找到任何可以連續抓圖甚至執行即抓圖不需要手動觸發的工具,而且重點是程式執行時還必須能隱形起來,還不能輕易被發現,所以才乾脆自己動手作作看!

本軟體特點:
  1. 能匿蹤抓圖,充當螢幕側錄。
  2. 可定時自動連續抓圖。
  3. 自動存檔且自動依日期分目錄。
  4. 可設定抓圖區域大小。
  5. 可用命令列模式抓圖。
  6. 利用Windows排程抓圖。
  7. 抓圖方式很彈性,自訂性高。


Ninja Catcher 下載:http://goo.gl/XyxK5

取名為Ninja Catcher也是因為能在神不知鬼不覺的情況下抓圖,目前想到運用的功能,看看有沒有其他朋友能想到其他的用法:
  • 直接執行後自動定時連續抓圖。
  • 設定為只抓一張圖,程式執行了就抓圖。
  • 放在Windows的排程裡定時觸發抓圖。
  • 加入批次檔裡,執行了就抓圖。
  • 放在捷徑裡,設定捷徑內的快速鍵執行抓圖。
  抓圖後存檔時會自動用日期區分資料夾,所以比較擔心的是一個資料夾能存放的檔案大小,查了微軟的資料發現,以NTFS格式的磁碟機單一目錄容納最大檔案數量為4294967295個,所以一天86400秒,一天抓圖下來如果設定成一秒一張最多有86400張圖,對NTFS格式硬碟來說還算是小問題(除非丟著好幾年那我目前沒辦法測試到這個問題),但FAT32問題比較大,因為FAT32的檔案系統只有單一目錄下最多只能65534個檔案,而且好像1000個檔案以上速度就會開始變慢,所以建議還是用NTFS的檔案系統!

  下載後只須打開INI檔設定參數,或是在命令列模式下指令參數就可以開始執行程式了,執行參數的順序是先參考INI檔後才參考命令列參數,所以命令列參數沒有指定的話就會參考INI檔,如果INI檔沒有設定就是回歸預設值。要注意的是因為這是一個匿蹤的程式,所以沒有任何介面可以操作,執行就開始抓圖,要關閉程式時只能從工作管理員的處理程序去關閉,再不然就是重開機。

INI檔的參數如下:
[Setting]
;設定抓圖後存檔的路徑
;set screenshot output directory.
;ex: SavePath=C:\NinjaCatcher
SavePath=.\

;設定抓圖的週期時間 單位:秒
;set cycle time for screenshot. (sec.)
;值為0時只抓圖一次就退出程式
CycleTime=0

;設定剛開始抓圖的延遲時間 單位:秒
;set delay time for start taking screenshot. (sec.)
DelayTime=0

;設定抓圖後存檔的格式 JPG,PNG
;set picture output format. (JPG or PNG)
;def. JPG
SaveFormat=PNG

;設定螢幕上抓圖位置 單位:畫素(Pixel)
;ScreenX:螢幕的X軸
;ScreenY:螢幕的Y軸
;RegionWidth:區域的寬度
;RegionHeight:區域的高度
;如果RegionWidth或RegionHeight的值為0時,程式直接抓全螢幕
;
;screenX: set X position from the top of the screen.
;ScreenY: set Y position from the left of the screen.
;RegionWidth: set taking screenshot with region Width.
;RegionHeight: set taking screenshot with region Height.
;if RegionWidth or RegionHeight with 0 then capture fullscreen.
;
;ex: 1024x768的螢幕上,在200x300的位置要抓取800x600大小的圖
; ScreenX=200
; ScreenY=300
; RegionWidth=800
; RegionHeight=600
ScreenX=0
ScreenY=0
RegionWidth=0
RegionHeight=0

命令列參數如下:

使用命令列下參數執行的狀態:


沒有留言:

張貼留言