【软通动力】HarmonyOS三方件开发指南(7)——compress组件 原创 精华
软通田可辉
发布于 2021-2-1 15:54
浏览
17收藏
1. 组件compress功能介绍
1.1. 组件介绍:
compress是一个轻量级图像压缩库。compress允许将大照片压缩成小尺寸的照片,图像质量损失非常小或可以忽略不计。
1.2. 手机模拟器上运行效果:
2. 组件compress使用方法
2.1. 添加依赖
将compress-debug.har复制到应用的entry\libs目录下即可(由于build.gradle中已经依赖的libs目录下的*.har,因此不需要再做修改)。
2.2. 设置布局
2.3. 图像压缩
核心类:Compressor
核心方法:
(1)自定义压缩:
参数:
context - 应用程序上下文
file - 待压缩图片抽象路径名
width - 压缩后宽度
height - 压缩后高度
quality - 图片压缩质量,范围0~100
结果:
返回压缩后图片抽象路径名。
异常:
发生I/O异常
(2)默认压缩:
参数:
context - 应用程序上下文
file - 待压缩图片抽象路径名
结果:
返回压缩后图片抽象路径名。
异常:
发生I/O异常
简单示例:
运行示例前需要在模拟器保存一张截图或使用相机功能照一张照片
3. 组件compress开发实现
3.1. 拷贝图片制临时目录
传入的图片路径拷贝临时文件到应用的临时目录。
3.2. 图片解码
对临时目录里的图片进行解码
3.3. 图片编码
按照开发人员设定的规则进行编码,生成新图片
项目源代码地址:https://github.com/isoftstone-dev/Compressor_Harmony
欢迎交流:HWIS-HOS@isoftstone.com
©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
已于2021-2-3 17:13:32修改
赞
20
收藏 17
回复
20
6
17
相关推荐
可以的,学习一下。
欢迎常来,后续还会有更多优质内容持续更新
请问,是否支持压缩网络图片?
网络图片无法直接压缩,需要先在本地保存才能进行压缩。
👍👍👍
讲解细致