⭐️ 请首先看我 ⭐️
- 下面介绍的功用都是有 iimage 库供给。
- 下面该功用需要
iimage ^ 0.0.1
以及以上能够运用。iimage
包的引进方式如下:
1. 能够手动引进idkit
包,便是将iimage ^ 0.0.1
放在项目的pubspec.yaml
文件的dependencies
模块下,然后执行flutter pub get
指令即可。
2. 能够运用后指令flutter pub add iimage
在项目根目录终端下执行即可。
[》跳过拾光回忆]
拾光回忆
1. Flutter 项目资产办理,看这一篇就够了!
简介: 针对 Flutter 项目资产办理的脚本服务。Fam 具有以下特色: 支撑多种渠道以及各渠道无差异化、界面美观、功用齐全、便利便利。
引荐: ⭐️⭐️⭐️⭐️⭐️
2. Flutter 手势在多指触摸时一些办法会屡次触发
简介: 针对 Flutter 多手指检测以及手势触发其他手势也触发的问题。
引荐: ⭐️⭐️⭐️⭐️⭐️
3. Dart 的枚举类型的高阶用法
简介: 这是让开发者更深化的了解 Dart 的枚举以及相关运用和办法。
引荐: ⭐️⭐️⭐️
4. Flutter 能够快速完结单项或许多项挑选,你知道吗?
简介: 这是让开发者愈加快捷的完结单选、多选功用,无需你对数据处理。
引荐: ⭐️⭐️⭐️⭐️⭐️
5. Flutter 的吸收指针和忽略指针的效果以及差异
简介: 这是让开发者更深化的了解 Flutter 的两种指针的介绍以及相关运用和办法。
引荐: ⭐️⭐️⭐️
6. Flutter 项目滑动轨迹的高阶用法
简介: 这是让开发者愈加快捷的完结多种款式的轨迹滑块,比方:轨迹渐变色、触控笔悬浮标等。
引荐: ⭐️⭐️⭐️⭐️⭐️
7. Flutter 的 Debug 日志办理,可自定义多种输出款式
简介: 这是让开发者愈加快捷的检查日志,经过日志能够剖析变量当前数值以及事务逻辑走势,同时也能作为日志搜集日志文本。
引荐: ⭐️⭐️⭐️⭐️⭐️
8. Flutter 中 Image 图画快捷增加图片水印或许文字水印
简介: 这是让开发者愈加快捷的完结图画增加图片类型的水印和文字类型的水印,支撑水印多种款式的设定。
引荐: ⭐️⭐️⭐️⭐️⭐️
9. Flutter 中 Image 图画的高阶用法,你知道多少?
简介: IImage是IDKit的其中一个功用模块,它供给了许多便利的图画处理办法,例如:尺度调整、相对某点的矩形方位、大小调整、图画缩放、背景去除、实在内容尺度获取以及实在内容图画获取等等。
引荐: ⭐️⭐️⭐️⭐️⭐️
10. Flutter 中的 Matrix4,它有 16 个参数,您都知道它们的意义吗?
简介: 该篇首要介绍 Matrix4 的 16 个参数的意义。
引荐: ⭐️⭐️⭐️⭐️
11. Flutter中道色彩(Color)的差异,你知道是如何核算的吗?
简介: 该篇首要介绍 Flutter 中所有色彩的模式以及对应色彩的一些快捷办法有和LAB 色彩的支撑以及色彩差异供给算法。
引荐: ⭐️⭐️⭐️⭐️⭐️
12. Flutter 中有填充或许泛洪或许油漆桶功用能够处理图画,你知道吗?
简介: 该篇首要介绍 Flutter 中如何完结图画的油漆桶、填充功用或许图画泛洪算法。
引荐: ⭐️⭐️⭐️⭐️⭐️
[回来拾光回忆《]
一、简述
在运用一些图画处理软件时,咱们或许会运用到镜像这个功用。图画镜像便是把图画照镜子,镜子中显现的图画便是要得到的图画。目前,该功用已经在各种编辑软件中普及,那么 Flutter 怎么完结这种功用呢? 淡定!!!, 杂乱的事情,总会有人做! 在 Flutter 中有个 iimage 包就供给了完结的办法。
二、iimage 供给镜像办法介绍
iimage 供给了三种图画完结镜像的办法,如下所示:
-
static Future<Image> mirrorFromUint32List({ required Uint32List uint32list, required int imageWidth, required int imageHeight, MirrorType mirrorType = MirrorType.none, PixelFormat pixelFormat = PixelFormat.rgba8888, })
该办法是由图画的像素 Uint32List 调集以及图画的宽与高来完结图画的镜像的,办法回来一个
Future<Image>
类型。它的参数介绍如下:-
uint32list: 要完结镜像的图画的像素调集。
-
imageWidth & imageHeight: 要完结镜像的图画的宽与高。
-
mirrorType: 要完结镜像的方式,有 lr(左右) 和 td(上下) 两种方式,默以为 none。
-
pixelFormat: 要以什么像素格式将 Uint32List 像素调集生成图画。
留意: uint32list 是图画的像素数据调集,不是图画的二进制 Uint8List 转化生成的 Uint32List 调集。图画像素调集的获取办法是
image.toByteData()
,该办法有一个ImageByteFormat
类型的format
参数,你可根据自己的需求调整该参数。 -
-
static Future<Image?> mirrorFromImage({ required Image image, MirrorType mirrorType = MirrorType.none, ImageByteFormat byteFormat = ImageByteFormat.rawRgba, PixelFormat pixelFormat = PixelFormat.rgba8888, bool isDispose = false, })
该办法是由图画为参数直接镜像,办法回来
Future<Image?>
类型的成果。它的参数介绍如下:-
image: 要镜像的图画。
-
mirrorType: 要完结镜像的方式,有 lr(左右) 和 td(上下) 两种方式,默以为 none。
-
pixelFormat: 要以什么像素格式将 Uint32List 像素调集生成图画。
-
isDispose: 是否在图画镜像完毕后释放要镜像的图画。
-
-
static void mirrorUint32List({ required Uint32List uint32list, required int imageWidth, required int imageHeight, MirrorType mirrorType = MirrorType.none, })
该办法是将传入的图画像素的 Uint32List 的调集镜像。要留意的是镜像之后,则
uint32list
便是镜像的成果。该办法的参数介绍:-
uint32list: 要完结镜像的图画的像素调集。
-
imageWidth & imageHeight: 要完结镜像的图画的宽与高。
-
mirrorType: 要完结镜像的方式,有 lr(左右) 和 td(上下) 两种方式,默以为 none。
-
三、镜像的原理
图画的镜像原理其实很简单,下面咱们将介绍左右镜像和上下镜像:
-
上下镜像
-
左右镜像
留意: 咱们要区分组件镜像和图画镜像的差异。组件镜像了,但是传入组件的图画并没有镜像,它仍是原始图画。图画的镜像则是彻底的修正图画原始数据而改变的。我们要区分开来,合理的挑选来完结自己的事务。
四、 图画镜像应用
下面是图画镜像的一个小例子,视图效果如下:
附上次演示的视频的 demo 地址,欢迎获取。如果您感觉还行,请留下你的爱心以示对我的支撑和鼓舞。