我目前正在创建一个 Xamarin.Forms 应用程序。我的一个页面使用 SkiaSharp 允许用户以文本标记样式(即不透明度低的黄色画笔)突出显示图像的某些部分。
这是相关的 SKPaint 对象的定义方式:
var strokePaint = new SKPaint()
{
Color = Color.FromRgba(255, 255, 0, 100).ToSKColor(),
Style = SKPaintStyle.Stroke,
StrokeWidth = StrokeWidth
};
到目前为止一切正常,但令我困扰的是,当我有多个重叠路径时,不透明度会“增加”,直到某个时候底层图片不再可见。
我能做些什么来避免这种重叠?我正在考虑将所有路径合并为一个,但这似乎不起作用,因为允许用户在笔划之间更改 StrokeWidth,而且我没有看到任何绘制宽度不同的路径的方法。
我希望你们中的任何人对我有一些帮助。任何想法表示赞赏!