问题标签 [lineargradientbrush]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1244 浏览

c# - LinearGradientBrush 的奇怪行为

我想用 LinearGradientBrush 填充 Rectangle。使用一些 Rectangles 我会得到一些奇怪的行为。例子:

大多数矩形工作正常,但有些(如上面的)用第二种颜色(在本例中为蓝色)填充第一个像素行。见附图:

线性渐变画笔

有任何想法吗?

0 投票
3 回答
1879 浏览

wpf - 默认情况下,为 stackPanel 提供与工具栏相同的 LinearGradientBrush

我有两个ToolBar并排的(我必须这样做,以便我可以左右对齐按钮)但是现在,我必须添加一些可以在两个工具栏之间左右对齐或居中对齐的文本。我在第二个位置(工具栏之间)的aTextBlock中添加了文本,当然,它在两个工具栏之间创建了一个间隙(当然,stackPanel 与工具栏的样式不同)。StackPanelGrid

我想LinearGradientBrush在我的堆栈面板上复制工具栏,使其看起来与我的工具栏相同。关键是让东西看起来像一个工具栏。

有没有办法通过定义来获取ToolBar Style或重新创建它LinearGradientBrush,如果是这样,如何?

0 投票
1 回答
5983 浏览

wpf - 将 LinearGradientBrush 而不是纯色设置为 VisualState 中的 storyboard.targetProperty

我想知道如何将 Storyboard.TargetProperty 设置为 LinearGradientBrush 而不是纯色。我是 VisualStates 的新手,所以如果我没有为我的问题提供足够的信息,请告诉我。大多数情况下,我只想设置渐变而不是纯色,但不知道如何设置。谢谢你的帮助。我正在使用在http://msdn.microsoft.com/en-us/library/ms753328.aspx找到的示例。

0 投票
1 回答
700 浏览

qt - 在 QT 中模拟 GDI+ 伽马校正

我需要在 QT 中实现一些 GDI+ 功能,特别是LinearGradientBrush。我遇到麻烦的唯一方法是SetGammaCorrection。我发现一个主题提到 MSDN 对 GDI+ 伽马校正算法有非常详尽的描述,但我找不到。

我试图模拟伽玛校正如下:

1) 假设我们有一个带有双色插值的简单 LinearGradientBrush。将这两种颜色之间的间隔划分为预定义数量的点 (100),每个点之间的距离相等。

2) 为每个点分配一个值。第一个点的值为 0,第二个点的值为 0,...,最后一个点的值为 1。

3)计算每个点的插值颜色值:

开始颜色和结束颜色是渐变边界颜色,如果不够清晰。

4)对每个计算出来的颜色值进行实际的gamma校正(除了两个边界颜色):

伽玛值为 2.2。

然后我使用 QLinearGradient,用计算的颜色及其位置(点值)制作一组渐变色标,将这些色标分配给渐变,最后用这个渐变创建一个 QBrush。

现在,如果我用这个画笔填充一个矩形,我得到的结果与实际 GDI+LinearGradientBrush 的结果非常接近,但它们并不相同。我尝试了伽玛值和段数的不同组合,但我没有设法获得几乎相等的梯度。

有谁知道如何在 GDI+ 中实现伽马校正或如何在 QT 中模拟它?

谢谢,托尼。

0 投票
1 回答
1869 浏览

wpf - 如何为 LinearGradient 的起点设置动画

我有一个 LinearGradientBrush 用作 OpacityMask,我希望我的动画旋转渐变,所以我试图为 StartPoint 和 EndPoint 的位置设置动画,但我无法让它工作几个小时:(

我收到错误消息“在‘System.Windows.Controls.ContentPresenter’的名称范围内找不到‘FillGradient’名称。”

0 投票
1 回答
1217 浏览

c# - 在自定义控件中绑定 LinearGradientBrush StartPoint

在上一个问题中,kbmax 告诉我如何在我的 generic.xaml 中绑定自定义属性。这个答案是在Setting Border background with a template binding

在我尝试使用 LinearGradientBrush StartPoint 之前,它工作得很好,这是一个示例:

这显然工作正常:

我想将它们绑定到这样的自定义属性:这不起作用,无论我将属性设置为什么,我总是得到一个从左到右的渐变。

这是类中的代码。

感谢您的任何指导...

0 投票
1 回答
250 浏览

c++ - C++ 和 GDI 中 scatch 的多梯度画笔实现问题

我正在尝试使用 GDI 在 C++ 中从头开始实现渐变画笔。我不想使用 GDI+ 或任何其他图形框架。我希望渐变是任何方向(任意角度)。

我的伪代码算法:

extentDistance 是从矩形中心经过的线的长度,其梯度等于梯度的角度

好的,到目前为止一切都很好。我可以画这个,看起来不错。但不幸的是,由于旋转位,矩形角的颜色错误。结果仅适用于 90 度的倍数的角度。问题似乎是缩放因子没有在矩形的整个大小上缩放。

我不确定你是否明白我的意思,因为如果没有可视化的问题,真的很难解释我的问题。

如果有人可以帮助或将我重定向到一些有用的材料,我将不胜感激。

0 投票
3 回答
23644 浏览

wpf - 如何使用 LinearGradientBrush 和背景

我正在尝试使用 LinearGradientBrush 绘制 WPF 窗口的背景,但是我的代码不起作用。这是代码

不幸的是,我的窗户仍然是白色的。是否可以使用后面的代码更改窗口的背景颜色?

0 投票
1 回答
1482 浏览

c++ - 如何将 QMdiArea 小部件的背景 QBrush 设置为系统颜色渐变?

我正在尝试将 Qt4 中 QMdiArea 小部件的背景 QBrush 设置为系统颜色的渐变。

这是我现在拥有的一些代码:

发生的情况是背景变成了纯色,设置为grad.setColorAt(1, pal.window().color());

我究竟做错了什么?

0 投票
0 回答
480 浏览

c# - C# 3D wpf 渐变颜色取决于 Z

C#

我想使用具有绝对坐标的 LinearGradientBrush,以便每个对象的像素颜色反映高度,但我不明白如何使用 LinearGradientBrush。

但这如何“仅”应用于每个对象的 Z 值。

在我的示例中,我希望颜色从蓝色变为从坐标-100 到 100

问候斯特凡