1、依赖引入:

compile 'com.edmodo:cropper:1.0.1'

2、布局引入:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="com.example.ceshi.allworkdemo.MainActivity"><com.edmodo.cropper.CropImageViewxmlns:custom="http://schemas.android.com/apk/res-auto"android:id="@+id/CropImageView"android:layout_width="match_parent"android:layout_height="match_parent"android:layout_above="@+id/imageView"android:layout_centerHorizontal="true"android:background="#ffffff"/><ImageViewandroid:id="@+id/imageView"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_above="@+id/lay"android:layout_centerHorizontal="true"/><LinearLayoutandroid:id="@+id/lay"android:orientation="horizontal"android:layout_alignParentBottom="true"android:layout_width="match_parent"android:layout_height="50dp"><TextViewandroid:id="@+id/tet_11"android:layout_weight="1"android:gravity="center"android:textColor="#333333"android:textSize="15sp"android:text="1:1"android:layout_width="wrap_content"android:layout_height="match_parent"/><TextViewandroid:id="@+id/tet_43"android:layout_weight="1"android:gravity="center"android:textColor="#333333"android:textSize="15sp"android:text="4:3"android:layout_width="wrap_content"android:layout_height="match_parent"/><TextViewandroid:id="@+id/tet_34"android:layout_weight="1"android:gravity="center"android:textColor="#333333"android:textSize="15sp"android:text="3:4"android:layout_width="wrap_content"android:layout_height="match_parent"/><TextViewandroid:id="@+id/tet_ok"android:layout_weight="1"android:gravity="center"android:textColor="#333333"android:textSize="15sp"android:text="裁剪"android:layout_width="wrap_content"android:layout_height="match_parent"/></LinearLayout></RelativeLayout>

3、主要代码:

 mCropImageView.setImageBitmap(getBitmap(R.drawable.bg));//为了兼容小图片,必须在代码中加载图片mCropImageView.setFixedAspectRatio(true);//设置允许按比例截图,如果不设置就是默认的任意大小截图mCropImageView.setAspectRatio(1, 1);//设置比例为一比一
//        mCropImageView.setGuidelines(CropImageView.ON);//设置显示网格的时机,默认为on_touch
/*** @param resId* @return 如果图片太小,那么就拉伸*/
public Bitmap getBitmap(int resId) {WindowManager wm = (WindowManager) getBaseContext().getSystemService(Context.WINDOW_SERVICE);int width = wm.getDefaultDisplay().getWidth();Bitmap bitmap= BitmapFactory.decodeResource(getResources(), resId);float scaleWidth = 1,scaleHeight = 1;if(bitmap.getWidth() < width) {scaleWidth = width / bitmap.getWidth();scaleHeight = scaleWidth;}Matrix matrix = new Matrix();matrix.postScale(scaleWidth, scaleHeight);bitmap = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(),bitmap.getHeight(), matrix, true);return bitmap;
}
Bitmap bitmap = mCropImageView.getCroppedImage();//得到裁剪好的图片
ImageView croppedImageView = (ImageView) findViewById(R.id.imageView);
croppedImageView.setImageBitmap(bitmap);//设置到imageview中

4、效果展示:

