图片

常见的图片存储的格式有bmp、jpg、png、tif、gif、pcx、tga、exif、fpx、

svg、psd、cdr、pcd、dxf、ufo、eps、ai、raw、WMF、webp等等。

其中JPEG(JPG)、PNG、WebP、BMP、GIF在Android平台得到支持,

项目中最常用的JPEG(JPG)、PNG、WebP三种。

在Android bitmap源码中有体现,源码如下

Caption

JPEG

  • 有损压缩格式
  • 文件后辍名为".jpg"或".jpeg"
  • 只支持RGB三个通道的颜色
  • 压缩比率通常在10:1到40:1之间

PNG

  • 无损压缩格式
  • 支持ARGB三个通道的颜色比JPEG多透明通道
  • 无损压缩并且比JPEG多支持一个透明通道所以图片要比JPEG大上许多

WebP

  • WebP既支持有损压缩也支持无损压缩
  • 支持ARGB全通道
  • 支持动图
  • 在质量相同的情况下,WebP格式图像的体积要比JPEG格式图像小40%
  • 体积较小可以大幅度提升APP体验流程度、减轻服务器压力

总结:在选取图片格式时优先选用WebP,其次如果需要透明通道PNG格式,不需要透明通道使用JPEG格式。

图片配置属性

可在Bitmap.Config见到如下6种配置:

他们的命名规则AAAA_BBBB,其中AAAA表示其支持的通道,BBBB表示一像素占用的大小。如:

ALPHA_8:只支持透明通道,每个像素占用1字节。

每个像素存储为单个半透明(alpha)通道。例如,这对于有效地存储掩模非常有用。不存储颜色信息。使用此配置,每个像素需要1个字节的内存。

RGB_565:支持RGB三个通道,每个像素占用5+6+5,16位,2字节。

ARGB_4444:已弃用。此字段在API级别13中已弃用。由于此配置质量较差,建议使用此字段ARGB_8888

ARGB_8888:支持ARGB四个通道,每个像素占用8+8+8+8,32位,4字节。

RGBA_F16:这个比较特殊,官方解释是每个像素存储在8个字节上。每个通道(RGB和半透明的alpha)存储为a half-precision floating point value。此配置特别适用于宽色域和HDR内容。

Android之图片相关推荐

  1. android获取图片缩略图,Android系获取图片和视频的缩略图

    获取手机里视频缩略图: public static Bitmap getVideoThumbnail(ContentResolver cr,Uri uri) { Bitmap bitmap = nul ...

  2. android 加载进度,Android实现图片加载进度提示

    本文实例为大家分享了Android实现图片加载进度提示的具体代码,供大家参考,具体内容如下 先上图: 实现原理: 第一个控件的实现原理是重写ImageView的onDraw()方法,利用Canvas的 ...

  3. Android大图片裁剪终极解决方案 原理分析

    约几个月前,我正为公司的APP在Android手机上实现拍照截图而烦恼不已. 上网搜索,确实有不少的例子,大多都是抄来抄去,而且水平多半处于demo的样子,可以用来讲解知识点,但是一碰到实际项目,就漏 ...

  4. 自定义Android带图片的按钮

    自定义Android带图片的按钮 前言 现在移动设备的按钮设计讲究大图标小文字,希望用户只要一看到图标便能知道这个按钮是干嘛的,但又要有必要的文字提示,最常见的就数搜索按钮了,上面一个大大的放大镜图标 ...

  5. android 圆角图片

    今天,简单讲讲Android圆角图片的使用. 最近,感觉好忙,换了工作,新的APP要重新阅读,对我是一个考验.所有这段时间的博客可能不会很详细了,因为我比较忙,而且还有很多内容要写.这篇写完后,我会写 ...

  6. android Matrix图片变换处理

    今天,讲讲android  Matrix图片变换处理的内容. Matrix 对于一个图片变换的处理,需要Matrix类的支持,它位于"android.graphics.Matrix&qu ...

  7. android 分享图片和视频

    今天,简单讲讲如何调用手机的分享功能进行分享. 目前实现一键分享功能的方式有两种: 1.需要集成第三方官方SDK包,在获得官方授权后调用其API来完成一键分享功能,例如使用友盟分享等     优点:无 ...

  8. android 从图片获取二维码

    之前的博客我记得讲过关于扫描二维码的内容,昨天,组长让我不仅可以扫描获取二维码,还可以通过图片获取里面的二维码.比如别人拍了一张二维码的照片,发送给你,app应该可以获取图片的二维码. 自己在网上查了 ...

  9. Android Glide图片加载框架(四)回调与监听

    文章目录 Android Glide图片加载框架系列文章 Android Glide图片加载框架(一)基本用法 Android Glide图片加载框架(二)源码解析之with() Android Gl ...

  10. Android Glide图片加载框架(三)缓存机制

    文章目录 一.缓存简介 二.缓存用法 内存缓存方式 磁盘缓存方式 三.缓存KEY 四.内存缓存 内存缓存流程 五.磁盘缓存 磁盘缓存流程 Android Glide图片加载框架系列文章 Android ...

最新文章

  1. 解决ubuntu的chkconfig[/sbin/insserv 无法找到路径问题]
  2. C#实现javascript的escape
  3. spring suite tool 添加namespace时只有bean一个
  4. what should we learn from Magnetite?
  5. jenkins-cli命令使用总结
  6. C++实现AOE网中的关键路径算法(邻接表存储)
  7. leetcode557. 反转字符串中的单词 III
  8. 【2016年第5期】跨社交媒体网络大数据下的用户建模
  9. 华为服务器存储系列,华为 服务器 存储相关资料(示例代码)
  10. a good website to test OTP
  11. Codeforces Round #342 (Div. 2) D. Finals in arithmetic(想法题/构造题)
  12. ubuntu安装之后需要做什么
  13. unity 走马灯packageManager
  14. Sampler 半小时快速搭建PostgreSQL简易监控
  15. 面试季,覆盖70%-80%的面经基础题(java及安卓)-------网络篇
  16. Python人脸识别项目-人脸识别-获取人脸图片
  17. FreeRDP的安装方法
  18. Elasticsearch的安装,以及Springboot整合Elasticsearch
  19. linux bootrom ftp,AR路由器通过BootROM FTP方式升级系统文件的示例
  20. 从Redis+Lua到Goroutine,日均10亿次的股票行情计算实践

热门文章

  1. 从网线中分2线 做电话线
  2. [计算机视觉] 手把手教你如何生成高清的AprilTag
  3. ubuntu安装SCIP,并在pyomo中调用
  4. c语言双精度小数点后取几位_c语言中怎么保留小数2位
  5. 東方天空璋 1.00a 修改器 By:美夜赤月
  6. 深入浅出pytorch笔记——第三章,第四章
  7. 法律不能使人人平等,但是在法律面前人人是平等的.
  8. 视频云技术系列 - 5G 700MHz建设方案及产业链
  9. Effie for Mac(简约的跨平台写作软件)
  10. 8259 中断控制实验