Flutter web:将RenderRepaintBoundary更改为图像时出错



当我使用RepaintBoundary小部件并通过将其更改为图像时,我遇到了这个错误

final boundary = _repaintBoundaryKey.currentContext?.findRenderObject()
as RenderRepaintBoundary?;
final image = await boundary?.toImage(); 
Error: Assertion failed: org-dartlang-sdk:///flutter_web_sdk/lib/_engine/engine/html/scene_builder.dart:94:16
matrix4[0] == window.devicePixelRatio &&
matrix4[5] == window.devicePixelRatio

我发现这个错误的原因是

final image = await boundary?.toImage();

如何解决此问题?

是的,我在Github上发现了这个,忘记关闭了。只需使用flutter build web --web-renderer canvaskit进行构建。

似乎.toImage((尚未在web上实现!GitHub发布

但也许您可以尝试使用canvakit渲染器运行代码:flutter run -d chrome --web-renderer=canvaskit

最新更新