Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: Архипчик on July 18, 2015, 08:22:14 PM

Title: Вопрос по применению IF_PICTURE_IN (x, y, x2, y2, "file", [bgcolor], [currency])
Post by: Архипчик on July 18, 2015, 08:22:14 PM
А именно: есть два РАЗЛИЧНЫХ образца file, которые нужно найти на экране, абсолютно одинаковые, за исключением только фона. Один белый(фон), другой серый(тоже фон). Текст идентичен.
И вот никак не соображу с параметром [bgcolor] - как только ни пробовал, нужного результата добиться не могу. Хочется решить задачу за ОДИН проход, причем безразлично какой фон будет на экране(или на образце?), он различается исключительно для визуализации(таблица со строками).
Подскажите, а?..

ЗЫ нужно найти первую встречную нужную надпись на любом фоне)))
Title: Re: Вопрос по применению IF_PICTURE_IN (x, y, x2, y2, "file", [bgcolor], [currency])
Post by: Oraven on July 18, 2015, 09:04:10 PM
нужно закрасить в твоем фрагменте не нужный фон каким нибудь цветом и указать этот цвет в функции как прозрачность.
Title: Re: Вопрос по применению IF_PICTURE_IN (x, y, x2, y2, "file", [bgcolor], [currency])
Post by: Архипчик on July 19, 2015, 04:15:59 PM
"нужно закрасить в твоем фрагменте не нужный фон каким нибудь цветом" - закрасилв своем образце для поиска  первым попавшимся, указал его в функции как [bgcolor], в результате находит ТОЛЬКО на сером фоне. Указал цвет серого фона, потом белого - результат неизменен... Сдается мне, что проблема именно в белом фоне...
В общем, сам так ничего и не понял...  :-\
Поступил тупо: загрубил цвета через COLORMODE(6), вырезал образец и оно работает... Т.к. терь весь фон белый.)

За совет спасибо, но повторюсь - не понял я его!
Title: Re: Вопрос по применению IF_PICTURE_IN (x, y, x2, y2, "file", [bgcolor], [currency])
Post by: Oraven on July 19, 2015, 05:36:48 PM
Ну что тут сложного? Вот я вырезал слово Вопрос из названия постов. Закрасил фон зеленым цветом и указал его как прозрачность.
Code: (clickermann) [Select]
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Вопрос.bmp", 65280, 100)
   MOVE($_return1+10, $_return2+5)
   WAITMS(100)
END_IF
HALT
Title: Re: Вопрос по применению IF_PICTURE_IN (x, y, x2, y2, "file", [bgcolor], [currency])
Post by: Архипчик on July 19, 2015, 05:41:58 PM
За исключением цвета закрашивания - сделал все в точности так!!! :)  Код цвета указал свой)
Находит, но если на фоне присутствует отличный от белого цвет. На белом фоне - не находит...  :-\ Именно последнее мне не понятно и жутко бесит...  :o
Title: Re: Вопрос по применению IF_PICTURE_IN (x, y, x2, y2, "file", [bgcolor], [currency])
Post by: Oraven on July 19, 2015, 06:26:46 PM
Ну ты хоть выложи скриншот и фрагмент поиска по которому ищешь, а то так можно бесконечно разглагольствовать.
Title: Re: Вопрос по применению IF_PICTURE_IN (x, y, x2, y2, "file", [bgcolor], [currency])
Post by: Архипчик on July 19, 2015, 06:44:41 PM
Попытаюсь:
Скриншот для поиска(фрагмент) и образец.

Title: Re: Вопрос по применению IF_PICTURE_IN (x, y, x2, y2, "file", [bgcolor], [currency])
Post by: Oraven on July 19, 2015, 07:08:05 PM
Проблема ясна. Дело в сглаживании! Бессмысленно вырезать фон потому что на двух строках совершенно разные картинки. К пикселам размытия подмешивается цвет фона. И возможно даже такое что после перезагрузки пикселы будут выстроены по другому. У меня, например на XP, нет сглаживания и слово и фон представляют из себя 2а цвета, поэтому фон легко вырезается.

Лечится это отключением сглаживания.
Title: Re: Вопрос по применению IF_PICTURE_IN (x, y, x2, y2, "file", [bgcolor], [currency])
Post by: Архипчик on July 19, 2015, 07:15:28 PM
Спасибо! Радует хоть то, что не моя явная вина, а просто недопетрил до таких нюансов...  :-[ Но загрублением цвета, как писал выше, все решил. Только способ мне этот не нравится... Почему то.  >:(


ЗЫ Винда 7-я