Asyn c функция не завершена - PullRequest
0 голосов
/ 28 января 2020

Я пытаюсь написать асинхронную функцию для сохранения рисунка с холстом в файл. По какой-то причине функция не завершена, то есть файл не создан. Мне интересно, если процесс просто занимает много времени, так как флаттер не выдает никакой ошибки.

  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());
  }

Редактировать: В настоящее время toByteData не поддерживается флаттером, см. https://github.com/flutter/flutter/issues/44908.

...