无论布局背景颜色如何,如何保留 Windows.UI.Xaml.Controls.Image 内容颜色?

Posted

技术标签:

【中文标题】无论布局背景颜色如何,如何保留 Windows.UI.Xaml.Controls.Image 内容颜色?【英文标题】:How to retain Windows.UI.Xaml.Controls.Image content color irrespective of layout background color? 【发布时间】:2021-04-26 14:57:15 【问题描述】:

Windows.UI.Xaml.Controls.Image 内容颜色在 Layout 中的背景颜色更改时更改。如何保留 Windows.UI.Xaml.Controls.Image 内容颜色?

面临的问题

图像颜色结合布局背景颜色如下截图

背景颜色 - 黑色

背景颜色 - 白色

背景颜色 - 绿色

内容颜色相对于布局背景颜色动态变化

预期的解决方案

无论布局背景颜色如何,内容颜色都应相同

示例链接: https://drive.google.com/file/d/1KXp3yCYSBmgbKsXVNjB6T0LPsl6Pply8/view?usp=sharing

复制过程

    运行示例

    单击按钮(名称:颜色)(当背景发生变化时。图像内容 颜色也会改变)

【问题讨论】:

我不太明白你的问题是什么? 我已经更清楚地修改了这个问题。请检查。 【参考方案1】:

WriteableBitmap Class提供了可写入可更新的BitmapSource,整张图片为一张,导致图片颜色受Canvas背景影响。当Canvas的背景变成绿色时,红色和绿色叠加,所以红色图案变成黄色。

要做到这一点,当你改变Canvas的背景时,你可以遍历整个图片的像素,如果你发现一个不是红色的像素块,那么就改变它。请参考this question的第二条回复。

【讨论】:

以上是关于无论布局背景颜色如何,如何保留 Windows.UI.Xaml.Controls.Image 内容颜色?的主要内容,如果未能解决你的问题,请参考以下文章

如何更改此线性布局背景颜色?

如何在允许 XAML 缩进具有相同背景颜色的同时保留自定义字符串颜色?

如何在颤动中为布局元素设置背景颜色

如何在 JavaFX 中为组布局添加背景颜色?

如何更改 Android 布局样式中继承样式的背景颜色?

设置布局的背景颜色