专栏首页flutter开发中的点滴积累Flutter图片添加水印功能,Flutter保存Widget为图片
原创

Flutter图片添加水印功能,Flutter保存Widget为图片

题记

—— 执剑天涯,从你的点滴积累开始,所及之处,必精益求精,即是折腾每一天。

重要消息


添加水印,两种实现思路,一种是将图片与水印解码,然后混编再编码,另一种是通过Widget的方式合成。

在这里采用的实现思路是使用层叠布局Stack加载图片以及水印部分,水印部分可能是一个现成的图片也可能是一个文字等其他样式的组件,然后将这个Stack使用RepaintBoundary组件包裹起来,然后通过Widget生成图片的功能从而达到实现保存图片为水印效果。

          ///第一步 通过globalkey将Widget保存为ui.Image
          ui.Image _image = await ImageLoaderUtils.imageLoader
              .getImageFromWidget(_globalKey);

          ///第二步 异步将这张图片保存在手机内部存储目录下
          String localImagePath =  await ImageUtils.imageUtils
              .saveImageByUIImage(_image, isEncode: false);

ImageLoaderUtils与ImageUtils在这里

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Flutter中Widget 、Element、RenderObject角色深入分析

    在 Flutter 中通过构建一系列的 Widget就可建立起一个应用,一系列的 Widget 通过一写的结构排列,构成 Widgets 树,类似 HTML 中...

    早起的年轻人
  • Flutter中ListView加载图片数据的优化

    在使用ListView懒加载模式时,当ListView的Item中有图片信息时,在快速滚动过程中会大量的浪费流量与内存,甚至会造成在滚动过程中页面的卡顿效果。

    早起的年轻人
  • Flutter中State深入分析理解

    当一个 Widget 被挂载到 Widgets 树上时,当前的StatefulWidget中通过Widget.createElement方法来创建Element...

    早起的年轻人
  • 【玩转腾讯云】腾讯云对象存储COS + 数据万象CI = 完善的图片解决方案

    在日常开发当中,我们必然会遇到一些图片存储问题,例如用户头像、聊天发生的图片等,而这些图片资源存储是个问题,普遍做法都是直接落在服务器上进行存储,而我推荐的是图...

    沈唁
  • JavaWeb|认识表达式语言(EL)

    EL的全名为Experience Language,原本是JSTL 1.0为方便存取数据所自定义的语言,后来成为JSP标准的一部分,如今EL已经是一项成熟、标准...

    算法与编程之美
  • 单向循环链表解决约瑟夫问题

    shengjk1
  • logo制作 技术篇-在线logo制作网站:去logo水印,免费获取logo

    网上很多免费制作logo的网站,直接输入你的logo名和理念就能帮你生成各式各样好看的logo。但是只能花钱才能下载,演示的图片是带水印的。

    小蓝枣
  • Linux中的sleep、usleep、nanosleep、poll和select

    在进行Linux C/C++编程时,可调用的sleep函数有好多个,那么究竟应当调用哪一个了?下表列出了这几个函数间的异同点,可作为参考:

    黑光技术
  • Linux中的sleep、usleep、nanosleep、poll和select

    在进行Linux C/C++编程时,可调用的sleep函数有好多个,那么究竟应当调用哪一个了?下表列出了这几个函数间的异同点,可作为参考:

    一见
  • 云计算经济:从资本支出到运营支出的战略转变

    云计算解决方案为组织的工作环境增加了灵活性,使组织的员工能够以更创新和更有效的方式进行沟通。而且,所提供的云计算解决方案的资本支出成本要低得多。 ? 从历史上看...

    静一

扫码关注云+社区

领取腾讯云代金券