ID499896465

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;



评论