cordova - 相机插件的缩小图库照片

标签 cordova windows-phone-8 camera windows-phone-8.1 image-gallery

我正在使用 Cordova 2.6 相机插件,从设备库中获取图像,我使用 base64 编码获取它们,我试图使用“质量”选项将它们压缩到较低的质量。

我注意到压缩不起作用,当我在 https://github.com/apache/cordova-plugin-camera/blob/master/doc/index.md 阅读 Cordova 文档时, 我会读 :

NOTE: Photo resolution on newer devices is quite good. Photos selected from the device's gallery are not downscaled to a lower quality, even if a quality parameter is specified. To avoid common memory problems, set Camera.destinationType to FILE_URI rather than DATA_URL.



就我而言,我只能使用 DATA_URL,因为我使用 base64 加密通过第三方网络服务上传图片。我也只使用来自设备库的图像(而不是来自相机本身)。
我遇到了一些性能问题,主要是在 Windows Phone 上。由于图像大小,我的应用程序需要太多时间来处理 base64 数据(我正在测试保存在设备库中的大图像,但这些图像是使用 5 MP 或 8 MP 手机的相机拍摄的)。

我的问题是有一个解决方案可以让“质量”选项适用于 Cordova 插件中的图库照片吗?

是否有任何自定义插件或分支可以压缩设备图库照片?

您有其他建议吗? (例如使用 FILE_URI 并返回压缩图像 base64 加密的自定义 native 插件)

最佳答案

我们在调用 .getPicture 时使用以下选项:

quality: 50,
destinationType: Camera.DestinationType.DATA_URL,
encodingType: Camera.EncodingType.JPEG,
sourceType: Camera.PictureSourceType.CAMERA,
targetWidth: 800,
correctOrientation: true

不过,质量参数似乎对文件大小没有太大影响。 targetWidth 和,出于某种奇怪的原因,正确的方向。根据设备的相机分辨率,这些设置的结果图片大小约为 24kB。

关于cordova - 相机插件的缩小图库照片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27470610/

相关文章:

ANDROID_HOME 未设置且 "android"命令不在您的 PATH Phonegap 中

android - 在android上运行模拟器时出错

android - Android 设备上的照片方向

Android - 如何为视频录制创建不可见的相机预览?

4 :3 tablets 上的 Android 相机预览纵横比

ios - 在iOS下使用InAppBrowser打开本地文件不起作用

java - 安卓奇巧 : fileChooser + fileTransfer cordova plugin not working

c# - 如何从 Windows Phone 8 应用程序发送电子邮件?

image - 从项目文件加载图像

optimization - Windows Phone 8 上的 Cocos2dx 性能问题