【问题标题】:WPF distortion in TextBlock elementsTextBlock 元素中的 WPF 失真
【发布时间】:2012-08-31 18:32:47
【问题描述】:

有关文本渲染失真的屏幕截图,请参阅http://inky.ws/g/21s

我应用这种样式来获得发光效果:

<Style TargetType="FrameworkElement" x:Key="GlowBright"
       BasedOn="{StaticResource ToolTipBase}">
    <Setter Property="Effect">
        <Setter.Value>
            <DropShadowEffect Opacity="1" ShadowDepth="0" BlurRadius="7"
                              Color="White"/>
        </Setter.Value>
    </Setter>
</Style>

<!-- Expander headers, Group box headers, Check box headers, Labels -->
<Style TargetType="TextBlock" BasedOn="{StaticResource GlowBright}"/>

不幸的是,它使某些元素的渲染出现故障。当我调整窗口大小时,故障会改变或消失。那么...如何避免故障?


编辑 - 这样做:

<Style TargetType="TextBlock" BasedOn="{StaticResource GlowBright}">
    <Setter Property="TextOptions.TextFormattingMode" Value="Ideal"/>
    <Setter Property="TextOptions.TextHintingMode" Value="Fixed"/>
    <Setter Property="TextOptions.TextRenderingMode" Value="ClearType"/>
</Style>

没有帮助。

【问题讨论】:

    标签: wpf xaml text-rendering


    【解决方案1】:

    尝试添加此附加属性TextOptions.TextFormattingMode。更多可以通过MSDN找到

    <TextBox TextOptions.TextFormattingMode="Ideal" FontSize="15">HELLO WORLD</TextBox>
    

    *

    此属性的指南

    场景推荐模式

    大文本 (15pt+) = 理想\显示(用户偏好)

    转换后的文本 = 理想

    缩放文本 = 理想

    设计场景 = 理想

    小文本 = 显示

    【讨论】:

    • 你有没有试过用其他机器,如果它仍然有这个故障?
    • 无权访问任何其他机器,但我看不出它是如何特定于机器的。
    【解决方案2】:

    您的视频卡驱动程序可能会遇到问题,因为 DropShadowEffect 是通过像素着色器完成的(编译成在视频卡上运行的特殊例程。)引入旧驱动程序并不少见使用着色器时的视觉缺陷。如果这仅发生在您的机器上,这可能是原因。

    【讨论】:

    • 这肯定是它,因为我无法用其他方式解释它......糟糕的交易。
    • 更新驱动解决了这个问题!互联网当心!如果您有 Intel HD Graphics 3000,请更新驱动程序。
    猜你喜欢
    • 2019-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-20
    相关资源
    最近更新 更多