
回复
本文原创发布在华为开发者社区。
本示例基于effectKit能力实现给图片添加不同滤镜,一键还原图片以及保存图片的功能。
应用需要在entry\src\main\ets\entryability\EntryAbility.ts中做如下配置请求用户开启图片本地读写权限。
通过调用effectKit接口的Filter方法,实现为图片添加自定义的粉色滤镜,灰度滤镜以及高亮滤镜。核心代码如下,源码参考FilterUtil.ets
调用image.createImageSource接口通过传入的文件描述符来创建图片源实例,创造PixelMap来写入未添加滤镜的图片数据,点击恢复按钮时,替换图片数据,从而得到未添加滤镜的图片。核心代码如下,源码参考DecodeUtil.ets