Delphi XE7位图大小到Android上的大消息

时间:2015-02-13 08:30:56

标签: android image delphi bitmap delphi-xe7

当我在我的Android手机上拍照时,我的XE7应用程序崩溃了,它说位图大小很大。但我使用之前使用过的代码并且工作正常。这是关于在an​​droid / iOS上拍照的embarcadero的例子。

我的代码如下:

procedure TForm1.TakePhotoFromCameraAction1DidFinishTaking(
  Image: TBitmap);
var
  saveParams:TBitmapCodecSaveParams;
  directory,name:String;
begin
  image1.Bitmap.Assign(Image);
  saveParams.Quality := 100;
  {$IFDEF ANDROID}
  directory := TPath.GetPicturesPath;
  name := '/RoomId:'+ fRoomId.ToString()+' '+DateTimeToStr(Now)+'.png';
  {$ENDIF}
  {$IFDEF IOS}
  directory := TPath.GetDocumentsPath;
  name := '/RoomId:'+ fRoomId.ToString()+' '+DateTimeToStr(Now)+'.png';
  {$ENDIF}
  Image.SaveToFile(directory+name,@saveParams);
end;

任何人都知道它为什么不起作用?

更新 我确信代码是正确的。我在另一个应用程序中测试过它。还尝试调试操作并在调试期间继续重复TTakePhotoFromCameraAction.CustomTextChanged。此外,在调试期间,它确实保存了图片,但由于某种原因无法正确关闭操作。奇怪的是,该代码也适用于三星平板电脑,但不适用于索尼手机。

1 个答案:

答案 0 :(得分:0)

我有一个表单的ScaleBy属性,这就是问题所在。重命名属性后,我不再有问题了。