Android调用系统裁剪图片模糊问题
来源:互联网 发布:淘宝女内衣表模板 编辑:程序博客网 时间:2024/05/17 03:08
最近项目在选取图片是出现了裁剪后模糊的问题
xta Options Table for image/* crop:
附加选项数据类型描述cropString发送裁剪信号aspectXintX方向上的比例aspectYintY方向上的比例outputXint裁剪区的宽outputYint裁剪区的高scaleboolean是否保留比例return-databoolean是否将数据保留在Bitmap中返回dataParcelable相应的Bitmap数据circleCropString圆形裁剪区域?MediaStore.EXTRA_OUTPUT ("output")URI将URI指向相应的file:///...,详见代码示例// 开始return-data设置了true的话直接返回bitmap,可能会很占内存intent.putExtra("return-data", true);
这样返回的bitmap是还存在内存中的缩略图,所以很模糊,后来改为把剪切的图片保存起来不直接返回bitmap一切就OK了
private Uri imageUri;private static final String IMAGE_FILE_LOCATION = Constants.ALBUM_PATH+"/temp.jpg";imageUri = Uri.fromFile(new File(IMAGE_FILE_LOCATION));
/* * 剪切图片 */ private void crop(Uri uri) { // 裁剪图片意图 Intent intent = new Intent("com.android.camera.action.CROP"); intent.setDataAndType(uri, "image/*"); intent.putExtra("crop", "true"); // 裁剪框的比例,1.5:1 intent.putExtra("aspectX", 16); intent.putExtra("aspectY", 9); // 裁剪后输出图片的尺寸大小 intent.putExtra("outputX", 800); intent.putExtra("outputY", 450); // intent.putExtra("outputFormat", "JPEG");// 图片格式 //intent.putExtra("noFaceDetection", true);// 取消人脸识别 intent.putExtra("return-data", false); intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri); intent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString()); startActivityForResult(intent, SELECT_PIC_BY_CUT_PHOTO); }
@Override public void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode) { case SELECT_PIC_BY_CUT_PHOTO:// 从剪切图片返回的数据 if (resultCode == Activity.RESULT_OK) { if (data != null) { if (imageUri != null) { Bitmap bitmap = ImageUtils.decodeUriAsBitmap(getActivity(), imageUri); // 把解析到的位图显示出来 advanceDialog.setPic(bitmap); advanceDialog.dismissPicDialog(); String imageurl = Constants.ALBUM_PATH; saveMyBitmap(imageurl, bitmap); } } } break; } super.onActivityResult(requestCode, resultCode, data); }
private Bitmap decodeUriAsBitmap(Uri uri) { Bitmap bitmap = null; try { // 先通过getContentResolver方法获得一个ContentResolver实例, // 调用openInputStream(Uri)方法获得uri关联的数据流stream // 把上一步获得的数据流解析成为bitmap bitmap = BitmapFactory.decodeStream(getActivity().getContentResolver().openInputStream(uri)); } catch (FileNotFoundException e) { e.printStackTrace(); return null; } return bitmap; }
0 0
- Android调用系统裁剪图片模糊问题
- Android调用系统拍照裁剪图片模糊
- Android 调用系统图片裁剪(解决“无法加载。”问题)
- Android:调用系统图库/裁剪图片
- 调用Android系统相册并裁剪图片
- android图片选取与调用系统裁剪
- Android调用系统图库并裁剪图片
- Android调用系统, 任意比例裁剪图片
- Android调用系统图库并裁剪图片
- Android图片裁剪,合成(调用系统裁剪功能)
- [Android] 图片裁剪总结——调用系统裁剪
- hbuilder mui调用系统裁剪图片、头像裁剪-Android
- Android修炼之道——调用系统图片裁剪,图片过小问题
- Android调用系统裁剪
- android系统图片裁剪
- android系统裁剪图片
- 调用系统的裁剪功能裁剪图片
- 图片裁剪 调用系统裁剪intent
- ios9 字符串转UTF8 ,UTF8转字符串
- Xcode7中安装及使用Alcatraz来管理Xcode插件
- 获取图片某一点的rgb色值
- jsp九大内置对象详解
- python转C的内存泄露问题
- Android调用系统裁剪图片模糊问题
- android下的事件分发
- 常见算法:C语言求素数的问题
- android:persistent
- javaGUI
- sample questions
- Android中大小两种字体对齐 -- 实现上或者下对齐的解决方法
- 【Leetcode】Single Number III
- linux编程基础_07shell编程(其他命令)