delphi - 在 FireMonkey 中使用 TakePhotoFromCameraAction (FMX.MediaLibrary.Actions) 时如何控制图像分辨率(大小)?
问题描述
在 Android 和 iOS 上,我都成功地使用TTakePhotoFromCameraAction
FMX 将用户拍摄的照片保存到TImage
.
使用 时TTakePhotoFromCameraAction
,我可以控制所拍摄照片的分辨率(最终以字节为单位)吗?如果是这样,怎么做?
“后处理”结果TImage
以减小尺寸的最佳方法是什么?我问这个是因为如果我要开始使用TTakePhotoFromLibraryAction
它来允许用户从他们的图库中选择现有照片,我可能仍然需要这个功能。
我确实需要一个适用于 Android 和 iOS 的解决方案,拜托。
我目前正在使用 Delphi 10.4.2 Sydney
解决方案
使用 时
TTakePhotoFromCameraAction
,我可以控制所拍摄照片的分辨率(最终以字节为单位)吗?如果是这样,怎么做?
TTakePhotoFromCameraAction
有MaxWidth
和MaxHeight
属性。
如果你改用它,它有一个带参数IFMXCameraService.TakePhoto()
的重载,它有一个字段。TParamsPhotoQuery
RequiredResolution
“后处理”结果
TImage
以减小尺寸的最佳方法是什么?我问这个是因为如果我要开始使用TTakePhotoFromLibraryAction
它来允许用户从他们的图库中选择现有照片,我可能仍然需要这个功能。
TTakePhotoFromLibraryAction
也有MaxWidth
和MaxHeight
属性。
并且IFMXTakenImageService.TakeImageFromLibrary()
有一个带ARequiredResolution
参数的重载和一个带TParamsPhotoQuery
参数的重载。