在 flutter 中将图像转换为 base64

Convert image to base64 in flutter

如何将其转换为 base64?我可以存储它,但是如何从那里获取 base64?

我在用这个插件https://pub.dev/packages/signature_pad/example

  final image = await sign.getData();
  var data = await image.toByteData(format: ui.ImageByteFormat.png);
  var savedDir = await getApplicationDocumentsDirectory();
  String appDocPath = savedDir.path;
  
  await Directory('$appDocPath/Signature/').create(recursive: true);
  var file = File(file).writeAsBytesSync(data.buffer.asInt8List());

我得到文件并按此操作

List<int> imageBytes = await File(file).readAsBytes();
String base64Image = base64Encode(imageBytes);
print(base64Image);

完整代码

final image = await sign.getData();
var data = await image.toByteData(format: ui.ImageByteFormat.png);
var savedDir = await getApplicationDocumentsDirectory();
String appDocPath = savedDir.path;
await Directory('$appDocPath/Signature/').create(recursive: true);
var file = File(file).writeAsBytesSync(data.buffer.asInt8List());

List<int> imageBytes = await File(file).readAsBytes();
String base64Image = base64Encode(imageBytes);
print(base64Image);

有没有更干净的方法?