Цитата:
Сообщение от cmepthuk
1. нужно для формирования итогового изображения, чтоб было красивое наложение фигур.
|
Как я уже писал PNGImage не полностью поддерживает режим 16-бит. Для твоей задачи 16-бит ненужно в принципе.
Цитата:
Сообщение от cmepthuk
2. дык как то не рисует даже через канвас, странненько
|
Значит не правильно рисуешь. Скорее всего из за этого "png.Canvas.Draw(0, 0, figureBr.Picture.Bitmap);". Рисовать нужно не битмап, а PNG. Если TImage содержит PNG, выводить нужно как-то как:
Код:
png.Canvas.Draw(0, 0, figureBr.Picture.Graphic);
В принципе правильно будет держать битмап на котором будет сведение и на него выводить PNG.
Код:
var
bg: TBitmap;
img: TPNGObject;
begin
//подготавливаем битмап на котором будет сведение слоев
bg:=TBitmap.Create;
bg.PixelFormat:=pf24bit;
bg.Height:=480;
bg.Width:=640;
//загружаем слой
img:=TPNGObject.Create;
img.LoadFromFile('image.png');
//выводим на битмап
bg.Canvas.Draw(0,0,img);
...
end