18 / 18 / 1
Регистрация: 27.01.2010
Сообщений: 150
1

bmp прозрачность

05.05.2012, 22:12. Показов 4964. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
итак, учусь работать с графикой.
нужно сделать прозрачный bmp, пытался делать 16 или 8 бит изображение, заливку 255.0.255 и помешал это на кнопки, в итоге видел розовую кнопку поверх фонового рисунка.
читал про 32 с альфа, поставить 32 в студии вообще не могу, т.е. пункт есть, а поставить нельзя, а когда загрузил из фотошопа 32бита, они стали 24.
В общем помогите, а то срочно нужно.
И еще как контролировать наложение слоев? какое изображение поверх какого должно быть.
Спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.05.2012, 22:12
Ответы с готовыми решениями:

Прозрачность в CDHtmlDialog окнах
суть проблемы: никак не получается сделать прозрачным background окна... притом если в обычном...

Прозрачность картинки bmp
Господа как сделать прозрачность у картинки?

Прозрачность bmp изображения
Добрый день,можете дать информацию о прозрачности изображений в bmp файле,также необходима...

Как изменить прозрачность bmp рисунка?
procedure TForm1.FormPaint(Sender: TObject); var bm:TBitMap; begin bm:=TBitMap.Create; ...

18
Модератор
Эксперт по электронике
8845 / 6625 / 902
Регистрация: 14.02.2011
Сообщений: 23,319
05.05.2012, 22:16 2
Цитата Сообщение от AC-93 Посмотреть сообщение
нужно сделать прозрачный bmp,
а не поддерживает он прозрачность используй другие форматы
0
18 / 18 / 1
Регистрация: 27.01.2010
Сообщений: 150
05.05.2012, 22:23  [ТС] 3
вроде как 32 поддерживает, вроде как виндоус искуственно делает прозрачным розовый.
и как я в винапи засуну что-то другое?
0
Модератор
Эксперт по электронике
8845 / 6625 / 902
Регистрация: 14.02.2011
Сообщений: 23,319
05.05.2012, 22:29 4
Цитата Сообщение от AC-93 Посмотреть сообщение
вроде как 32 поддерживает,
по моему до конца не реализовали у меня нет стандарта на 32разрядный БМП
Цитата Сообщение от AC-93 Посмотреть сообщение
как я в винапи засуну что-то другое?
например иконки они то поддерживают прозрачность (именно прозрачность а не полупрозрачность)
если тебе не нужна полупрозрачность то можешь сделать на основе БМП регион и рисовать в нем
0
18 / 18 / 1
Регистрация: 27.01.2010
Сообщений: 150
05.05.2012, 22:33  [ТС] 5
у меня меню и там надписи должны быть, а сзади фон
0
Brainsbreaker
897 / 373 / 53
Регистрация: 01.02.2011
Сообщений: 1,599
05.05.2012, 22:41 6
Тебе не для ToolBar'а надо?
0
18 / 18 / 1
Регистрация: 27.01.2010
Сообщений: 150
05.05.2012, 22:48  [ТС] 7
нет, просто меню, старт, лоад и т.д.
http://forum.oszone.net/thread-128923.html
0
Модератор
Эксперт по электронике
8845 / 6625 / 902
Регистрация: 14.02.2011
Сообщений: 23,319
05.05.2012, 22:59 8
Цитата Сообщение от AC-93 Посмотреть сообщение
у меня меню и там надписи должны быть, а сзади фон
иконки!
посмотри на "первых шагах" есть примеры меню с иконками
0
18 / 18 / 1
Регистрация: 27.01.2010
Сообщений: 150
05.05.2012, 23:20  [ТС] 9
там без прозрачности

Добавлено через 19 секунд
и как получить Id нажатой кнопки внутри функции обработки дабл клика?
0
Модератор
Эксперт по электронике
8845 / 6625 / 902
Регистрация: 14.02.2011
Сообщений: 23,319
05.05.2012, 23:38 10
Цитата Сообщение от AC-93 Посмотреть сообщение
там без прозрачности
так создавая иконку ты задаешь прозрачные участки
Цитата Сообщение от AC-93 Посмотреть сообщение
и как получить Id нажатой кнопки внутри функции обработки дабл клика?
переведи
0
18 / 18 / 1
Регистрация: 27.01.2010
Сообщений: 150
05.05.2012, 23:53  [ТС] 11
не понял тебя, как создать кнопку с текстом, чтобы кроме текста все было прозрачно?
с ид разорбрался.
0
Модератор
Эксперт по электронике
8845 / 6625 / 902
Регистрация: 14.02.2011
Сообщений: 23,319
06.05.2012, 00:06 12
Цитата Сообщение от AC-93 Посмотреть сообщение
не понял тебя, как создать кнопку с текстом, чтобы кроме текста все было прозрачно?
1 использовать иконку которую создашь (на прозрачном фоне напишешь текст)
2 если только текст то используй SetBkMode http://msdn.microsoft.com/en-U... s.80).aspx
0
18 / 18 / 1
Регистрация: 27.01.2010
Сообщений: 150
06.05.2012, 00:44  [ТС] 13
пример кода можно?....

