Author Topic: Вопрос по применению IF_PICTURE_IN (x, y, x2, y2, "file", [bgcolor], [currency])  (Read 3250 times)

0 Members and 1 Guest are viewing this topic.

Архипчик

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
А именно: есть два РАЗЛИЧНЫХ образца file, которые нужно найти на экране, абсолютно одинаковые, за исключением только фона. Один белый(фон), другой серый(тоже фон). Текст идентичен.
И вот никак не соображу с параметром [bgcolor] - как только ни пробовал, нужного результата добиться не могу. Хочется решить задачу за ОДИН проход, причем безразлично какой фон будет на экране(или на образце?), он различается исключительно для визуализации(таблица со строками).
Подскажите, а?..

ЗЫ нужно найти первую встречную нужную надпись на любом фоне)))

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
нужно закрасить в твоем фрагменте не нужный фон каким нибудь цветом и указать этот цвет в функции как прозрачность.

Архипчик

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
"нужно закрасить в твоем фрагменте не нужный фон каким нибудь цветом" - закрасилв своем образце для поиска  первым попавшимся, указал его в функции как [bgcolor], в результате находит ТОЛЬКО на сером фоне. Указал цвет серого фона, потом белого - результат неизменен... Сдается мне, что проблема именно в белом фоне...
В общем, сам так ничего и не понял...  :-\
Поступил тупо: загрубил цвета через COLORMODE(6), вырезал образец и оно работает... Т.к. терь весь фон белый.)

За совет спасибо, но повторюсь - не понял я его!

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Ну что тут сложного? Вот я вырезал слово Вопрос из названия постов. Закрасил фон зеленым цветом и указал его как прозрачность.
Code: (clickermann) [Select]
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "Вопрос.bmp", 65280, 100)
   MOVE($_return1+10, $_return2+5)
   WAITMS(100)
END_IF
HALT

Архипчик

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
За исключением цвета закрашивания - сделал все в точности так!!! :)  Код цвета указал свой)
Находит, но если на фоне присутствует отличный от белого цвет. На белом фоне - не находит...  :-\ Именно последнее мне не понятно и жутко бесит...  :o

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Ну ты хоть выложи скриншот и фрагмент поиска по которому ищешь, а то так можно бесконечно разглагольствовать.

Архипчик

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Попытаюсь:
Скриншот для поиска(фрагмент) и образец.


Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Проблема ясна. Дело в сглаживании! Бессмысленно вырезать фон потому что на двух строках совершенно разные картинки. К пикселам размытия подмешивается цвет фона. И возможно даже такое что после перезагрузки пикселы будут выстроены по другому. У меня, например на XP, нет сглаживания и слово и фон представляют из себя 2а цвета, поэтому фон легко вырезается.

Лечится это отключением сглаживания.

Архипчик

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Спасибо! Радует хоть то, что не моя явная вина, а просто недопетрил до таких нюансов...  :-[ Но загрублением цвета, как писал выше, все решил. Только способ мне этот не нравится... Почему то.  >:(


ЗЫ Винда 7-я