图片裁剪之CropImageViewdd

Posted FightSeeker

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图片裁剪之CropImageViewdd相关的知识,希望对你有一定的参考价值。

当我设置头像的时候,选择的图片未必适合,所以这个时候需要把图片裁剪一下。下面分两种来简单的介绍一下图片裁剪的方法。

一:调用系统的裁剪api,来完成裁剪

	/**
	 *图片剪切 
	 */
	public static void cropImage(Activity mActivity,Uri uri)
		Intent intent = new Intent("com.android.camera.action.CROP");
		intent.setDataAndType(uri, "image/*");
		intent.putExtra("crop", "true");
		// 裁剪框的比例,1:1
		intent.putExtra("aspectX", 1);
		intent.putExtra("aspectY", 1);
		// 裁剪后输出图片的尺寸大小
		intent.putExtra("outputX", 216);
		intent.putExtra("outputY", 216);
		intent.putExtra("outputFormat", "JPEG");// 图片格式
		intent.putExtra("noFaceDetection", true);// 取消人脸识别
		intent.putExtra("return-data", true);
		// 开启一个带有返回值的Activity
		mActivity.startActivityForResult(intent, SelfCenterActivity.REQUEST_CODE_IMAGE_CROP);
	
	
二:分享一个第三方的图片裁剪库: Android-Image-Cropper
1.Include the library

compile 'com.theartofdev.edmodo:android-image-cropper:2.0.+'
2.在layout中布置CropImageView

    <com.weight.cropImages.CropImageView
        android:id="@+id/cropImageView"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        app:cropAutoZoomEnabled="false"
        app:cropFixAspectRatio="true"/>
3.设置要裁剪的image

cropImageView.setImageBitmap(bitmap);
or
cropImageView.setImageUriAsync(uri);
4.获取裁剪的图片

Bitmap cropped = cropImageView.getCroppedImage();
// or (must subscribe to async event using cropImageView.setOnGetCroppedImageCompleteListener(listener))
cropImageView.getCroppedImageAsync(CropImageView.CropShape.RECTANGLE, 400, 400);
5.获取源码

(1)源码1:CSDN下载地址

(2)源码2:Git下载地址





以上是关于图片裁剪之CropImageViewdd的主要内容,如果未能解决你的问题,请参考以下文章

ps如何裁剪图片尺寸大小?

PHP 图片操作(按照指定尺寸压缩,按照比例裁剪)

uniapp微信小程序图片裁剪插件,支持自定义尺寸定点等比例缩放拖动图片翻转剪切圆形/圆角图片定制样式

cropper.js图片裁剪

Android 图片选择(ImageSelector) (拍照,裁剪,压缩,查看)

iOS8中怎样旋转和裁剪相片