Bitmap常见操作(一.理论)——压缩图片,缩略图

简介: //利用BitmapFactory生成Bitmap //注意该方法只是生成了Bitmap,所以返回值都是一个Bitmap //并没有涉及到对于Bitmap对象的操作,比如将其旋转,压缩 //以下为常用的四种方式: //1 依据文件路径生成...

//利用BitmapFactory生成Bitmap
//注意该方法只是生成了Bitmap,所以返回值都是一个Bitmap
//并没有涉及到对于Bitmap对象的操作,比如将其旋转,压缩
//以下为常用的四种方式:
//1 依据文件路径生成Bitmap
//该方法也是获取缩略图的方法之一
//获取缩略图的另外一种方法是直接调用类方法
//重点是传入参数opts
//ThumbnailUtils.extractThumbnail();
//可以这么理解:既然是得到缩率图,其实也就是生成一个
//新的Bitmap,所以当然该调用BitmapFactory.decodeFile()方法.
Bitmap bitmap1=BitmapFactory.decodeFile(pathName, opts);
//2 从本地资源中生成Bitmap
Bitmap bitmap2=BitmapFactory.decodeResource(res, id);
//3 从输入流中生成Bitmap
Bitmap bitmap3=BitmapFactory.decodeStream(inputStream);
//4 从字节数组中生成Bitmap
Bitmap bitmap4=BitmapFactory.decodeByteArray(data, offset, length);

//生成Bitmap后对于该Bitmap的操作小结如下:
//1 压缩Bitmap的宽和高,将Bitmap旋转和倾斜
//  等操作调用的都是类方法Bitmap.createBitmap()方法.其中matrix参数很重要
Bitmap bitmap5=Bitmap.createBitmap(rawBitmap, x, y, width, height, matrix, filter);
//2 保存Bitmap到文件.调用的是Bitmap的对象方法
bitmap5.compress(format, quality, os);

相关文章
[笔记]音视频学习之SDL篇《五》裁剪图片成子图片(裁剪精灵表)
[笔记]音视频学习之SDL篇《五》裁剪图片成子图片(裁剪精灵表)
|
7月前
|
iOS开发 Perl
UITableView的单元格加载通过SDWebImage下载的超大尺寸图片崩溃问题及解决方案
UITableView的单元格加载通过SDWebImage下载的超大尺寸图片崩溃问题及解决方案
57 2
|
人工智能
将 JPEG 和 PNG 位图转换为 SVG 矢量图,可无限放大
将 JPEG 和 PNG 位图转换为 SVG 矢量图,可无限放大
334 0
|
JavaScript 前端开发
图片转base64、判断图片大小、图片压缩、图片上传
文章主要介绍 `js` 实现压缩上传图片转base64,其他的框架(如React、Vue、Angular)也可借此参考。**这个方法真实可用,已在实际项目中运行**。
347 0
|
计算机视觉
【图片操作】生成动态图片
动态图片我们使用的还是比较频繁的,平时的表情包有很多动图。今天我们要做的就是自己制作动态图片,其实就是将视频转换成动图,操作起来非常简单。下面我们就来看看如何实现吧。
589 0