WPF动画中的像素化和破碎文本

3
我有一个控件,应用了动画到Height属性上。该控件包含一个ListBox,其中TextBlock作为ListItem。但是在动画期间,文本会模糊、断裂或出现像素化。请查看下面在不同动画点的图像。

模糊的 "准备就绪"

断裂的文本 "跳闸电路断开..."

相对更好的文本

我的TextBlock代码:
<TextBlock x:Name="Description"
Padding="0,2,0,2"
Grid.Column="1" 
TextOptions.TextRenderingMode="ClearType"
HorizontalAlignment="Left" VerticalAlignment="Center"
Text="{Binding Description}"
ToolTip="{Binding Description}"
TextTrimming="CharacterEllipsis"
Foreground="White"
FontSize="11" FontFamily="{DynamicResource StandardFontType}"/>

我尝试了来自这个链接的所有不同的TextOptions.TextRenderingModeDisplayModes选项,但是没有什么能够解决我的问题。

1个回答

3
尝试在以下选项之间切换:
TextOptions.TextFormattingMode="Ideal"

并且

TextOptions.TextFormattingMode="Display"

请注意,带阴影的边框可能会导致文本渲染出现问题,参见此Stack Overflow链接

如上述链接所述,您可以通过使用网格并将两个元素放在同一行/列中来获得最佳效果(阴影和漂亮呈现的文本),因此它们重叠在一起但文本不会受到阴影的影响。


我已经尝试了这两个选项,但是问题仍然存在。使用TextOptions.TextFormattingMode="Display",外观会好一些,但仍然非常丑陋和破碎。 - Irfan
尝试将文本与阴影元素分离。 - Louis Kottmann
那真是神奇。我为控件删除了阴影,这对我起作用了。但我失去了阴影效果 :(。 - Irfan
超级 @Baboon... 经过一些修改,现在我也能让 ShadowEffect 与固定文本一起工作了。非常感谢您的支持。 - Irfan

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