SVG进阶 | SVG剪裁路径 - Web前端
作者:98wpeu发布时间:2026-05-17分类:网页前端技术浏览:74
导读:svg剪裁路径是指根据指定的路径或形状来剪裁SVG图形。应用了剪裁路径的SVG图形,在剪裁路径内部的图形可以被显示出来,在剪裁路径之外的图形会被隐藏。剪裁路径的例子下面是一个简单...
svg剪裁路径是指根据指定的路径或形状来剪裁SVG图形。应用了剪裁路径的SVG图形,在剪裁路径内部的图形可以被显示出来,在剪裁路径之外的图形会被隐藏。

剪裁路径的例子
下面是一个简单的SVG剪裁路径的例子:
<defs> <clipPath id="clipPath"> <rect x="15" y="15" width="40" height="40" /> </clipPath> </defs> <circle cx="25" cy="25" r="20" style="fill: #0000ff; clip-path: url(#clipPath); " />
这个例子定义了一个矩形的剪裁路径(<clipPath>中的<rect>元素)。在后面的SVG圆形中,通过style属性的clip-path指向了这个剪裁路径。
下面的左边图像是返回结果。右边的图像也是返回结果,但是它将剪裁路径一起显示出来了。
注意观察,只有在矩形剪裁路径内部的圆形才会被显示出来,之外的部分会被剪裁掉。
高级剪裁路径
你可以使用任何图形来作为剪裁路径。可以是圆形、椭圆、多边形或自定义路径。
在下面的例子中使用一条自定义路径来作为剪裁路径。这条剪裁路径会被应用到一个<rect>元素上。
<defs> <clipPath id="clipPath3"> <path d="M10,10 q60,60 100,0 q50,50 50,50 l40,0 l-40,40 l-100,-20"/> </clipPath> </defs> <rect x="5" y="5" width="190" height="90" style="stroke: none; fill:#00ff00; clip-path: url(#clipPath3);"/>
在下面的右边的图像是返回结果,左边的图像是没有使用剪裁路径的矩形。
在组(Groups)中应用剪裁路径
我们可以对一组SVG图形使用剪裁路径。实现的方法是将所有的图形放到一个<g>元素中,然后设置<g>元素的clip-pathCSS属性。下面是一个例子:
<defs> <clipPath id="clipPath4"> <rect x="10" y="20" width="100" height="20" /> </clipPath> </defs> <g style="clip-path: url(#clipPath4);"> <rect x="5" y="5" width="190" height="90" style="stroke: none; fill:#00ff00;"/> <circle cx="20" cy="20" r="20" style="stroke: none; fill: #ff0000;" /> </g>
在下面左边的图像是没有使用剪裁路径的图像。右边的图像是上面代码的返回结果。
文字剪裁路径
我们还可以使用文字来作为剪裁路径。使用SVG <text>来作为剪裁路径的一个好处是你可以自定义字体。下面是一个简单的文字剪裁路径的例子:
<defs> <clipPath id="clipPatH5"> <text x="10" y="20" style="font-size: 20px; ">this is a text</text> </clipPath> </defs> <g style="clip-path: url(#clipPath5);"> <rect x="5" y="5" width="190" height="90" style="stroke: none; fill:#00ff00;"/> <circle cx="20" cy="20" r="20" style="stroke: none; fill: #ff0000;" />
下面左边的图像没有使用剪裁路径。右边的图像使用了文字剪裁路径。
This is a text返回SVG教程目录
相关阅读
MDN clipPath
相关推荐
- Jquery倒计时源码分享 - Web前端
- jquery控制select的text/value值为选中状态 - Web前端
- jQuery 获取兄弟元素的几种不错方法 - Web前端
- jquery进行数组遍历如何跳出当前的each循环 - Web前端
- jQuery实现table隔行换色和鼠标经过变色的两种方法 - Web前端
- jquery得到iframe src属性值的方法 - Web前端
- jquery选择器使用详解 - Web前端
- jQuery实现鼠标经过图片预览大图效果 - Web前端
- HTML页面弹出居中可拖拽的自定义窗口层 - Web前端
- jquery跟js初始化加载的多种方法及区别介绍 - Web前端
- 网页前端技术排行
-
- 1分析Iconfont-阿里巴巴矢量常用图标库 - Web前端
- 2【第六章】Foundation之按钮和下拉功能 - Web前端
- 3jQuery编写widget的一些技巧分享 - Web前端
- 4在Mac/PC上远程调试iPhone/iPad上的网页 - Web前端
- 5基于jquery的滚动条滚动固定div(附演示下载) - Web前端
- 6jQuery实例教程:制作网页中可折叠的面板 - Web前端
- 7分享精心挑选的12款优秀jQuery Ajax分页插件和教程 - Web前端
- 8[Web前端]用javascript实现默认图片替代未显示的图片 - Web前端
- 9javascript原生和jquery库实现iframe自适应高度和宽度 - Web前端
- 最近发表
-
- WordPress随机显示特色图片插件:Random Post Thumbnails
- KeePass实现Chrome浏览器自动填充密码方法一
- LNMP一键包nginx 301强制跳转到https教程
- KeePass实现Chrome浏览器自动填充密码方法二
- #建站# 免费的VPS管理软件Xshell8/Xftp8中文版下载
- 使用Xshell 8连接VPS教程_电脑登录vps的方法
- WordPress评论界面添加烟花????效果
- 不同浏览器书签同步方案:坚果云+Floccus_详细使用教程
- iOS端KeePassXC客户端APP:Strongbox Password Safe
- 给WordPress评论中的Gravatar头像图片添加ALT属性


