Image 异步函数未完成
我正在尝试编写一个异步函数,用于将带有画布的图形保存到文件。由于某些原因,函数未完成,这意味着未创建文件。我想知道这个过程是否需要很长时间,因为颤振不会抛出任何错误Image 异步函数未完成,image,flutter,async-await,save,flutter-web,Image,Flutter,Async Await,Save,Flutter Web,我正在尝试编写一个异步函数,用于将带有画布的图形保存到文件。由于某些原因,函数未完成,这意味着未创建文件。我想知道这个过程是否需要很长时间,因为颤振不会抛出任何错误 void _saveImage() async { final recorder = new ui.PictureRecorder(); final canvas = new Canvas(recorder); MyPainter mypainter = new MyPainter( sh
void _saveImage() async {
final recorder = new ui.PictureRecorder();
final canvas = new Canvas(recorder);
MyPainter mypainter = new MyPainter(
shapes: _shapes,
lineColor: Colors.amber,
width: 1.0
);
mypainter.paint(canvas,Size(1280, 720));
final picture = recorder.endRecording();
final img = await picture.toImage(1280, 720);
final pngBytes = await img.toByteData(format: ImageByteFormat.png); //This line will not work
File('/home/filename.png').writeAsBytesSync(await pngBytes.buffer.asInt8List());
}
编辑:当前颤振web不支持
toByteData
,请参阅是否尝试在步骤之间添加一些print()
s?如果是这样,您会看到什么?代码一直运行到第行final pngBytes=wait img.toByteData(格式:ImageByteFormat.png)代码>。也使用了try/catch
,但没有看到任何错误。嗯,奇怪,你确定吗?toByteData()应该可以正常工作,因为/home/filename.png看起来可疑,所以可能在编写时出错……在指定正确的目录后,在android设备上工作正常。