对于某种蒙版对话框,我希望能够在 C# 中反转几何。例如,我想反转一个矩形。我已经为填充的矩形工作,但对于未填充的矩形同样不起作用。
例如,如果我在画布上有这个矩形:
我用以下代码反转这个矩形:
RectangleGeometry line = new RectangleGeometry(_myRectangle);
RectangleGeometry geo = new RectangleGeometry(_myCanvasRectangle);
PathGeometry intersect = Geometry.Combine(line, geo, GeometryCombineMode.Xor, null);
drawingContext.DrawGeometry(
new SolidColorBrush(Color.FromArgb(99, _myObjectColor.R, _myObjectColor.G, _myObjectColor.B)),
new Pen(new SolidColorBrush(_myObjectColor), _myActualLineWidth),
intersect
);
我得到以下结果(灰色区域是填充区域)
有没有人可以实现只保留矩形(第一张图像中的黑线)并返回其余部分(填充灰色)的结果?
多谢你们!