WPF 元素裁剪 Clip 属性

栏目: 编程工具 · 发布时间: 7年前

内容简介:本文介绍如何在 WPF 使用 Clip 裁剪元素在 WPF 的 UIElement 提供了 Clip 属性,这个属性默认是空,但是如果设置了这个属性就会对元素进行裁剪这个属性是一个 Geometry 属性,设置的值表示裁剪之后剩下的部分,如写一个简单的类继承 UIElement 然后对他进行裁剪

本文介绍如何在 WPF 使用 Clip 裁剪元素

在 WPF 的 UIElement 提供了 Clip 属性,这个属性默认是空,但是如果设置了这个属性就会对元素进行裁剪

这个属性是一个 Geometry 属性,设置的值表示裁剪之后剩下的部分,如写一个简单的类继承 UIElement 然后对他进行裁剪

class SisdecereYipuVayderyecallMawqere : UIElement
    {
        /// <inheritdoc />
        public SisdecereYipuVayderyecallMawqere()
        {
        }

        /// <inheritdoc />
        protected override void OnRender(DrawingContext drawingContext)
        {
            drawingContext.DrawRectangle(Brushes.Black,null,new Rect(10,10,100,100));
        }
    }

现在这个类会在 10,10 的坐标画出大小是 100 的矩形

WPF 元素裁剪 Clip 属性

对他裁剪,设置裁剪的是矩形裁剪

public SisdecereYipuVayderyecallMawqere()
        {
            Clip = new RectangleGeometry(new Rect(30, 30, 50, 50));
        }

WPF 元素裁剪 Clip 属性

从图片很难看出来不同,只是可以看到两个矩形,第一个矩形比较大

对他进行圆形裁剪

public SisdecereYipuVayderyecallMawqere()
        {
            Clip = new EllipseGeometry(new Point(30, 30), 10, 10);
        }

WPF 元素裁剪 Clip 属性

可以看到显示的是圆形

因为设置 Clip 属性是一个裁剪的窗口,只有在裁剪区域之内才可以显示

因为 Geometry 是可以做到不连续的,所以可以做出部分的透明,如裁剪两个矩形

public SisdecereYipuVayderyecallMawqere()
        {
            Geometry geometry = new RectangleGeometry(new Rect(10,10,10,10));
            geometry = Geometry.Combine(geometry, new RectangleGeometry(new Rect(30, 30, 10, 10)),
                GeometryCombineMode.Union, null);

            Clip = geometry;
        }

WPF 元素裁剪 Clip 属性

WPF 通过 DrawingContext DrawImage 绘制图片


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

STL源码剖析

STL源码剖析

侯捷 / 华中科技大学出版社 / 2002-6 / 68.00元

学习编程的人都知道,阅读、剖析名家代码乃是提高水平的捷径。源码之前,了无秘密。大师们的缜密思维、经验结晶、技术思路、独到风格,都原原本本体现在源码之中。 这本书所呈现的源码,使读者看到vector的实现、list的实现、heap的实现、deque的实现、Red Black tree的实现、hash table的实现、set/map的实现;看到各种算法(排序、查找、排列组合、数据移动与复制技术......一起来看看 《STL源码剖析》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试