如何将路径几何图形用作BitmapSource(或任何图像数据)的掩码?几何图形、如何将、路径、掩码

2023-09-03 11:52:58 作者:萝莉杀手.

假设我有一个BitmapSource(实际上,如果需要的话,我也可以访问原始像素),我如何使用一个路径几何作为掩码来剪切图像的某些部分?

   01234567890123456789
 0 --------------------
 1 |   +     +        |
 2 |      *           |
 3 |          *    )  |
 4 |    *             |
 5 |            (     |
 6 --------------------

假设我有一个描述从(0,0)到(8,3)的矩形的路径几何,我希望能够获得以下两个图像之一:

   01234567890123456789
 0 --------------------
 1 |   +              |
 2 |      *           |
 3 |                  |
 4 |                  |
 5 |                  |
 6 --------------------
推荐 都是好东东 中小学教师必备的10个教学工具

   012345678
 0 ---------
 1 |   +   |
 2 |      *|
 3 ---------

推荐答案

好的,那么我的示例应该可以用了。根据您的情况,这可能不是最好的表现,但这将是一个起点。

它应该是这样的。显然,根据您的情况,剪辑中的要点会有所不同,但您明白了这一点。

<Image Source="SomeImage.jpg">
            <Image.Clip>
                <PathGeometry>
                    <PathFigure StartPoint="0,0"
                                IsClosed="True">
                        <LineSegment Point="25,0" />
                        <LineSegment Point="25,25" />
                        <LineSegment Point="0,25" />
                    </PathFigure>
                </PathGeometry>
            </Image.Clip>
        </Image>