Delphi XE7 的 Android Bitmap转JPG图的参数问题
TBitmapCodecManager.SaveToStream的最后一个参数为 PBitmapCodecSaveParams,但是在使用时,如果定义
parms:PBitmapCodecSaveParams;
设置
parms.Quality := 10; 则Android程序闪退,所以改用该指针的指向,
parms:TBitmapCodecSaveParams,运行正常。
procedure TForm5.BitmapToJPEG(input_bp: TBitmap; output_fn: string);
var
Surf: TBitmapSurface;
Stream: TMemoryStream;
parms:TBitmapCodecSaveParams;
begin
Surf := TBitmapSurface.Create;
Surf.Assign(input_bp);
Stream := TMemoryStream.Create;
try
parms.Quality:=10;
TBitmapCodecManager.SaveToStream(Stream, Surf, '.jpg', @parms);
Stream.SaveToFile(ExpandFileName(output_fn));
finally
Stream.Free;
Surf.Free;
end;
end;
评论