首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏个人路线

    Flutter 压缩图像的最佳方式【Flutter专题23】

    nullsafety 使用的地方导入 import 'package:flutter_image_compress/flutter_image_compress.dart'; /// 图片压缩 File -> Uint8List Future<Uint8List> testCompressFile(File file) async { var result = await FlutterImageCompress.compressWithFile print(file.lengthSync()); print(result.lengthSync()); return result; } /// 图片压缩 Asset -> Uint8List minWidth: 1080, quality: 96, rotate: 180, ); return list; } /// 图片压缩 Uint8List -> Uint8List Future<Uint8List> testComporessList(Uint8List list) async { var result = await FlutterImageCompress.compressWithList

    3.4K20编辑于 2022-03-30
  • 来自专栏阿策小和尚

    【Flutter 专题】42 图解页面截屏与本地保存小尝试

    ui.Image 通过 RenderRepaintBoundary 获取的对象 .toImage() 后转为 ui.Image 类型字节流,最终存储为 png 格式,在转为常用的 Uint8List toByteData() 生成的数据格式一般分三种: rawRgba:未解码的 byte; rawUnmodified:未解码且未修改的 byte,如灰度图; png 为我们常用的 PNG 图片; Future<Uint8List boundary.toImage(); ByteData byteData = await image.toByteData(format: ui.ImageByteFormat.png); Uint8List writeAsBytes 文件的保存很简单,直接将 Uint8List 写入到所在文件路径下即可; File(val).writeAsBytes(unitVal); 但此时存储或自定义文件路径

    2.3K51发布于 2019-08-12
  • 来自专栏ionic3+

    Flutter上传、显示二进制图像的一些事

    = null && imageCode.length > 0) { codeId = imageCode[0]; } final Uint8List bytes int>>[]; int contentLength = 0; chunks.add(data); contentLength += data.length; final Uint8List bytes = Uint8List(contentLength); int offset = 0; for (List<int> chunk in chunks) { bytes.setRange

    3.8K10发布于 2020-02-13
  • 来自专栏前端大合集

    flutter中 对含有二维码图片进行扫描

    QR-Code photos for analysis String photoScanResult = await scanner.scanPhoto(); // Generating QR-Code Uint8List of the specified path String barcode = await scanner.scanPath(path); // Parse to code string with uint8list File file = await ImagePicker.pickImage(source: ImageSource.camera); Uint8List bytes = file.readAsBytesSync (); String barcode = await scanner.scanBytes(uint8list); 但是无奈的是,这个库发布较早, 包规范不符合目前的标准,导致无法安装下来, 索性就放弃了 file.readAsBytes()); // 扫描网络图片中的二维码 Future<void> scanQRCodeFromUrl(String imageUrl) async { final Uint8List

    78310编辑于 2024-12-29
  • 来自专栏汇智网教程

    用web3dart为flutter应用生成以太坊地址

    // Random import 'dart:typed_data'; // Uint8List generateNewPrivateKey(rng); //生成新的私钥 STEP 2# 从私钥推导出公钥 直接调用crypto库中privateKeyToPublic()函数,即可从指定的私钥推导出公钥: Uint8List public Key => ${bytesToHex(pubKey)}'); //显示其16进制字符串表示 bytesToHex()是crypto库提供的一个辅助API,用于将字节数组(Uint8List STEP 3# 从公钥推导出地址 直接调用crypto库中publicKeyToAddress()方法,从指定的公钥码流推导出地址码流: Uint8List address = publicKeyToAddress

    3.2K30发布于 2019-06-25
  • 来自专栏全栈程序员必看

    flutter byte(Unit8List) 转 ios Uint8[] 转 c语言char*

    但是3种语言的类型各不相同,所以中间就出现来各种转换,本人一个安卓屌丝,碰到swift 和 c语言也是一脸懵逼,很简单的东西我搞了2天,先看下各数据的对比 flutter java swift c语言 Uint8List byte[] FlutterStandardTypedData char[] 1. flutter 发送Uint8List (java种的byte)数据到ios端 ,ios将Uint8List转成

    2.2K20编辑于 2022-09-29
  • 来自专栏Android知识点总结

    [- Flutter 技能篇 -] ui.Image加载探索

    asByteData()); }); }); } String _toByteData(int format, _Callback<Uint8List> callback) 它是返回一个Future的方法,而且传入一个Uint8List 也许这时你会说: 好复杂,臣妾做不到。我不画了还不行吗。稍安勿躁,先看Codec何许人也... } 复制代码 好了,现在似乎一条路已经走通了,唯一一点就是Uint8List的图片数据如何获取 如果你不知道,那么至少可以先写出下面的这个方法: //通过[Uint8List]获取图片 Future <ui.Image> loadImageByUint8List(Uint8List list) async{ ui.Codec codec= await ui.instantiateImageCodec ]获取图片,默认宽高[width][height] Future<ui.Image> loadImageByUint8List( Uint8List list, { int width

    5K20发布于 2020-04-30
  • 来自专栏Android群英传

    Flutter混编工程之通讯之路

    The [BasicMessageChannel] uses [StandardMessageCodec] /// since it supports [Uint8List], which is used static Future<Uint8List> getImage() async { final reply = await _basicMessageChannel.send('getImage ') as Uint8List? } return const CircularProgressIndicator(); }, 在Android侧,我们需要定义同名的Channel和Handler,并通过Stream返回Uint8List static Future<void> removePet(int index) async { final uInt8List = utf8.encoder.convert(index.toString

    2.3K20编辑于 2022-03-31
  • 来自专栏编程之路的专栏

    Dart实战——Socks5服务器

    close(); }); } //1. socks5握手 bool handshake() { // 从客户端socket中读取字节数据 Uint8List 建立连接 Future<bool> createConnection() async { // 从客户端socket中读取字节数据 Uint8List bytes = clientSocket.read class HandShakeResponse { int ver = 0x05; int method; HandShakeResponse.from(this.method); Uint8List Dst { int port; } class IPv4 implements Dst, Bnd { int port; InternetAddress address; IPv4(Uint8List rep; int rsv = 0x00; int atyp = 0x01; Bnd bnd; Socks5Response.from(this.rep, this.bnd); Uint8List

    3.1K20发布于 2020-10-29
  • 来自专栏程序那些事

    dart系列之:如丝滑般柔顺,操作文件和目录

    代表一个整体的文件,他有三个构造函数,分别是: factory File(String path) factory File.fromUri(Uri uri) factory File.fromRawPath(Uint8List readAsLinesSync({Encoding encoding: utf8}); 如果文件是二进制,那么可以使用readAsBytes或者同步的方法readAsBytesSync: Future<Uint8List > readAsBytes(); Uint8List readAsBytesSync(); dart中表示二进制有一个专门的类型叫做Uint8List,他实际上表示的是一个int的List。

    2.3K30编辑于 2021-12-20
  • 来自专栏Android知识点总结

    Dart 知识集锦 | Base64 编解码

    String ret = await base64File(file); print(ret); } Future<String> base64File(String path) async { Uint8List :convert'; import 'dart:typed_data'; void main() async { String data = '5byg6aOO5o2354m554OI'; Uint8List 刚好 base64 解码可以生成一个 Uint8List 对象: 下面代码,可以让 Flutter 的 Image 组件展示 Base64 编码的图片。 base64 非常大,可以考虑将解析逻辑放在 isolate 里解析,解析过程中展示 loading 示意: final String baseImage = """base字符串"""; late Uint8List

    1K10编辑于 2024-06-15
  • 来自专栏个人路线

    flutter截取当前widget并分享

    saveImage() async { // 截屏 ByteData byteData = await QSCommon.capturePngToByteData(key); Uint8List void shareVxImage() async { ByteData byteData = await QSCommon.capturePngToByteData(key); Uint8List

    1.3K10发布于 2021-11-30
  • 来自专栏个人路线

    encoding - 如何将 Dart 的ByteData转换为字符串?

    经过自我调查,解决方案是: 用 .cast<int>() ByteData audioByteData = await rootBundle.load(audioAssetsFullPath); Uint8List 使用 .map ByteData audioByteData = await rootBundle.load(audioAssetsFullPath); Uint8List audioUint8List

    5.2K00发布于 2021-08-30
  • 来自专栏万物皆可Serverless

    Flutter版合成大西瓜

    :typed_data'; import 'package:path_provider/path_provider.dart'; class FileTool { static Future<Uint8List ()) return null; return await file.readAsBytes(); } static Future<void> write(String path, Uint8List /image/ui_image_tool.dart'; class FileTool { static Future<Uint8List> read(String path) async { return null; return (value as String).toBytes(); } static Future<void> write(String path, Uint8List

    2.3K00发布于 2021-02-21
  • 来自专栏个人路线

    探索Flutter_Image显示Webp逻辑

    name) 从AssetBundler中获取图片 Image.network(String src) 显示网络图片 Image.file(File file) 从文件中获取图片 Image.memory(Uint8List bytes) 从Uint8List获取数据显示图片 Image 从Image的构造体上看,ImageProvider才是图片提供方,所以我们后面会看看ImageProvider究竟是要做点什么的。 ); } Future<ui.Codec> _loadAsync(FileImage key) async { assert(key == this); final Uint8List } ); } Future<ui.Codec> _loadAsync(FileImage key) async { assert(key == this); final Uint8List

    1.2K10发布于 2021-11-30
  • 来自专栏Flutter笔记

    一个会做饭的程序员如何每天给女朋友带不同的便当?

    Future<Uint8List> _capturePng() async { RenderRepaintBoundary boundary = globalKey.currentContext.findRenderObject 如果需要图片的原始像素数据,请使用rawRgba ByteData byteData = await image.toByteData(format: ui.ImageByteFormat.png); Uint8List pngBytes = byteData.buffer.asUint8List(); return pngBytes; } 调用该方法后,返回的就是一个 Future<Uint8List> 对象了, FutureBuilder 异步UI神器 大概代码如下: showDialog( context: context, builder: (context) { return FutureBuilder<Uint8List 使用方法也很简单,一行代码就搞定: _saveImage(Uint8List img) async { await ImageGallerySaver.save(img); } 七天之内不能出现重复菜品

    1.4K50发布于 2019-07-25
  • 来自专栏个人路线

    最新Flutter 微信分享功能实现【Flutter专题23】

    context, widget.cjinfo.cover, ext: ".jpg"); //压缩图片,我这儿用的flutter_image_compress Uint8List * scene=分享场景,1好友会话,2朋友圈,3收藏 */ static void ShareUrl(String url, {String thumbFile, Uint8List var dio = await Dio() .get(url, options: Options(responseType: ResponseType.bytes)); Uint8List

    2.3K10编辑于 2022-03-30
  • 来自专栏青年码农

    Flutter基础widgets教程-Image篇

    ImageProvider来加载图片 Image.asset:用来加载本地资源图片 Image.file:用来加载本地(File文件)图片 Image.network:用来加载网络图片 Image.memory:用来加载Uint8List

    1K1715发布于 2020-10-10
  • 来自专栏Google Dart

    Flutte部件目录-基本部件(二) 顶

    用于使用键从AssetBundle获取图像. new Image.network, 用于从URL获取图像. new Image.file,用于从文件获取图像. new Image.memory,用于从Uint8List Image.memory(Uint8List bytes, { Key key, double scale: 1.0, double width, double height, Color color, ImageRepeat.noRepeat, Rect centerSlice, bool matchTextDirection: false, bool gaplessPlayback: false }) 创建一个显示从Uint8List

    5.5K20发布于 2018-08-14
  • 来自专栏call_me_R

    Flutter 打印功能

    class _MyHomePageState extends State<MyHomePage> { final GlobalKey boundaryKey = GlobalKey(); Uint8List _imageBytes = Uint8List(0); @override Widget build(BuildContext context) { return Scaffold(

    1.4K10编辑于 2024-03-22
领券