Конференция "Начинающим" » Нормальный Transparent в Image??? [D7, WinXP]
 
  • Fresh © (08.07.08 21:41) [0]
    У меня проблема такая: загружаю картинку .BMP у нее есть белый фон с краев, потом идет рисунок какой-то формы. мне нужно чтоб было видно только ту форму, без белого фона. ставлю свойство Transparent := True - белого не видно. Но один большой нюанс. Чтоб белого не было видно нужно чтоб картинка была огромных размеров, например 400х400 точек а у меня в проге размер картинки 100х100. Если загрузить картинку 400х400 делфи её сжимает до маленьких размеров и белого не стает видно, но таких картинок много, все разные, формат bmp так увеличивает прогу, что невыносимо!!! Потом пробую делать картинки 100х100 и уже такими вставляю в делфи, но они очень плохо стают прозрачными, видны белые точки, не все убираются. Можно как это решить??????
    Я искал в DelphiWorld так нашел такую статью, чуть не такую но с неё можно что-то взять:

    *****************************************************************************

    При вставке какой-либо картинки в Image с произвольными очертаниями, можно легко обратиться к самой картинке а не к ненужному "куску" Image.  
    Решение:  
    Вставляем картинку ,например с белым фоном, transpert:=true и на OnMouseOver, или еще где, пишем:
    if image1.picture.bitmep.canvas.pixels[X, Y]<>clwhite then
     image1.cursor:=crHourGlass
    else
     image1.cursor:=crDefault
    Пояснение: при наведении прога проверяет цвет пиксела под указатем и если оно отличается от белого, т.е. цвета фона, то указатель меняет свой вид!  

    *****************************************************************************

    Если б попиксельно проверять на белый цвет и делать этот пиксел прозрачным. Если кто-то знает как это сделать, то помогите пожалуйста  А то уже и так с этими картинками намучался  Картинок много, если все картинки размером 400х400 то размер программы при 100х100 отличается в 6 раз!!!
  • Kolan © (08.07.08 23:51) [1]
    > Если загрузить картинку 400х400 делфи её сжимает до маленьких
    > размеров

    Вот где промах. Делфай сам не сжимает. См. Strach и AutoSize у TImage
  • DimaBr © (09.07.08 08:48) [2]
    Внимание! Здесь обсуждаются вопросы, связанные с разработкой компонентов, редакторов свойств, редакторов компонентов и экспертов IDE.
    Вопросы по поиску и использованию готовых компонентов, редакторов или экспертов являются нарушением тематики и могут быть удалены.
  • Правильный^Вася (09.07.08 11:48) [3]

    > азмеров и белого не стает видно, но таких картинок много,
    >  все разные, формат bmp так увеличивает прогу, что невыносимо!
    > !! Потом пробую делать картинки 100х100 и уже такими вставляю
    > в делфи

    видимо, твоя сжималка картинок либо глючит, либо ты вообще через jpeg прогоняешь, либо те точки "почти" белые
 
Конференция "Начинающим" » Нормальный Transparent в Image??? [D7, WinXP]
Есть новые Нет новых   [134466   +5][b:0][p:0]