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

Вниз

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

 
XeN ©   (2001-12-26 17:59) [0]

Народ! Как на DelphiX можно рисовать на TDXDraw картинку, которая постепенно пропадает. DrawAlpha не катит, слишком уж тормозит.


 
XeN ©   (2001-12-27 09:39) [1]

Неужели никто не знает?


 
ZEE ©   (2001-12-27 10:54) [2]

На счет TDXDraw не знаю, но вот тебе небольшая процедура, которая постепенно "гасит" (затемняет) изображение (ее надо выполнять несколько раз)
bmResult - витмап для затемнения
iAlpha - величина "незатемнения" (т.е. чем она больше - тем большее кол-во раз надо вызывать процедуру до полного затемнения)


procedure DropShadow24(iX,iY,iWidth,iHeight:integer;var bmResult:TBitmap;iAlpha:integer);
var
pBits:pointer;
i,j,k,iSize:integer;
begin
if not (bmResult.PixelFormat=pf24bit) then Exit;
iSize:=bmResult.Width*bmResult.Height*3;
GetMem(pBits,iSize);
GetBitmapBits(bmResult.Handle,iSize,pBits);
for j:=iY to iY+iHeight-1 do
for i:=iX to iX+iWidth-1 do
begin
k:=j*bmResult.Width*3+i*3;
asm
PUSHAD
MOV ECX,pBits
ADD ECX,k
MOV EBX,iAlpha
MOV AL,[ECX]
MUL BL
MOV [ECX],AH
INC ECX
MOV AL,[ECX]
MUL BL
MOV [ECX],AH
INC ECX
MOV AL,[ECX]
MUL BL
MOV [ECX],AH
POPAD
end
end;
SetBitmapBits(bmResult.Handle,iSize,pBits);
FreeMem(pBits)
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.026 c
7-52678
Andey
2001-09-27 19:55
2002.01.17
Определение номера


6-52627
KLM
2001-09-28 10:11
2002.01.17
Кодировка почты


1-52617
Анатолий
2002-01-01 04:00
2002.01.17
StringGrid


1-52526
Baz
2001-12-26 10:21
2002.01.17
Господи, да что ж делается-то?!


7-52675
Lizard
2001-09-30 13:59
2002.01.17
Как из списка в listbox1 удалить нужную строку ?