簡體   English   中英

未來<uint8list>到 Flutter 中的 Base64 或 PNG</uint8list>

[英]Future<Uint8List> to Base64 or PNG in Flutter

我需要在Future<Uint8List>轉換為 Base64 或 PNG,我正在使用這個 pub來獲取簽名並導出它,但是當我調用toPngBytes()方法(pub 中的方法)它返回一個Future<Uint8List>我需要要將其轉換為Base64格式或List<int>至少ByteData格式,我無法將其轉換為對我更有用的格式,誰能幫我解決這個問題。

_controller.toPngBytes(); // _controller is a variable that holds info about my signature.
import 'dart:convert';

// async variant
final imageData = await _controller.toPngBytes(); // must be called in async method
final imageEncoded = base64.encode(imageData); // returns base64 string

// callback variant
_controller.toPngBytes().then((data) {
 final imageEncoded = base64.encode(data); 
});

這個 function 讓我正確地將圖像上傳到Xano

import 'dart:convert';
import 'dart:typed_data';

String uint8ListTob64(Uint8List uint8list) {
  String base64String = base64Encode(uint8list);
  String header = "data:image/png;base64,";
  return header + base64String;
}

您可以通過以下方式將圖像轉換為 Uint8List:

String path = "image.png";
File file = File(path);
Uint8List uint8list = file.readAsBytesSync();
//or
Uint8List uint8list = await file.readAsBytes();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM