注: 图片选择/拍照->裁剪->压缩 整个流程的操作已经串起到下面的库中

PicCrop

对ucrop的封装工具类,让其使用更加快捷.

在ucrop 2.2.0(compile 'com.yalantis:ucrop:2.2.0')基础上封装,

如果以后ucrop以后升级,那么本工具类只需要改CropConfig里字段就可以.无需更改api.

甚至,切换其他图片裁剪框架,也是改方法内部实现即可,不用更换各处已调用的api.

说明

uCrop主项目地址:

效果图(标题栏和状态栏颜色均可自定义)

通用裁剪界面

头像裁剪框

封装的api

public static void cropFromGallery(Activity context)

public static void cropFromCamera(Activity context)

//从图库中选头像

public static void cropAvatarFromGallery(Activity context)

public static void cropAvatarFromCamera(Activity context)

//需要自定义设置时使用

public static void cropFromGallery(Activity context,CropConfig config,int type)

public static void cropFromCamera(Activity context,CropConfig config,int type)

public static void onActivityResult( int requestCode, int resultCode, Intent data,Activity context, CropHandler cropHandler)

//回调接口

public interface CropHandler {

void handleCropResult(Uri uri,int tag);

void handleCropError(Intent data);

}

使用

拷贝本工具类并添加gradle:

compile 'com.yalantis:ucrop:2.2.0'

若主项目有更新,请自行更新.

代码里

点击选择图片或拍照的地方调用cropFromxxx,

裁剪头像用cropAvatarFromxxx

在activity的onActivityResult里调用

handleResult(this,cropHandler,requestCode,resultCode,data);

注意无需预先对intent做为空的判断.

tag字段用于同一个页面多个地方接收裁剪图片的区分,如无需要,不必设置.

混淆

-dontwarn com.yalantis.ucrop**

-keep class com.yalantis.ucrop** { *; }

-keep interface com.yalantis.ucrop** { *; }

相关

git 裁切_GitHub - taiyang0725/PicCrop: 图片裁剪的工具类,基于uCrop封装,使用十分便捷...相关推荐

  1. python图片裁剪软件_python 实现图片裁剪小工具

    实现:tkinter 画布上显示图片,按下鼠标左键并且移动,实现截图 # -*- encoding=utf-8 -*- import os import tkinter as tk from PIL ...

  2. Java图片处理 - 创建工具类

    Java图片处理 - 创建工具类 Java原生代码实现工具类 Java原生代码实现使用jdk内部的GIFImageReader.GIFImageWriter等类,maven在编译的时候会提示这是sun ...

  3. java 图片合成 工具类_Java实现的图片上传工具类完整实例

    本文实例讲述了Java实现的图片上传工具类.分享给大家供大家参考,具体如下: package com.gcloud.common; import javax.imageio.ImageIO; impo ...

  4. JAVA工具类(13)---图片上传工具类

    package com.gcloud.common;import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import ...

  5. 使用JCrop进行图片裁剪,裁剪js说明,裁剪预览,裁剪上传,裁剪设计的图片处理的工具类和代码

     1.要想制作图片裁剪功能,可以使用网上的裁剪工具JCrop,网址是:https://github.com/tapmodo/Jcrop/ 案例效果如下: 2.引入JCrop的js代码,具体要引入那 ...

  6. android 图片裁剪库,(译)uCrop介绍 —— 我们自己的Android图片裁剪库

    我们在 Yalantis 开发了许多不同的 Android 应用,经验告诉我们,几乎在所有的应用中,都需要图片裁剪的功能.图片裁剪的用途很广,从简单的用户头像调整到图片的比例裁剪.灵活变换等各种复杂的 ...

  7. 图片裁剪 cropper.js 上传组件封装 vue

    //HTML cropper.js 文档地址: https://github.com/fengyuanchen/cropperjs/blob/master/README.md <template ...

  8. Java之~ 上传 图片压缩,阿里图片压缩,图片旋转方法工具类

    需要的jar jai_codec-1.1.3.jar,jai_core-1.1.3.jar,simpleimage-1.2.0.jar,metadata-extractor-2.3.1.jar(旋转时 ...

  9. 图片上传工具 java_图片上传工具类-fileUtil

    图片上传的工具类:生成缩略图,文件流转换. 可与struts2集成使用 import java.awt.Color; import java.awt.Graphics2D; import java.a ...

最新文章

  1. myeclipse2014新感悟
  2. 编程模式如何结束未响应的程序
  3. mysql主从不同步 tar_Mysql主从不同步问题处理案例
  4. 中国建筑行业2020年度回顾及未来展望
  5. yocto添加登录用户和密码
  6. 基础佛学知识-间歇博客
  7. TStrings的一些技巧(转)
  8. 使用 Java API 操作 HBase
  9. ie8下a标签中的图片出现边框
  10. 微信小程序 腾讯云ocr 身份证识别
  11. 从Q_Learning看强化学习
  12. 高等数学上册 第一讲 极限与连续(1)
  13. ps考证是电脑改卷吗
  14. 顶级的 18 款开源低代码开发平台
  15. WPF 基础到企业应用系列4——WPF千年轮回
  16. RecyclerView多种布局封装优化(雷惊风)
  17. Javascript 产生随机数——服从均匀分布随机数、服从正态分布(高斯分布)随机数、服从柯西分布随机数
  18. python 工程进度计划_从零开始的项目实战(7)——项目进度述职报告
  19. Django Rest Framework框架
  20. SOUI总结之常用功能

热门文章

  1. 加码 2000 亿新基建还不够,阿里云再放话:今年招 5000 人!
  2. 行业观察:拐点已至!抛弃传统数据库,乘云而上!
  3. 阿里云加码 2000 亿,再“出征”新基建!
  4. 75.58 亿美元成交!美国最大规模 5G 毫米波频谱拍卖
  5. 没事爱在线上制造故障?这位程序媛有话说
  6. 5G + 云网融合,加速万物互联
  7. 如何彻底搞懂面向 Web 开发者的正则表达式?
  8. AI 假冒老板骗取 173 万!
  9. 从 0 到 1 | 手把手教你如何使用哈工大 NLP 工具 —— PyLTP!
  10. AI 算法在 FPGA 芯片上还有这种操作?