export method
Exports date to an image
texture
- source texture
size
- size of the output image
Implementation
Future<Image> export(
TextureSource texture,
Size size,
) async {
// coverage:ignore-start
if (kIsWeb) {
throw UnsupportedError('Not supported for web');
}
// coverage:ignore-end
PictureRecorder recorder = PictureRecorder();
Canvas canvas = Canvas(recorder);
if (!ready) {
await prepare();
}
final fragmentProgram = _internalProgram;
if (fragmentProgram == null) {
throw UnsupportedError('Invalid shader for $runtimeType');
}
final painter = ImageShaderPainter(fragmentProgram, texture, this);
painter.paint(canvas, size);
Image renderedImage = await recorder
.endRecording()
.toImage(size.width.floor(), size.height.floor());
return renderedImage;
}