Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.11.2008, 05:00   #1
Артэс
Форумчанин
 
Регистрация: 05.06.2007
Сообщений: 529
По умолчанию прозрачность

На форуме не нашел ни одного толкового примера именно на с++

Как можно задать прозрачность фона BMP рисунку? Я где-то читал что это можно сделать и через BitBtl
Артэс вне форума Ответить с цитированием
Старый 30.11.2008, 09:55   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Если вы знаите и понимает pascal - скачайте пример класса TPNGImage там яркий пример как это делается через BitBlt. Думаю API функции перевести в си++ не состаит труда )
BOBAH13 вне форума Ответить с цитированием
Старый 30.11.2008, 10:01   #3
0nni
Форумчанин
 
Аватар для 0nni
 
Регистрация: 24.07.2008
Сообщений: 279
По умолчанию

Код:
Canvas.BrushCopy(rect(0,0,32,32), Image1.Picture.Bitmap, Rect(0,0,32,32), $ff00ff);
где:
rect(0,0,32,32) - размеры битмапа и размеры места куда будет происходить копирование.
$ff00ff - "прозрачный цвет" можно заменить на
Код:
Image1.Picture.Bitmap.Canvas.Pixels[0,0];
те на левый верхний угол битампа
Сказал и загрустил от бесспорности своей правоты.
0nni вне форума Ответить с цитированием
Старый 30.11.2008, 13:15   #4
Артэс
Форумчанин
 
Регистрация: 05.06.2007
Сообщений: 529
По умолчанию

Паскаль как раз не знаю и не понимаю ^_^
Артэс вне форума Ответить с цитированием
Старый 30.11.2008, 14:03   #5
0nni
Форумчанин
 
Аватар для 0nni
 
Регистрация: 24.07.2008
Сообщений: 279
По умолчанию

Извините, вам нужен пример для Api а я написал для Delphi, думал вы в Билдере работаете.
Тогда вот статейка, возможно вам помежет, тоже на паскале, но ВинАпи ведь везде одинаковые.
http://www.delphisources.ru/pages/fa...ites_work.html
Еще возможно вам подойдет вывод через ImageList (CommCtrl)
Сказал и загрустил от бесспорности своей правоты.

Последний раз редактировалось 0nni; 30.11.2008 в 14:06.
0nni вне форума Ответить с цитированием
Старый 30.11.2008, 16:48   #6
Артэс
Форумчанин
 
Регистрация: 05.06.2007
Сообщений: 529
По умолчанию

Можно попробывать и проще, функцией
TransparentBlt( dc, 0, 0, 300,300, hBitMapDC, 0, 0, 0, 0, ? );

Но что нужно писать на конце, где знак вопроса, что бы задать прозрачность?
Артэс вне форума Ответить с цитированием
Старый 01.12.2008, 21:23   #7
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

http://msdn.microsoft.com/en-us/libr...03(VS.85).aspx

в последнем параметре надо задать цвет в исходном битмапе, который надо сделать прозрачным. если ты указал синий, то всё синее будет прозрачным
rpy3uH вне форума Ответить с цитированием
Старый 01.12.2008, 22:16   #8
Артэс
Форумчанин
 
Регистрация: 05.06.2007
Сообщений: 529
По умолчанию

Как раз таки я и пробывал РГБ вписать, и (rgb(1,1,1)) и просто числа. Ошибки компилятор выдает
Артэс вне форума Ответить с цитированием
Старый 02.12.2008, 11:24   #9
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

какая ошибка и какой компилятор? последний параметр имеет тип UINT
rpy3uH вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
прозрачность и фон JaydoN HTML и CSS 1 25.11.2008 12:31
прозрачность sergei64_89 Общие вопросы .NET 1 29.07.2008 21:43
Прозрачность Лубышев Помощь студентам 3 23.01.2008 00:05
Прозрачность ЧИЖ HTML и CSS 5 24.10.2007 17:18
Прозрачность MAcK Общие вопросы Delphi 2 21.03.2007 19:24