C# WPF中的拉丝钢刷?

C# WPF中的拉丝钢刷?,c#,wpf,brush,C#,Wpf,Brush,我正在寻找的想法,以创造一个WPF刷刷与拉丝钢外观,类似于MacOSX黑豹风格,最好不诉诸一个ImageBrush。 有没有一种时髦的方法可以使用渐变笔刷来创建这种效果 提前谢谢 您可以使用旋转的LinearGradientBrush,其中有许多不同灰色色调的渐变停止点。嗯,这至少是一种方法。要使其具有可伸缩性,您可能需要使渐变停止仅一个像素宽,这可能需要为笔刷提供填充对象的大小,我猜。可能会成为一项困难的任务,但这是一个真正的黑客的命运,不是吗?我不知道如何使用编程画笔轻松做到这一点,但当我使

我正在寻找的想法,以创造一个WPF刷刷与拉丝钢外观,类似于MacOSX黑豹风格,最好不诉诸一个ImageBrush。 有没有一种时髦的方法可以使用渐变笔刷来创建这种效果


提前谢谢

您可以使用旋转的LinearGradientBrush,其中有许多不同灰色色调的渐变停止点。嗯,这至少是一种方法。要使其具有可伸缩性,您可能需要使渐变停止仅一个像素宽,这可能需要为笔刷提供填充对象的大小,我猜。可能会成为一项困难的任务,但这是一个真正的黑客的命运,不是吗?

我不知道如何使用编程画笔轻松做到这一点,但当我使用Photoshop创建刷钢效果时,我基本上制造了噪音,然后沿着刷的方向涂抹(模糊)它:

正如有人在评论中提到的,您可能想这样做,并创建某种(重复?)图像笔刷。如果希望通过编程方式生成拉丝钢效果,可以编写一个均值过滤器来为您进行模糊处理。产生噪音非常简单:)

实施平均值过滤器的示例:


修改此选项,使其具有Nx1矩阵,或对当前行以外的权重具有较小(零)的权重,则会产生水平模糊。

您不想使用ImageBrush的原因是什么?我不认为有一个简单的方法可以用其他刷子来做…@托马斯:我怀疑。画笔的比例不好,不是吗?最理想的情况是,画笔在96 DPI桌面和200 DPI嵌入式设备上看起来都一样。但是如果你知道如何设计一个合适的图像的教程,我也很欣赏它=)谢谢你的回答!这将不容易复制为WPF画笔,但可能值得一试。我会让这个问题再等一会儿=)