В этом вопросе я спросил о правильном использовании метода CopyRect. Я получил ответ, который устранил мою проблему, но теперь цвета скопированного прямоугольника неверны (ограничено 256 значениями?). Это код:
var
Bmp: TBitmap;
begin
Image1.Picture.LoadFromFile(SomeJPGimage);
Bmp := TBitmap.Create;
try
Bmp.Assign(Image1.Picture.Graphic);
with Bmp do
Image2.Canvas.CopyRect(Image2.Canvas.ClipRect, Canvas, Canvas.ClipRect);
finally
Bmp.Free;
end;
end;
Вставка с ложными цветами - Image2. Цвета подходящие, если я не изменяю размер.
Как мне получить 24-битный цвет исходного изображения (JPG) при изменении размера?
edit
Draw не является альтернативой; Я хочу скопировать уменьшенную версию части исходного изображения.