Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.08.17;
Скачать: CL | DM;

Вниз

Маска   Найти похожие ветки 

 
savyhinst ©   (2008-07-12 21:36) [0]

Здраствуйте.
Подскажите, пожалуйста. Есть два рисунка в bmp; один - просто картинка, а другой - чёрон-белый и состоит в том, что каждый пиксел на фтором рисунке насыщеностью своего цвета показывает, насколько непрозрачно будет виден соответсвующий пиксел первого рисунка. Короче, фторой рисунок - это маска. Ну, и вот. Я делал так:

Canvas.CopyMode:=cmSrcCopy;
Canvas.Draw(x,y,mask);
Canvas.CopyMode:=cmSrcAnd;
Canvas.Draw(x,y,bitmap);

Но, что-то, не работает. Что делать??
Спасибо за внимание.


 
KilkennyCat ©   (2008-07-12 21:45) [1]

посмотреть вариант разложения на составляющие цветов R G B и вариант работы c HSB.
А не работает-то как? "Что-то" слишком мало объясняет, а чаще всего решение проблемы возникает при нормальном ее объяснение. Рисовать картинки и писать программу, чтоб увидеть как идет суммирование, мне, честно говоря, лень.


 
savyhinst ©   (2008-07-12 21:50) [2]

суть в том, что чёрное получается поверх основной картинки.


 
KilkennyCat ©   (2008-07-12 21:59) [3]

ну дык  поменять очередность, будет снизу.


 
Германн ©   (2008-07-13 00:52) [4]


> savyhinst ©   (12.07.08 21:50) [2]
>
> суть в том, что чёрное получается поверх основной картинки.
>
>

Да хоть "поверх", хоть "понизу" - одно и тоже будет. Учи булеву алгебру и теорию по RGB.


 
savyhinst ©   (2008-07-13 13:23) [5]


>  Учи булеву алгебру и теорию по RGB.

Я учил


 
Sick   (2008-07-13 16:43) [6]


> savyhinst ©

Ты хочешь сказать, что под первым рисунком должен просвечивать нулевой рисунок?


 
User   (2008-07-13 21:39) [7]

... у меня работает такой вариант:
 
bmp, Bgr: TBitmap;
...
DC:= Bgr.Canvas.Handle;
BitBlt(bmp.Canvas.Handle, 0, 0, x, y, DC, 0, 0, SRCAND);

где bmp - фон, Bgr - накладываемый рисунок. Метод наложения (SRCAND) можно поискать по Хелпу (или в windows.pas   { Ternary raster operations })



Страницы: 1 вся ветка

Текущий архив: 2008.08.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
2-1215755547
Андрей Пл
2008-07-11 09:52
2008.08.17
TDBNavigator в вертикальном виде?


2-1215985907
Zivas
2008-07-14 01:51
2008.08.17
Реально ли сделать это на делфи?


1-1196789989
Elhat
2007-12-04 20:39
2008.08.17
Определение многопользовательской / однопользовательской Windows


2-1215701884
Light-blr
2008-07-10 18:58
2008.08.17
Как перевести русские символы в формат типа %D0?


2-1216030521
small
2008-07-14 14:15
2008.08.17
TXPManifest