首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WPF Dropshadow on Button导致文本模糊

WPF Dropshadow on Button导致文本模糊
EN

Stack Overflow用户
提问于 2014-02-04 05:34:57
回答 2查看 12.6K关注 0票数 22

这快把我逼疯了。向按钮添加DropShadowEffect。在IDE中,它看起来像这样:

第二个按钮是没有DropShadowEffect的参考按钮。正如你所看到的,下一步没有区别。然后我构建这个项目,当它运行时,它看起来像这样:

是什么导致了这种变化?下面是这两个按钮的XAML:

代码语言:javascript
复制
<Button Name="clearButton" Content="Clear" Click="clearButton_Click" Margin="5,0,5,0" MaxWidth="80" MinHeight="40" 
    TextOptions.TextFormattingMode="Display">
<Button.Effect>
    <DropShadowEffect BlurRadius="5" ShadowDepth="3" />
</Button.Effect>
</Button>
<Button Content="Clear" Margin="5,5,5,0" MaxWidth="80" MinHeight="40"  TextOptions.TextFormattingMode="Display" />

编辑:使用@gretro确实会让它看起来更好,但它仍然是不正确的:

然而,在IDE中,它看起来又一次很好:

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-04 06:05:00

你的整个按钮都渲染在一个跨像素的边界上。请注意,1点边框实际上是如何跨越多个像素的,从而导致模糊效果。

尝试在父元素或祖先元素上设置UseLayoutRounding="True"。树上的位置越高越好(视图的根视觉效果最好)。您也可以尝试使用SnapsToDevicePixels="True"

票数 39
EN

Stack Overflow用户

发布于 2014-02-04 05:52:46

删除附加的属性TextOptions.TextFormattingMode="Display"。这就是导致按钮模糊的原因。

代码语言:javascript
复制
<Button Grid.Row="25" Grid.Column="0" Content="Clear">
    <Button.Effect>
       <DropShadowEffect BlurRadius="5" ShadowDepth="3" />
    </Button.Effect>
</Button>

这个XAML为我呈现了带有阴影效果的按钮中的清晰文本。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21538296

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档