最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Flutter簡潔實用的圖片編輯器的實現(xiàn)

 更新時間:2022年02月10日 16:17:07   作者:靜水流深zz  
本文主要介紹了Flutter簡潔實用的圖片編輯器的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

介紹

一款簡潔實用的圖片編輯器,純dart開發(fā)。支持:涂鴉、旋轉&翻轉、馬賽克、添加文字,及自定義ui風格。

功能演示

涂鴉

draw.gif

旋轉&翻轉

flip&rotate.gif

馬賽克

mosaic.gif

添加文字及刪除

text_delete.gif

addtext_done.gif

安裝

添加依賴

dependencies:
  image_editor_dove: ^latest

import

import 'package:image_editor/flutter_image_editor.dart';

使用方法

獲取到原圖片后,將其傳給ImageEditor 如下:

  Future<void> toImageEditor(File origin) async {
    return Navigator.push(context, MaterialPageRoute(builder: (context) {
      return ImageEditor(
        originImage: origin,
        //可空,支持自定義存儲位置(編輯后的圖片)
        savePath: customDirectory
      );
    })).then((result) {
      if (result is EditorImageResult) {
        setState(() {
          _image = result.newFile;
        });
      }
    }).catchError((er) {
      debugPrint(er);
    });
  }

返回結果

///The editor's result.
class EditorImageResult {
  ///寬度
  final int imgWidth;

  ///高度
  final int imgHeight;

  ///編輯后的圖片
  final File newFile;

  EditorImageResult(this.imgWidth, this.imgHeight, this.newFile);
}

拓展

UI定制

一些按鈕、滑塊等widget支持自定義,可通過繼承ImageEditorDelegate來自定義ui風格:

class YourUiDelegate extends ImageEditorDelegate{
    ...
}

ImageEditor.uiDelegate = YourUiDelegate();

class ImageEditor extends StatefulWidget {

  const ImageEditor({Key? key, required this.originImage, this.savePath}) : super(key: key);
   
   ...
    
  ///[uiDelegate] is determine the editor's ui style.
  ///You can extends [ImageEditorDelegate] and custome it by youself.
  static ImageEditorDelegate uiDelegate = DefaultImageEditorDelegate();

  @override
  State<StatefulWidget> createState() {
    return ImageEditorState();
  }
}

保持相對繪制路徑

為了獲得更大的繪制區(qū)域,所以繪制面積并非為圖片顯示區(qū)域,這也就導致了旋轉的時候,相對位置會有變化。如果你需要保持相對,可以控制繪制區(qū)域與圖片顯示區(qū)域保持一致即可。

參考及其他文章

地址

github倉庫地址: image_editor_dove

插件地址:image_editor_dove

參考插件

signature | Flutter Package (flutter-io.cn)

到此這篇關于Flutter簡潔實用的圖片編輯器的實現(xiàn)的文章就介紹到這了,更多相關Flutter 圖片編輯器內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Android使用SQLite數(shù)據(jù)庫的簡單實例

    Android使用SQLite數(shù)據(jù)庫的簡單實例

    這篇文章主要介紹了Android使用SQLite數(shù)據(jù)庫的簡單實例,有需要的朋友可以參考一下
    2013-12-12
  • Android中使用listview實現(xiàn)qq/微信好友列表

    Android中使用listview實現(xiàn)qq/微信好友列表

    本文主要介紹了android中使用listview實現(xiàn)qq/微信好友列表(頭像,昵稱,個性簽名)的相關知識。具有很好的參考價值。下面跟著小編一起來看下吧
    2017-04-04
  • Android編程實現(xiàn)仿心跳動畫效果的方法

    Android編程實現(xiàn)仿心跳動畫效果的方法

    這篇文章主要介紹了Android編程實現(xiàn)仿心跳動畫效果的方法,實例分析了Android基于線程實現(xiàn)動畫過度效果的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-11-11
  • 使用Flutter 構建Web應用邏輯解析

    使用Flutter 構建Web應用邏輯解析

    這篇文章主要為大家介紹了使用Flutter 構建Web應用邏輯解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • Android實現(xiàn)翻頁特效

    Android實現(xiàn)翻頁特效

    這篇文章主要為大家詳細介紹了Android實現(xiàn)翻頁特效,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 簡介Android 中的AsyncTask

    簡介Android 中的AsyncTask

    AsyncTask是一個很常用的API,尤其異步處理數(shù)據(jù)并將數(shù)據(jù)應用到視圖的操作場合。接下來通過本文給大家介紹Android 中的AsyncTask,感興趣的朋友一起學習吧
    2016-03-03
  • Android實現(xiàn)帶有進度條的按鈕效果

    Android實現(xiàn)帶有進度條的按鈕效果

    這篇文章主要為大家詳細介紹了Android實現(xiàn)帶有進度條的按鈕效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • Android開發(fā)入門之Service用法分析

    Android開發(fā)入門之Service用法分析

    這篇文章主要介紹了Android中Service用法,較為詳細的分析了Service的功能、相關函數(shù)使用及注意事項,需要的朋友可以參考下
    2016-07-07
  • Android獲得內/外置存儲卡路徑的方法

    Android獲得內/外置存儲卡路徑的方法

    我們知道Android上一般都有外置的存儲卡,內置存儲卡路徑大家都知道怎么獲得的。那么如何獲取外置存儲卡的位置呢?下面小編通過本文給大家分享下
    2017-01-01
  • Android usb設備權限查詢及自動獲取詳解流程

    Android usb設備權限查詢及自動獲取詳解流程

    本篇文章介紹了我想要獲取Android系統(tǒng)usb設備使用權限時遇到的問題,以及解決該問題的過程及思路,通讀本篇對大家的學習或工作具有一定的價值,需要的朋友可以參考下
    2021-10-10

最新評論

元朗区| 瓮安县| 泌阳县| 林西县| 罗江县| 汶上县| 安宁市| 怀柔区| 蚌埠市| 永善县| 麻栗坡县| 罗田县| 凤庆县| 乌什县| 吴旗县| 莫力| 贡山| 赫章县| 奉节县| 卢氏县| 双辽市| 通化县| 阿克陶县| 罗源县| 金湖县| 井陉县| 徐闻县| 南木林县| 辽阳市| 柏乡县| 九寨沟县| 汨罗市| 辽源市| 禄劝| 郑州市| 永寿县| 诸城市| 青铜峡市| 新竹县| 宝山区| 庐江县|