按比例裁剪图片,1:1、3:4、4:3为例,比例可以任意设置相关推荐

  1. android 自定义图片裁剪,android 自定义比例裁剪图片(拍照 相册)方式 自定义比例...

    先说下我这个有啥好处 主要是能够自定义设置裁剪图片的比例.比如 :今天产品 给你说裁剪 成16:9 的图片. 你做好了 OK 明天 产品又和你说 裁剪成10:7 的图片 ,你是不是要吐血, 我这里只要 ...

  2. python 等比例裁剪图片

    使用场景: 工作中,比如办理社保卡,或者办理员工卡等,我们会提供证件照片,往往我们提供的证件照片都不符合要求,这个时候就需要对照片进行裁剪,此时我们会去印刷打印店花个几元钱让店主帮忙裁剪,这个时候我们 ...

  3. php 按比例裁剪图片,自定义裁剪图片大小,按照一定比例裁剪图片的软件

    在网上下载图片后发现,图片有想要留住的部分,但又有不想留的部分,想马赛克掉不喜欢的区域但却又影响美观,这时候只能通过照片裁剪功能将不想留住的区域裁剪掉.在这里小编推荐为你一款照片裁剪工具,该工具可以自 ...

  4. js 裁剪图片压缩并且上传 图片

    今天接到一个比较懒的后台的要求:后台要求在裁剪图片的同时,根据文件大小来按不同比例压缩图片. 页面代码 <!--** * *----------Created by 黄伟峰 on 2018/6/ ...

  5. Python Opencv等比例缩放图片

    Python Opencv等比例缩放图片 前言 前提条件 相关介绍 实验环境 等比例缩放图片 代码实现 输出结果 前言 本文是个人使用Python Opencv处理图片的笔记,由于水平有限,难免出现错 ...

  6. css图片等比例裁剪

    需求: 图片的宽高是不固定的,但是外部盒子是有固定大小的. 图片的宽度和盒子保持一致,并且是水平居中显示,即两边是裁剪的 图片的高度是由盒子宽度控制的,等比例缩放,多余的被裁减掉 原图: 代码: &l ...

  7. python等比例压缩图片_python(PIL)图像处理(等比例压缩、裁剪压缩) 缩略(水印)图详解...

    #coding:utf-8 ''' python图片处理 @author:fc_lamp @blog:http://fc-lamp.blog.163.com/ ''' import Image as ...

  8. ios 裁剪框大小_iOS自定义裁剪图片比例尺寸,图片自动旋转解决办法

    最近因做直播项目需要,要求上传直播的一个Cover页需要自定义裁剪图片的尺寸及比例,因为imagePicker只有一个imagePicker.allowsEditing这么个属性,但是这个属性设置之后 ...

  9. php批量裁剪图片,怎么批量裁剪图片 按照一定的比例快速裁剪多张照片的方法,自定义裁剪图片大小...

    在日常工作学习或休闲娱乐中,都会遇到要处理图片的时候,比方说对拍摄的照片进行裁剪操作,将拍摄进去的不需要的部分裁剪掉.对于一两张或几张图片裁剪的话逐个操作也不会太耗时,然而如果有一系列的十几张甚至几十 ...

最新文章

  1. 微信小程序发送模板消息,php发送模板消息
  2. 优秀开发者和差的开发者之间区别
  3. 独家 | 盘点9个适用所有学科的R数据可视化包(附链接)
  4. ML之Hog_HammingDistance:基于Hog特征提取“RGB”图像的768个值的单向vector利用汉明距离算法进行判别
  5. boost::foreach模块一些杂项的测试程序
  6. OpenGL绘制一个三角形
  7. 要么干,要么滚,千万别混
  8. Java开发中数据类型之间的转换
  9. Git 切换提交历史节点
  10. 小米选择了总是打开方式_小米不计成本开启让利:70英寸4K大屏电视2999,K30 5G首卖...
  11. es中的高效文件读取方式
  12. 图片剪裁控件——ClipImageView
  13. 【uniapp公众号分销商城从0到1】手机验证注册登录(04)
  14. 计算机上表格怎么算减法,表格里的减法怎么弄/在excle如何用函数进行加减法
  15. PHP工程师是个让我很心疼的职业
  16. FPGA实现UDP传输视频,提供2套verilog工程源码和接收显示上位机程序
  17. JS基础-一个完美的递归函数
  18. 多元线性回归和正规方程解
  19. 大功率mos管(功率mos管)的五种损坏原因分析,新手必读
  20. jenkins+git+maven+docker持续集成部署

热门文章

  1. 随机生成6位随机数(字母+数字)
  2. pl/sql sql语句
  3. oracle bom展开 sql,展开BOM并使用最终用量的算法(转载)
  4. 王校长html源码,「王校长weib」百家号Lite
  5. 一登录显示服务器异常怎么办,柠檬云登录时显示服务器异常
  6. SqlServer 2019/2022 安装教程(图文)
  7. android手机导出联系人,OPPO Reno如何批量导入/导出联系人?
  8. Eureka安全认证
  9. Office Web Apps and SkyDrive
  10. 迅为IMX8MM开发板Yocto系统使用Gstarwmra(一)