gpt4 book ai didi

c# - 如何防止颜色混合?

转载 作者:太空狗 更新时间:2023-10-29 19:26:49 26 4
gpt4 key购买 nike

考虑以下示例:

<Grid  HorizontalAlignment="Stretch" VerticalAlignment="Top">
<Line Stroke="Red" X1="0" X2="100" Y1="50" Y2="50"/>
<Line Stroke="Red" X1="50" X2="50" Y1="0" Y2="100"/>
</Grid>

尽管两条线都具有 SolidColorBrush 并且都具有 opacity=1,但颜色混合仍然发生:交点处的像素为较深的红色。

为什么会发生,我该如何预防?

谢谢!

P.S 这是相同代码的另一个示例,其中明确定义了画笔:

<Grid HorizontalAlignment="Stretch" VerticalAlignment="Top">
<Grid.Resources>
<Style TargetType="{x:Type Line}">
<Setter Property="Stroke">
<Setter.Value>
<SolidColorBrush Color="Red" Opacity="1" />
</Setter.Value>
</Setter>
</Style>
</Grid.Resources>

<Line X1="0" X2="100" Y1="50" Y2="50" />
<Line X1="50" X2="50" Y1="0" Y2="100" />
</Grid>

最佳答案

您可能想查看 snapping to pixels 。这是 WPF 的一项功能,允许在呈现中提供一些额外的粒度。假设我们采用 Line 并应用它:

<Line X1="0" X2="100" Y1="50" Y2="50" SnapsToDevicePixels="True"/>

作为此功能的示例,这是链接文章中的图片:

enter image description here

关于c# - 如何防止颜色混合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5975402/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com