Добавлено через 30 секунд
как имея указатель на объект, получить его hwnd?
0
Модератор
Эксперт по электронике
8845 / 6625 / 902
Регистрация: 14.02.2011
Сообщений: 23,319
06.05.2012, 00:51 14
Цитата Сообщение от AC-93 Посмотреть сообщение
как имея указатель на объект, получить его hwnd?
член класса CWnd::m_hwnd
http://msdn.microsoft.com/en-u... s.80).aspx
Но что то мне подсказывает что тебе нужен контекст для рисования
http://msdn.microsoft.com/en-U... s.80).aspx
1
Заблокирован
Автор FAQ
10.05.2012, 23:45 15
А я пожалуй приведу пример реализации
Миниатюры
bmp прозрачность   bmp прозрачность   bmp прозрачность  

Вложения
Тип файла: rar MFCProject.exe.rar (41.4 Кб, 37 просмотров)
0
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
11.05.2012, 12:20 16
Цитата Сообщение от AC-93 Посмотреть сообщение
итак, учусь работать с графикой.
нужно сделать прозрачный bmp, пытался делать 16 или 8 бит изображение, заливку 255.0.255 и помешал это на кнопки, в итоге видел розовую кнопку поверх фонового рисунка.
читал про 32 с альфа, поставить 32 в студии вообще не могу, т.е. пункт есть, а поставить нельзя, а когда загрузил из фотошопа 32бита, они стали 24.
В общем помогите, а то срочно нужно.
И еще как контролировать наложение слоев? какое изображение поверх какого должно быть.
Спасибо.
*.bmp УСТАРЕЛ
Используйте *.png
В нём есть такая штука -- AlphaBlend function !! это частичная прозрачность каждого пиксела! (либо полная)
Советую библеотеки от SDL http://www.libsdl.org/ там есть ещё SDL_image, который поддерживает много разрешений
0
-=ЮрА=-
11.05.2012, 12:39
  #17

Не по теме:

Цитата Сообщение от Ternsip Посмотреть сообщение
*.bmp УСТАРЕЛ
- так же как и гиф, но пока нет нормального формата с анимацией, а гиф работает как и работал. вообще есть такая поговрка - старый конь борозды не портит, это же касается и БМП. По поводу прозрачности, представь себе бленд есть и для БМП наугли BOOL AlphaBlend(...)

0
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
11.05.2012, 12:45 18
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение

Не по теме:

- так же как и гиф, но пока нет нормального формата с анимацией, а гиф работает как и работал. вообще есть такая поговрка - старый конь борозды не портит, это же касается и БМП. По поводу прозрачности, представь себе бленд есть и для БМП наугли BOOL AlphaBlend(...)

Есть Есть, вы правы! НО в bmp он ооооооооооочень медленный
0
Заблокирован
Автор FAQ
11.05.2012, 13:00 19

Не по теме:

Цитата Сообщение от Ternsip Посмотреть сообщение
НО в bmp он ооооооооооочень медленный
- это если мало ресурсов - а так он очень простой - считал битмапинфохедер и работай с DIB а jpeg ещё конвертнуть надо суметь:)
Я бы авот так безапелляционно БМП не отметал - для познания принципов графики из файла - он как раз самое оно для изучения



Добавлено через 9 минут
Был у меня случай - попался jpeg размером по памяти 8тыс на 5 кажется, в котором был бок в таблице квантования(с сдрома копировали, ну и занулили пару байтиков), так вот пэйнт ясное дело умер не открыв, айсидиси тоже самое, верней открыть то открыл а обрабатывать отказался, фотошоп долго думал а потом сказал - "не чувак, мне не нравиться этот файл" пришлось вручную(через самописную програмулинку) разворачивать джпег в бмп 500Мб (благо я знал и размер файла таблицу квантования, что позволило это всё зарание вшить в програмульку а не читать из файла), который смог спокойно поправить в томже шопе. Вывод - всему своё место. не вопрос нести джпег в 8Мб конечно удобней нежели ДИБ в 500, но так надёжность диба выше, нет потери качества, вот такие вот пироги
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.05.2012, 13:00
Помогаю со студенческими работами здесь

При конвертации из png в bmp теряется прозрачность
мне нужно во время работы программы загрузить png изображения в ImageList, но в ImageList картинки...

Как добавить прозрачность на текстуру, используя BMP 32 с альфа каналом
Добрый день. Изучаю возможности добавление текстуры с прозрачностью. Конкретно, пытаюсь добавить...

Работа с BMP-файлами (класс "8 битное BMP изображение)
Написать класс "8 битное BMP изображение".Класс должен содержать 3 конструктора: конструктор по...

Изображение bmp, операция над ним, снова в bmp
Задание состоит в следующем: 1. Перевести изображение в матрицу. 2. Удалить определенные...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru