有没有办法在XAML中为TextBlock添加阴影效果?

8
我有一个XAML TextBlock,我想将其呈现为阴影。也就是说,白色文字层在黑色层上方。我这样做是为了让文字更加突出。目前,我有两个TextBlocks向右和向下偏移两个像素。顶部层是白色的,底部层是黑色的。
有没有简单的方法在XAML中实现这一点?如果可以,请提供一个示例。
2个回答

15

位图效果已被弃用。请改用新的 GPU 加速 DropShadowEffect

<TextBlock>
    <TextBlock.Effect>
        <DropShadowEffect />
    </TextBlock.Effect>
    Drop.
</TextBlock>

1
注意:当您使用DropShadowEffect时,可能会遇到模糊问题 - Pieter
你知道Windows 10通用应用程序的等效项吗? - Andreas Wong
@SiGanteng 不是的。如果没有其他人提问,可以用10ua提出一个新问题。 - user1228

4
<TextBlock
 Text="Shadow Text"
 Foreground="Teal">
<TextBlock.BitmapEffect>
<DropShadowBitmapEffect
  ShadowDepth="4"
  Direction="330"
  Color="Black"
  Opacity="0.5"
  Softness="0.25" />
</TextBlock.BitmapEffect>
</TextBlock>

MSDN上还有很多其他的示例。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接