| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > Bitmap с прозрачным фоном |
| Автор: RastaDja 17.5.2011, 15:58 |
| Доброго времени суток! Пишу в 2010 студии. При работе нужны битмапы, я рисую их в ресурсах (ПраваяКнопкаМыши->Insert Bitmap...). Но как сделать прозрачный фон я не знаю... Подскажите сабж. Спасибо. |
| Автор: RastaDja 18.5.2011, 08:01 |
| видимо проблема в том, что формат битмапа *.bmp, буду пробовать вставлять свои (из фотошопа) не .bmp-шные. |
| Автор: Earnest 18.5.2011, 08:21 |
| Если речь идет о том, чтобы сделать какой-то конкретный цвет в битмапе прозрачным (напр. белый) - не вопрос. Используй TransparentBlt для вывода и все тебе будет. При рисовании ничего особого делать не надо - просто залить фон тем цветом, который ты потом объявишь прозрачным. Еще теоретически в 32-битных дибах есть альфа-канал, как раз для прозрачности, но сама никогда не пользовалась, поэтому не знаю точно,что и как. А еще есть функция AlphaBlend (для вывода, здесь уже настоящая прозрачность, можно задать процент прозрачности для всего растра). |
| Автор: RastaDja 18.5.2011, 08:37 |
| Earnest спасибо за ответ. Относительно - задавать конкретный цвет как альфа канал, я читал об этом, но это - для рисования. Я скорее всего не полностью осветил тему. Дело в том, что я использую проект типа Ribbon. У этого "рибона" есть главная кнопка (круглая, вы знаете канечно), и вот функция установки картинки в эту кнопку m_MainButton.SetImage(IDB_PNG1), нужно чтоб картинка IDB_PNG1 была круглая, вот я и парился. Но спс за ответ. Люблю твои ответы - точно и лаконично, не один раз помогала. вот и решение нашол - http://sitestroyblog.ru/how-to-make-transparent-background/ |