1

I need an ImageShader for my custom painter. Constructor requires Image.

I've tried to get AssetImage but I don't see the way to transform it into Image directly.

Now I'm stuck on decodeImageFromList(). How can I transform AssetImage into Uint8List?

robotoaster
  • 3,082
  • 1
  • 24
  • 23

1 Answers1

3

Adapted from my answer on a previous question, here is how to turn an AssetImage into a ui.Image.

  Future<ui.Image> _getImage() {
    Completer<ui.Image> completer = new Completer<ui.Image>();
    new AssetImage('assets/image.png')
      .resolve(new ImageConfiguration())
      .addListener((ImageInfo info, bool _) => completer.complete(info.image));
    return completer.future;
  }
Collin Jackson
  • 110,240
  • 31
  • 221
  • 152