一篇文章带你了解SVG 阴影

注意: Internet Explorer和Safari不支持SVG滤镜!

一、前言

defs 和 filte元素

所有互联网的SVG滤镜定义在元素中。元素定义短并含有特殊元素(如滤镜)定义标签用来定义SVG滤镜。

标签使用必需的id属性来定义向图形应用哪个滤镜?

二、feOffset 元素

1. 实例 1

元素是用于创建阴影效果。我的想法是采取一个SVG图形(图像或元素)并移动它在xy平面上一点儿。

偏移一个矩形(带),然后混合偏移图像顶部(含)。

 
 
 
 
  1.  
  2.  
  3.  
  4.  
  5. Note: Internet Explorer and Safari do not support SVG filters yet!

     
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  

运行效果:

代码解析:

  • 元素id属性定义一个滤镜的唯一名称。
  • 元素的滤镜属性用来把元素链接到"f1"滤镜。

2. 实例 2

现在,偏移图像可以变的模糊(含 )。

代码:

 
 
 
 
  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  

运行效果

代码解析:

  元素的stdDeviation属性定义了模糊量。

3. 实例 3

现在,制作一个黑色的阴影。

代码:

 
 
 
 
  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  

运行效果

代码解析:

 元素的属性改为"SourceAlpha"在Alpha通道使用残影,而不是整个RGBA像素。

4. 实例 4

现在为阴影涂上一层颜色。

代码:

 
 
 
 
  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  

代码解析:

 过滤器是用来转换偏移的图像使之更接近黑色的颜色。'0.2'矩阵的三个值都获取乘以红色,绿色和蓝色通道。降低其值带来的颜色至黑色(黑色为0)。

三、总结

本文基于Htm基础,主要介绍了通过SVG进行图像,阴影效果的呈现,feOffset元素在实际应用中对图像的阴影添加不一样的样式 ,呈现不一样的阴影层次。通过丰富的案例分析,效果图的展示,让读者能够更好理解和学习。

大家积极尝试,有时候看到别人实现起来很简单,但是到自己动手实现的时候,总会有各种各样的问题,切勿眼高手低,勤动手,才可以理解的更加深刻。

代码很简单,希望能够帮助你学习。

本文转载自微信公众号「前端进阶学习交流」,可以通过以下二维码关注。转载本文请联系前端进阶学习交流公众号。

分享题目:一篇文章带你了解SVG 阴影
文章URL:http://www.mswzjz.cn/qtweb/news20/327420.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能