PbootCMS教程
html5教程
CMS教程
网页设计
bootstrap教程
扁平化设计
手机网站教程
HTML5动态
css3教程
前端设计
SVG进阶 | SVG剪裁路径
时间:2016-03-09
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;" />
复制代码
下面左边的图像没有使用剪裁路径。右边的图像使用了文字剪裁路径。
本文版权属于jQuery之家,转载请注明出处:
http://www.htmleaf.com/ziliaoku/ ... g/201507032160.html
上一篇:SVG进阶 | SVG过滤器(SVG Filters)
下一篇:纯js和CSS3炫酷自动幻灯片特效
相关文章
如何将 HTML5 性能发挥到极致
由于实际运行环境是在浏览器中,因此性能还取决于JavaScript解释器的效率,指定的FPS帧速在低性能解释器中可能不会
HTML5 VideoAPI,打造自己的Web视频播放器
本文将使用HTML5提供的VideoAPI做一个自定义的视频播放器,需要用到HTML5提供的video标签、以及HTML5提供的对JavascriptAP
HTML5 手势检测原理和实现
随着 Hybrid 应用的丰富,HTML5 工程师们已经不满足于把桌面端体验简单移植到移动端,他们觊觎移动原生应用人性化的
4分钟学会网页样式[译]
你想要在自己网站上分享一个产品,或者是一个作品集,又或者仅仅只是一个灵感。在你发布到网上之前,你想让它
H5你真的了解吗?(绝对干货)
H5广告,包括H5广告的设计流程,究竟有什么讲究,和阶段。为了能帮助更多的人了解H5广告,我专门做了一个讲义。
2015-2016前端架构体系技术精简版
本文主要内容有:框架与组件、构建生态、开发技巧与调试、html、css与重构、native/hybrid/桌面开发、前端/H5优化、全
最新文章
有关HTML5页面在iPhoneX适配问题
这篇文章主要介绍了有关HTML5页面在iPhoneX适配问题,需要的朋友可以参考下
html5中canvas图表实现柱状图的示例
本篇文章主要介绍了html5中canvas图表实现柱状图的示例,本文使用canvas来实现一个图表,小编觉得挺不错的,现在分享给大家
Adobe Html5 Extension开发初体验图文教程
基于HTML5的WebGL经典3D虚拟机房漫游动画
手机端用rem+scss做适配的详解
canvas 实现 github404动态效果的示例代码
关于h5中的fetch方法解读(小结)
html5实现移动端适配完美写法
localStorage、sessionStorage使用总结
HTML5响应式(自适应)网页设计的实现
SVG实现多彩圆环倒计时效果的示例代码
HTML5打开手机扫码功能及优缺点