phonegap 图像调整器插件来保存图像
Posted
技术标签:
【中文标题】phonegap 图像调整器插件来保存图像【英文标题】:phonegap image resizer plugin to save image 【发布时间】:2013-02-21 05:51:03 【问题描述】:我在这里找到了一个 phonegap image-resizer 插件https://github.com/raananw/PhoneGap-Image-Resizer
我尝试在相机成功时将其添加到我的 phonegap 索引以尝试保存图像。
function onSuccess(imageURI)
window.imageResizer.storeImage(
function(data)
var image = document.getElementById('smallImage');
image.src = imageURI;
alert('got img')
, function (error)
alert("Error : \r\n" + error);
//console.log("Error : \r\n" + error);
, imageURI, filename :"test",imageDataType:ImageResizer.IMAGE_DATA_TYPE_URL ,format:'jpg',directory:"/DCIM/Camera"
);
已解决:logcat 出现错误 IMAGE_DATA_TYPE_URL is not defined
已解决:我收到一条错误消息,提示 null,名为 test.jpg 的黑色图像已放入相机文件夹中,但未显示在图库中(通过编辑 imageData ImageResizer.IMAGE_DATA_TYPE_URL 解决了这个问题,ImageResizer.IMAGE_DATA_TYPE_URL 无法正常工作仍然设为 base64 默认值在 java 文件中,只需将其永久编辑为 url 类型 XD 另一个是 uri 有错误,并将 file:/// 去掉,图像被保存,没有更多问题)
已解决:保存在与画廊相同的文件夹中,但除非您在文件管理器中重命名它(使用代码片段),否则看不到它
private void scanPhoto(String imageFileName)
Intent mediaScanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
File f = new File(imageFileName);
Uri contentUri = Uri.fromFile(f);
mediaScanIntent.setData(contentUri);
this.cordova.getActivity().sendBroadcast(mediaScanIntent);
问题:将其保存在与相机相同的目录中,但是在查看图库时,它显示在一个名为缓存的组中,我怎样才能使其成为图库中的应用程序名称而不是缓存
【问题讨论】:
【参考方案1】:我认为您无需寻找其他图像插件来调整大小。 phonegap 中的option camera.getPicture 会为您执行此操作。改变 quality,targetWidth,targetHeight 做你想做的事。
【讨论】:
好吧,我正在尝试调整大小并保存文件,因为图像调整器也有保存功能 @jhdj 如果我们要裁剪图像怎么办? @MuhammadRiyaz 你可以使用画布以上是关于phonegap 图像调整器插件来保存图像的主要内容,如果未能解决你的问题,请参考以下文章
Phonegap、AngularJs 和联系人插件:如何渲染联系人图像