createTexture method

Future<FlutterAngleTexture> createTexture(
  1. AngleOptions options
)

Implementation

Future<FlutterAngleTexture> createTexture(AngleOptions options) async {
  final _divId = DateTime.now().microsecondsSinceEpoch;
  final String id = 'canvas-id$_divId';
  final width = (options.width * options.dpr).toInt();
  final height = (options.height * options.dpr).toInt();

  late final newTexture;

  final element = html.HTMLCanvasElement()
  ..width = width
  ..height = height
  ..id = id;

  ui.platformViewRegistry.registerViewFactory(_divId.toString(), (int viewId) {
    return element;
  });

  newTexture = FlutterAngleTexture.fromSurface(
    this,
    _divId,
    element,
    options
  );

  if (!options.customRenderer) {
    _worker = RenderWorker(newTexture);
  }

  return newTexture;
}