我想在WPF中绘制一个矩形(通过代码)并填充其外部。
这是一个例子:
矩形的外部是灰色的(不透明度较低),矩形的填充是透明的。
最佳答案
您还可以使用半透明的Path
元素覆盖图像,该元素使用CombinedGeometry
将一个非常大的外部矩形与一个内部矩形结合在一起:
<Grid>
<Image Name="image" Source="C:\Users\Public\Pictures\Sample Pictures\Koala.jpg"/>
<Path Fill="#AAFFFFFF">
<Path.Data>
<CombinedGeometry GeometryCombineMode="Xor">
<CombinedGeometry.Geometry1>
<RectangleGeometry Rect="0,0,10000,10000"/>
</CombinedGeometry.Geometry1>
<CombinedGeometry.Geometry2>
<RectangleGeometry x:Name="transparentRect" Rect="150,100,200,100"/>
</CombinedGeometry.Geometry2>
</CombinedGeometry>
</Path.Data>
</Path>
</Grid>
现在,您可以根据需要以编程方式调整
Rect
成员的transparentRect
属性。关于c# - 填充矩形的外部,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17720970/