按比例裁剪图片,1:1、3:4、4:3为例,比例可以任意设置
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为例,比例可以任意设置相关推荐
- android 自定义图片裁剪,android 自定义比例裁剪图片(拍照 相册)方式 自定义比例...
先说下我这个有啥好处 主要是能够自定义设置裁剪图片的比例.比如 :今天产品 给你说裁剪 成16:9 的图片. 你做好了 OK 明天 产品又和你说 裁剪成10:7 的图片 ,你是不是要吐血, 我这里只要 ...
- python 等比例裁剪图片
使用场景: 工作中,比如办理社保卡,或者办理员工卡等,我们会提供证件照片,往往我们提供的证件照片都不符合要求,这个时候就需要对照片进行裁剪,此时我们会去印刷打印店花个几元钱让店主帮忙裁剪,这个时候我们 ...
- php 按比例裁剪图片,自定义裁剪图片大小,按照一定比例裁剪图片的软件
在网上下载图片后发现,图片有想要留住的部分,但又有不想留的部分,想马赛克掉不喜欢的区域但却又影响美观,这时候只能通过照片裁剪功能将不想留住的区域裁剪掉.在这里小编推荐为你一款照片裁剪工具,该工具可以自 ...
- js 裁剪图片压缩并且上传 图片
今天接到一个比较懒的后台的要求:后台要求在裁剪图片的同时,根据文件大小来按不同比例压缩图片. 页面代码 <!--** * *----------Created by 黄伟峰 on 2018/6/ ...
- Python Opencv等比例缩放图片
Python Opencv等比例缩放图片 前言 前提条件 相关介绍 实验环境 等比例缩放图片 代码实现 输出结果 前言 本文是个人使用Python Opencv处理图片的笔记,由于水平有限,难免出现错 ...
- css图片等比例裁剪
需求: 图片的宽高是不固定的,但是外部盒子是有固定大小的. 图片的宽度和盒子保持一致,并且是水平居中显示,即两边是裁剪的 图片的高度是由盒子宽度控制的,等比例缩放,多余的被裁减掉 原图: 代码: &l ...
- python等比例压缩图片_python(PIL)图像处理(等比例压缩、裁剪压缩) 缩略(水印)图详解...
#coding:utf-8 ''' python图片处理 @author:fc_lamp @blog:http://fc-lamp.blog.163.com/ ''' import Image as ...
- ios 裁剪框大小_iOS自定义裁剪图片比例尺寸,图片自动旋转解决办法
最近因做直播项目需要,要求上传直播的一个Cover页需要自定义裁剪图片的尺寸及比例,因为imagePicker只有一个imagePicker.allowsEditing这么个属性,但是这个属性设置之后 ...
- php批量裁剪图片,怎么批量裁剪图片 按照一定的比例快速裁剪多张照片的方法,自定义裁剪图片大小...
在日常工作学习或休闲娱乐中,都会遇到要处理图片的时候,比方说对拍摄的照片进行裁剪操作,将拍摄进去的不需要的部分裁剪掉.对于一两张或几张图片裁剪的话逐个操作也不会太耗时,然而如果有一系列的十几张甚至几十 ...
最新文章
- 微信小程序发送模板消息,php发送模板消息
- 优秀开发者和差的开发者之间区别
- 独家 | 盘点9个适用所有学科的R数据可视化包(附链接)
- ML之Hog_HammingDistance:基于Hog特征提取“RGB”图像的768个值的单向vector利用汉明距离算法进行判别
- boost::foreach模块一些杂项的测试程序
- OpenGL绘制一个三角形
- 要么干,要么滚,千万别混
- Java开发中数据类型之间的转换
- Git 切换提交历史节点
- 小米选择了总是打开方式_小米不计成本开启让利:70英寸4K大屏电视2999,K30 5G首卖...
- es中的高效文件读取方式
- 图片剪裁控件——ClipImageView
- 【uniapp公众号分销商城从0到1】手机验证注册登录(04)
- 计算机上表格怎么算减法,表格里的减法怎么弄/在excle如何用函数进行加减法
- PHP工程师是个让我很心疼的职业
- FPGA实现UDP传输视频,提供2套verilog工程源码和接收显示上位机程序
- JS基础-一个完美的递归函数
- 多元线性回归和正规方程解
- 大功率mos管(功率mos管)的五种损坏原因分析,新手必读
- jenkins+git+maven+docker持续集成部署
热门文章
- 随机生成6位随机数(字母+数字)
- pl/sql sql语句
- oracle bom展开 sql,展开BOM并使用最终用量的算法(转载)
- 王校长html源码,「王校长weib」百家号Lite
- 一登录显示服务器异常怎么办,柠檬云登录时显示服务器异常
- SqlServer 2019/2022 安装教程(图文)
- android手机导出联系人,OPPO Reno如何批量导入/导出联系人?
- Eureka安全认证
- Office Web Apps and SkyDrive
- 迅为IMX8MM开发板Yocto系统使用Gstarwmra(一)