![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 09.10.2008
Сообщений: 15
|
![]()
Имеется задний фон
![]() Мне нужно нарисовать на доске фигуру по ее образу без квадрата заливки, по маске на белом фоне, которая также имееться ![]() Подскажите пожалуйста, какие API -функции я должен изпользовать что бы выглядело не так: ![]() а вот так: ![]() программирую на Ассемблер. С уважением Юрий. Последний раз редактировалось wr_vu; 30.09.2010 в 11:55. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 31.05.2009
Сообщений: 786
|
![]()
Посмотри группу MaskBlt, BitBlt, PlgBlt...
|
![]() |
![]() |
![]() |
#3 |
Python,C++,ASM,Php
Пользователь
Регистрация: 29.08.2010
Сообщений: 58
|
![]()
Можно просто делать проверку, пикселя, то есть, если байт цвета белый, то не выводить, иначе выводим цвет к указанные координаты, не идеал, но помогает.
Хакер - это не ламер с завышенным самомнением, а программист с заниженной зарплатой.
Нелегка и неказиста жизнь простого программиста. |
![]() |
![]() |
![]() |
#4 |
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
![]()
Хм... Вы не уточнили куда делается вывод...
Если в буферный битмап - то можно через указатели напрямую в памяти (диб-секции)... Так возможно даже быстрее будет (если пооптимизировать)... А если в HDC - то ещё такая функция есть: TransparentBlt... Возможно даже она подойдёт лучше - не нужно будет отдельно маску хранить...
I am the First of Cyber Evolution...
I am the First to Program your Future... |
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
![]()
BVOG
Если делать проверку, пикселя, если байт цвета белый, то не выводить, иначе выводим цвет к указанные координаты, тогда белые фигуры сольются с доской, самое правильное, это TransparentBlt как предлагает DomiNick |
![]() |
![]() |
![]() |
#6 | |
Пользователь
Регистрация: 09.10.2008
Сообщений: 15
|
![]() Цитата:
![]() А правильный результат нужен такой: ![]() |
|
![]() |
![]() |
![]() |
#7 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
![]()
wr_vu
Не учел, тогда еще один выход -- сделайте фон рисунка шахматных фигур малиновым (или любым другим, но не черным и не белым) и тогда TransparentBlt будет работать нормально |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
работа с рисунком | 1o1man | Помощь студентам | 2 | 22.08.2010 16:36 |
работа с bmp файлами в С++ | blackbanny | Помощь студентам | 5 | 16.06.2010 09:04 |
Работа с BMP файлами в PHP | utrnjhyfgjktjy | Помощь студентам | 0 | 27.04.2010 00:58 |
работа с .bmp | DeadWorm | Общие вопросы C/C++ | 4 | 16.04.2009 14:09 |
Работа Delphi с рисунком в Excel? | Alex-as-hac | Общие вопросы Delphi | 0 | 02.12.2008 09:59 |