ImageSearch

提供: AutoHotkey Wiki
移動: 案内検索

実行制御 | GUI表示 | 演算・変数 | メモリ・DLL操作 | 文字列操作 | キーボード | マウス | シェル | ウィンドウ | ウィンドウグループ
ステータスバー | コントロール | サウンド | ファイル | INIファイル | レジストリ | 環境変数 | AutoHotkey | その他 | 設定関係 | オブジェクト

ImageSearch[編集]

画面上から特定の画像に一致する部分を検索する。

ImageSearch [, OutputVarX, OutputVarY], X1, Y1, X2, Y2, ImageFile

Parameters[編集]

引数名 説明
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%を基準としたパスとなる。
ファイル名の前に以下のオプションを半角スペース区切りで指定することができる。
*IconN N に複数のアイコンが含まれるファイルで、何番目のアイコンを読み込むかを指定。(例: *Icon2)
*n 色の比較の際に許す誤差を0-255で指定。(例: *10)
赤緑青それぞれの輝度の差がこの値以下のピクセルは一致とみなされる。
*TransN N に透過色とみなす色を指定。(例: *TransBlack *TransFFFF00 *Trans0xFFFF00)
画像ファイル中の該当する色の部分は、どんな色とでも一致とみなされる。
*wN
*hM
N,M に画像の幅/高さを指定する。
読み込み後にこのサイズにリサイズされる。
未指定時は、画像の元の高さが使用される。
ただし、アイコンの場合、システムのスモールアイコンのサイズ(通常は16*16)になる。
強制的に通常のサイズで読み込ませるには、 *w0 *h0と指定する。
片方を *w-1または *h-1のように指定すると、縦横費を維持してリサイズされる。

ErrorLevel[編集]

見つかれば 0、見つからなければ 1、問題が発生していれば 2

AHKL [v1.1.04+] このコマンドは検索中に問題があった場合に例外をスローすることができる。詳細は実行時エラーを参照。

Remarks[編集]

検索対象にできるのは、画面に表示されている部分だけであり、他のウィンドウに隠されたり画面からはみ出している部分などは検索できない。
ただし、マウスカーソルに隠れている部分は検索可能。

アイコンの透明色部分は、どんな色とでも一致とみなされる。

ディスプレイの色数の設定によって動作が変わる場合がある。
色数が256色(8ビット)未満の場合、このコマンドは動作しない。

Related[編集]

PixelSearch, PixelGetColor, CoordMode, MouseGetPos

Example(s)[編集]

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%.