2009年12月29日火曜日

Autohotkeyでプリントスクリーン機能拡張

このエントリーをはてなブックマークに追加
プリントスクリーンはよく使う機能の一つですが,
Autohotkeyを用いて,この機能を拡張してみたいと思います.

拡張する機能は以下のようなものです.

Ctrlキーが押されている場合は,マイクロソフトペイントを起動し,
自動的にペーストすることで,編集状態に入ります.
逆にCtrlキーが押されていない場合には,ExClipを起動します.
ExClipは,クリップボードに格納されている画像を保存するためのソフトです.詳しくは開発元ページを御覧下さい.

もちろん,Altキーを押しながらプリントスクリーンキーを押すことでアクティブなウィンドウの画像のみ取得できるのは,変わりありません.

途中で100ミリ秒Sleepしているのは,ペイントを起動しきっていない状態で,ペーストするのを防ぐためです.また,変数exClipにExClipのパスを予め設定しておいてください.

; キャプチャ画像を保存する ※ExClipが必要 
*~PrintScreen::
 GetKeyState, ctrlFg, Ctrl   ; Ctrlが押されているか?
 if ctrlFg = D     ; Ctrlが押されている場合
 {
  Run, mspaint.exe
  Sleep 100
  Send, ^v
 } else {
  Run, %exClip%
 }
return