Назначение палитры Bitmap

Previous  Top  Next

    
 

Если вы рисуете на TImage....

Во-первых, вам нужно использовать Image1.Picture.bitmap, а не Image.Canvas. Причина кроется в том, что Image1.Picture.Bitmap имеет палитру, в Timage нет. Затем палитру необходимо назначить. Вот пример:

Code:

// Устанавливаем Width и Height перед использованием

// Image1.Picture c Bitmap Canvasvar

 

Bitmap: TBitmap;

begin

Bitmap:=TBitmap.Create;

Bitmap.LoadfromFile({'Whatever.bmp'});

 

With Image2.Picture.bitmap do

Begin

   Width:=Bitmap.Width;

   height:=Bitmap.Height;

   Palette:=Bitmap.Palette;

   Canvas.draw(0,0,bitmap);

   Refresh;

end;

end;

 

Если вы рисуете на канве формы...

Code:

Canvas.Draw(0,0,Bitmap);

SelectPalette(Form1.Canvas.handle,Bitmap.Palette,True);

RealizePalette(Form1.Canvas.Handle);

 

 

 
©Drkb::03715

http://delphiworld.narod.ru/

DelphiWorld 6.0