如何在 CanvasGeometry 上添加效果

How to add effect on CanvasGeometry

在我看来,Win2D 中可用的所有效果都是用于绘制图像的。

CanvasGeometry呢?如何使用发光效果绘制 CanvasGeometry

谢谢。

Geometry 对象提供了一种绘制和操作几何形状的方法。它有CreatePolygonCreatePath方法可以用来创建几何形状。

发光效果可以参考这个code sample

private void DoEffect(CanvasDrawingSession ds, Size size, float amount)
{
    size.Width = size.Width - ExpandAmount;
    size.Height = size.Height - ExpandAmount;

    var offset = (float)(ExpandAmount / 2);           

    using (var textLayout = CreateTextLayout(ds, size))
    using (var textCommandList = new CanvasCommandList(ds))
    {
        using (var textDs = textCommandList.CreateDrawingSession())
        {                     
            textDs.DrawTextLayout(textLayout, 0, 0, GlowColor);
        }

         glowEffectGraph.Setup(textCommandList, amount);
         ds.DrawImage(glowEffectGraph.Output, offset, offset);

         ds.DrawTextLayout(textLayout, offset, offset, TextColor);
     }
}