|
UWSC5.0.4 + Win7 SP1(32bit)
これまで単純に検出の有無だけをチェックしていたため気が付かなかったのですが SAVEIMGにて保存した画像をそのままCHKIMGした場合 保存画像と同一の座標値が検出座標として返されるのが正常だと思うのですが MOUSEORG関数を使った場合 座標のずれが発生して返ってくるようです
これは不具合・仕様 どちらでしょうか?
テストコード X = 100 Y = 100 SAVEIMG("C:\TEMP\test0.bmp", 0, X, Y, 100, 100) print FORMAT(X, 5, 0) + FORMAT(Y, 5, 0) print chkimg("C:\TEMP\test0.bmp") + FORMAT(G_IMG_X, 5, 0) + FORMAT(G_IMG_Y, 5, 0) ID = GETID("Google Chrome") MOUSEORG(ID, MORG_CLIENT, MORG_BACK) SAVEIMG("C:\TEMP\test1.bmp", ID, X, Y, 100, 100) print chkimg("C:\TEMP\test1.bmp") + FORMAT(G_IMG_X, 5, 0) + FORMAT(G_IMG_Y, 5, 0)
(当方での)出力結果が以下のようになります 100 100 True 100 100 ->スクリーン全体の時は問題なし True 95 100 ->MOUSEORG後 X座標のみが同一座標にならず ちなみにX/Yを0にすると未検出になります
CLIANTにしてるのが原因かと思い DIRECTにしてみましたが現象は変わりません
5.0.4で CHKIMG関連でFIXがあったのは知っていますが 最大化しているわけでもありませんし いくつかの旧バージョンでも動かしてみましたが いずれも同様の現象が発生しています
保存画像を確認する限りSAVEIMGには問題がないように思われます
ちなみに 5.0.4とメモ帳で行ってみたところクロームとはまた違った結果になってしまいました (X/Y両方ともずれる) なんかわけわからなくなってきてます
|
No.624 2014/12/21(Sun) 20:56:11
|
☆ Re: CHKIMGの検出座標 / umiumi |
|
|
saveimgと chkimgの座標系が違うから クライアント座標で処理するなら saveimg関数の クライアント指定を Trueに SAVEIMG("C:\TEMP\test0.bmp", 0, X, Y, 100, 100, True, 0, IMG_BACK)
|
No.626 2014/12/22(Mon) 00:36:37
|
|
☆ Re: CHKIMGの検出座標 / koi |
|
|
回答ありがとうございます 問題ないと思っていたSAVEIMG側の使い方の問題でしたか 気が付きませんでした 確認したところ確かに座標系が一致するようになりました
|
No.629 2014/12/22(Mon) 05:07:51
|
|