选择图片并裁剪

String path = Environment.getExternalStorageDirectory().getAbsoluteFile() + "/ss.png";
File f = new File(path);
if (!f.exists()) {
	try {
		f.createNewFile();
	} catch (IOException e) {
		e.printStackTrace();
	}
}
Uri img = Uri.fromFile(f);
Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null);
intent.setType("image/*");
intent.putExtra("crop", "true");
intent.putExtra("aspectX", 1);// 裁剪框比例
intent.putExtra("aspectY", 1);
intent.putExtra("outputX", 80);// 输出图片大小
intent.putExtra("outputY", 80);
intent.putExtra("scale", true);// 如果选择的图小于裁剪大小则进行放大
intent.putExtra("scaleUpIfNeeded", true);// 如果选择的图小于裁剪大小则进行放大
intent.putExtra("return-data", true);// 是否输出bitmap
intent.putExtra(MediaStore.EXTRA_OUTPUT, img);// 需要直接输出到文件的URI
intent.putExtra("outputFormat", Bitmap.CompressFormat.PNG.toString());// 输出格式
startActivityForResult(intent, 1);
// 大图可以考虑直接写入文件而不返回bitmap
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
	super.onActivityResult(requestCode, resultCode, data);
	Bitmap bmp = data.getParcelableExtra("data");
	iv.setImageBitmap(bmp);
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

你可能感兴趣的:(选择图片并裁剪)