【发布时间】:2013-08-08 16:14:08
【问题描述】:
我有一个带有 DropShadowEffect 的 TextBlock。某些阴影颜色比指定的颜色更暗,几乎就像它们被着色一样。但是,并非每种颜色都会发生这种情况。有谁知道为什么,或者有什么纠正方法吗?
这是一个非常基本的例子:
<StackPanel>
<StackPanel.Resources>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="FontSize" Value="100" />
<Setter Property="Text" Value="THIS IS TEXT WITH A SHADOW" />
</Style>
</StackPanel.Resources>
<!-- Expected Result -->
<TextBlock Foreground="#FFFF0000">
<TextBlock.Effect>
<DropShadowEffect ShadowDepth="20" Color="#FFFF0000" />
</TextBlock.Effect>
</TextBlock>
<!-- Unexpected Result -->
<TextBlock Foreground="#FF005E20">
<TextBlock.Effect>
<DropShadowEffect ShadowDepth="20" Color="#FF005E20" />
</TextBlock.Effect>
</TextBlock>
</StackPanel>
也许和原色有关??
【问题讨论】:
-
我没有对此的解释,但我确实截取了这个结果的截图,甚至第一种情况下阴影也有不同的颜色。我无法在两者之间的差异之间得出相关性,但我想知道
DropShadowEffect是否正在改变颜色的亮度。我的工具不够先进,无法对此进行研究(我只能看到 RGB 和 HSV 色彩空间)。 -
嗯,这很有趣......也许这里还有其他事情发生。
-
是的,不幸的是,我们不能使用反射器来检查这段代码。除非有魔法版本的反射器可以获取着色器效果的 HLSL 代码。
-
我通过 Kaxaml 运行了您的代码,没有发现任何异常。你能准确指出你所面临的问题吗?