C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Изображения
Disan
Отправлено: 03.03.2006, 19:46


Не зарегистрирован







Подскажите, пожалуйста, как можно нарисовать изображение (TBitmap) в режиме осветления. CopyMode свойство не устраивает — оно рисует с какими-то ступеньками.
Grigoriy
Отправлено: 03.03.2006, 22:57


Мастер участка

Группа: Участник
Сообщений: 381



QUOTE
в режиме осветления


не понимаю, что значит осветление.

QUOTE
оно рисует с какими-то ступеньками


Может быть тысячи причин и одна из них — неправильное использование аргументов функции. Нужно учесть, что при наложении изображения может использоваться какая-то логическая операция над байтами уже имеющегося изображения и накладываемого.

И что Вам вообще нужно нарисовать ?

Отредактировано Grigoriy — 03/03/2006, 22:59
Disan
Отправлено: 04.03.2006, 11:12


Не зарегистрирован







Нужно нарисовать на изображении что-то вроде вспышки — т.е. накладываемая картинка — радиальный гардиент от центра (светложелтый) к краям (черный).
Программа выглядит примерно так:

Image1->Canvas->CopyMode=cmSrcPaint;
Image1->Canvas->Draw(x,y,Bmp);

Image1 — компонент типа TImage (изображение — фон)
Bmp — TBitmap объект, тот самый радиальный гардиент.ъ
В результате на изображении получается не плавный переход цветов в месте наложения, а резкие ступеньки. Почему это происходит, я знаю. Вопрос, есть ли другой способ нарисовать изображение так как мне надо?

Вернуться в Вопросы программирования в C++Builder