var
jpgsrc: TJPEGImage;
bitmapsrc, bitmapdest: TBitmap;
begin
jpg := TJPEGImage.Create;
bitmapsrc := TBitmap.Create;
bitmapdest := TBitmap.Create;
try
jpg.LoadFromFile('d:/1.jpg');
bitmapsrc.assign(jpg);
bitmapdest.width := 800;
bitmapdest.height := 600;
bitmapdest.strechdraw(rect(0, 0, 800, 600), bitmapsrc);
jpg.assign(bitmapdest);
jpg.save('d:/2.jpg');
finally
jpg.Free;
bitmapsrc.free;
bitmapdest.free;
end;