【问题标题】:Draw rectangles over bitmapimage in WPF在 WPF 中的位图图像上绘制矩形
【发布时间】:2013-05-23 18:58:51
【问题描述】:

我正在尝试找出在 wpf 中的图像上绘制矩形的最佳方法。当用户单击缩略图图像中的某处时,用户单击的区域应标有半透明矩形。这很简单。我只是在放置在 BitmapImage 上的画布上添加了一个不透明的矩形。问题是当用户多次单击同一区域时,将在前一个矩形上添加一个新矩形,并且由于半透明,组合矩形将更暗。请看图:

所以,我的问题是:我应该如何绘制矩形以防止这种行为?无论用户点击一个区域或重叠区域多少次,该区域将始终具有相同的半透明颜色。

谢谢

【问题讨论】:

    标签: wpf bitmapimage


    【解决方案1】:

    我不确定您是否想要一个新的矩形来使前一个矩形消失或在组合多个矩形时防止变暗。

    如果您只想显示一个矩形

    不是每次都创建一个新的Rectangle,而是只使用一个Rectangle 元素(它甚至可以在表单启动时定义)并隐藏它。然后,当用户单击缩略图时,只需显示此 Rectangle 并适当设置其位置和大小。

    如果您想组合多个矩形而不产生变暗效果

    控制重叠矩形颜色混合的一种可能方法是使用Path 并将RectangleGeometry 对象添加到带有FillRule="NonZero" 集的GeometryGroup。查看这篇文章了解更多信息:http://mark-dot-net.blogspot.com/2008/05/combining-paths-in-xaml-for-silverlight.html

    【讨论】:

    • 感谢您的回复!我会试试你的解决方案然后回来。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-05
    • 2016-09-22
    • 2020-05-08
    • 2018-09-13
    相关资源
    最近更新 更多