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

Flutter web: Error when changing the RenderRepaintBoundary to image

当我使用 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();

如何解决这个问题?

似乎 .toImage() 尚未在网络上实现! GitHub issue

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

是的,我在 Github 上找到了这个,但忘了关闭它。 只需使用 flutter build web --web-renderer canvaskit.

构建