全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Android Tiny集成图片压缩框架的使用

为了简化对图片压缩的调用,提供最简洁与合理的api压缩逻辑,对于压缩为Bitmap根据屏幕分辨率动态适配最佳大小,对于压缩为File优化底层libjpeg的压缩,整个图片压缩过程全在压缩线程池中异步压缩,结束后分发回UI线程。

支持的压缩类型

Tiny图片压缩框架支持的压缩数据源类型:

1、Bytes
2、File
3、Bitmap
4、Stream
5、Resource
6、Uri(network、file、content)

Tiny支持单个数据源压缩以及批量压缩,支持的压缩类型:

1、数据源—>压缩为Bitmap
2、数据源—>压缩为File
3、数据源—>压缩为File并返回压缩后的Bitmap
4、批量数据源—>批量压缩为Bitmap
5、批量数据源—>批量压缩为File
6、批量数据源—>批量压缩为File并返回压缩后Bitmap

压缩参数

Tiny.BitmapCompressOptions

Bitmap压缩参数可配置三个:

1、width
2、height
3、Bitmap.Config

如果不配置,Tiny内部会根据屏幕动态适配以及默认使用ARGB_8888

Tiny.FileCompressOptions

File压缩参数可配置四个:

1、quality-压缩质量,默认为76
2、isKeepSampling-是否保持原数据源图片的宽高
3、fileSize-压缩后文件大小
4、outfile-压缩后文件存储路径

如果不配置,Tiny内部会根据默认压缩质量进行压缩,压缩后文件默认存储在:ExternalStorage/Android/data/${packageName}/tiny/目录下

Tiny项目地址: https://github.com/tianyingzhong/Tiny

Tiny与微信朋友圈的压缩率比较

下面是使用Tiny图片压缩库进行压缩的效果对比示例:

图片信息 Tiny Wechat
6.66MB (3500x2156) 151KB (1280x788) 135KB (1280x789)
4.28MB (4160x3120) 219KB (1280x960) 195KB (1280x960)
2.60MB (4032x3024) 193KB (1280x960)) 173KB (1280x960)
372KB (500x500) 38.67KB (500x500) 34.05KB (500x500)
236KB (960x1280) 127KB (960x1280) 118KB (960x1280)

压缩为Bitmap

Tiny.BitmapCompressOptions options = new Tiny.BitmapCompressOptions();
Tiny.getInstance().source("").asBitmap().withOptions(options).compress(new BitmapCallback() {
  @Override
  public void callback(boolean isSuccess, Bitmap bitmap) {
    //return the compressed bitmap object
  }
});

压缩为File 

 Tiny.FileCompressOptions options = new Tiny.FileCompressOptions();
Tiny.getInstance().source("").asFile().withOptions(options).compress(new FileCallback() {
  @Override
  public void callback(boolean isSuccess, String outfile) {
    //return the compressed file path
  }
});

压缩为File并返回Bitmap

 Tiny.FileCompressOptions options = new Tiny.FileCompressOptions();
Tiny.getInstance().source("").asFile().withOptions(options).compress(new FileWithBitmapCallback() {
  @Override
  public void callback(boolean isSuccess, Bitmap bitmap, String outfile) {
    //return the compressed file path and bitmap object
  }
});

批量压缩为Bitmap

 Tiny.BitmapCompressOptions options = new Tiny.BitmapCompressOptions();
Tiny.getInstance().source("").batchAsBitmap().withOptions(options).batchCompress(new BitmapBatchCallback() {
  @Override
  public void callback(boolean isSuccess, Bitmap[] bitmaps) {
    //return the batch compressed bitmap object
  }
});

批量压缩为File

 Tiny.FileCompressOptions options = new Tiny.FileCompressOptions();
Tiny.getInstance().source("").batchAsFile().withOptions(options).batchCompress(new FileBatchCallback() {
  @Override
  public void callback(boolean isSuccess, String[] outfile) {
    //return the batch compressed file path
  }
});

批量压缩为File并返回Bitmap

 Tiny.FileCompressOptions options = new Tiny.FileCompressOptions();
Tiny.getInstance().source("").batchAsFile().withOptions(options).batchCompress(new FileWithBitmapBatchCallback() {
  @Override
  public void callback(boolean isSuccess, Bitmap[] bitmaps, String[] outfile) {
    //return the batch compressed file path and bitmap object
  }
});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# android  # 图片压缩框架  # Android图片压缩  # Android 基于Bitmap的四种图片压缩方式  # Android 高效图片压缩的实现  # Android开发之图片压缩实现方法分析  # Android整理好的图片压缩工具类  # Android LuBan与Compressor图片压缩方式  # android图片压缩工具类分享  # Android开发之图片压缩工具类完整实例  # Android图片压缩的实例详解  # Android图片压缩方法并压缩到指定大小  # Android三种常见的图片压缩方式  # 配以  # 大家多多  # 池中  # 默认为  # 压缩率  # 结束后  # 目录下  # https  # table  # tianyingzhong  # github 


相关文章: 油猴 教程,油猴搜脚本为什么会网页无法显示?  如何用虚拟主机快速搭建网站?详细步骤解析  制作旅游网站html,怎样注册旅游网站?  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  建站主机如何安装配置?新手必看操作指南  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  如何选择域名并搭建高效网站?  长沙企业网站制作哪家好,长沙水业集团官方网站?  建站主机空间推荐 高性价比配置与快速部署方案解析  建站之星后台管理系统如何操作?  南宁网站建设制作定制,南宁网站建设可以定制吗?  完全自定义免费建站平台:主题模板在线生成一站式服务  建站之星代理商如何保障技术支持与售后服务?  已有域名和空间,如何快速搭建网站?  如何零基础在云服务器搭建WordPress站点?  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  如何通过智能用户系统一键生成高效建站方案?  建站之星各版本价格是多少?  如何用景安虚拟主机手机版绑定域名建站?  如何破解联通资金短缺导致的基站建设难题?  代购小票制作网站有哪些,购物小票的简要说明?  佛山网站制作系统,佛山企业变更地址网上办理步骤?  专业网站制作服务公司,有哪些网站可以免费发布招聘信息?  建站之星如何开启自定义404页面避免用户流失?  如何制作一个表白网站视频,关于勇敢表白的小标题?  如何通过虚拟主机快速完成网站搭建?  建站VPS能否同时实现高效与安全翻墙?  如何在阿里云购买域名并搭建网站?  Bpmn 2.0的XML文件怎么画流程图  相册网站制作软件,图片上的网址怎么复制?  如何通过云梦建站系统实现SEO快速优化?  c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】  免费网站制作appp,免费制作app哪个平台好?  东莞专业制作网站的公司,东莞大学生网的网址是什么?  西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?  香港服务器部署网站为何提示未备案?  为什么Go需要go mod文件_Go go mod文件作用说明  教学网站制作软件,学习*后期制作的网站有哪些?  简单实现Android验证码  建站之星CMS建站配置指南:模板选择与SEO优化技巧  制作公司内部网站有哪些,内网如何建网站?  宁波免费建站如何选择可靠模板与平台?  专业公司网站制作公司,用什么语言做企业网站比较好?  唐山网站制作公司有哪些,唐山找工作哪个网站最靠谱?  小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  做企业网站制作流程,企业网站制作基本流程有哪些?  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  孙琪峥织梦建站教程如何优化数据库安全? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。