我在 Flutter 中有一个使用混合模式的应用程序,但它在网页版上非常不稳定,即使我使用命令构建flutter build web --release --dart-define=FLUTTER_WEB_USE_SKIA=true
,当我们在移动设备上打开网页时,它也会崩溃。
在我的画布页面上,我在背景上显示了一个带有灰色前景和透明矩形的 svg,以突出显示 svg 的某些部分,因此我需要使用 BlendMode。
这里的代码:
Rect sourceRect = output.asRect(sourceSize, sourcePos);
Rect destinationRect = input.asRect(destinationSize, destinationPos);
canvas.drawColor(Color.fromRGBO(0, 0, 0, 0.5), BlendMode.dstATop);
// Highlight used ports
canvas.drawRect(sourceRect, Paint()..blendMode = BlendMode.clear);
canvas.drawRect(destinationRect, Paint()..blendMode = BlendMode.clear);
// Highlight options
for (Option option in deviceLink.options) {
canvas.drawRect(option.box.asRect(sourceSize, sourcePos),
Paint()..blendMode = BlendMode.clear);
}
我在画布中为我的程序搜索 BlendMode 的替代方案。