画面上から特定の画像に一致する部分を検索する
ImageSearch [, OutputVarX, OutputVarY], X1, Y1, X2, Y2, ImageFile
OutputVarX, OutputVarY |
発見された場合X座標とY座標が格納される変数名。 省略可能。 |
X1,Y1 |
検索対象となる矩形の左上の座標。 通常はアクティブウィンドウの左上からの相対座標だが、CoordModeコマンドを使うとスクリーン全体での座標になる。 |
X2,Y2 |
検索対象となる矩形の右下の座標。 通常はアクティブウィンドウの左上からの相対座標だが、CoordModeコマンドを使うとスクリーン全体での座標になる。 |
ImageFile |
検索する画像のファイル名。GIF/JPG/BMP/ICO/CUR/ANI/EXE/DLL形式に対応。GDI+ DLL が対応していればPNG/TIF/Exif/WMF/EMFにも対応。EXE/DLLでは、アイコンが読み込まれる。 ただし、BMP以外は色の誤差などで正しく検索されない場合がある。 相対パスで指定した場合は、%A_WorkingDir%を基準としたパスとなる。 ファイル名の前に以下のオプションを半角スペース区切りで指定することができる。
|
見つかれば「0」、見つからなければ「1」、問題が発生していれば「2」
検索対象にできるのは、画面に表示されている部分だけであり、他のウィンドウに隠されたり画面からはみ出している部分などは検索できない。
ただし、マウスカーソルに隠れている部分は検索可能。
アイコンの透明色部分は、どんな色とでも一致とみなされる。
ディスプレイの色数の設定によって動作が変わる場合がある。
色数が256色(8ビット)未満の場合、このコマンドは動作しない。
PixelSearch, PixelGetColor, CoordMode, MouseGetPos
ImageSearch,,, 40,40, 300, 300, C:\My Images\test.bmp
ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *Icon3 %A_ProgramFiles%\SomeApp\SomeApp.exe if ErrorLevel = 2 MsgBox Could not conduct the search. else if ErrorLevel = 1 MsgBox Icon could not be found on the screen. else MsgBox The icon was found at %FoundX%x%FoundY%.