SVG绘制图形

作者: 不住海边也喜欢浪 | 来源:发表于2016-12-19 10:56 被阅读252次

SVG和CANVAS

  • SVG - 实际开发中,多用SVG

      不依赖分辨率
      支持事件处理器
      不适合游戏
      大型渲染区域的程序(例如,百度地图)
    
  • Canvas

       依赖分辨率
       不支持事件绑定
       最适合网页游戏
       可以用图片格式保存图像
    

绘制图形

*创建 <svg></svg>
类似于canvas元素,但可以使用css样式,使用svg绘制图形,必须定义svg元素中

  • 矩形
    <rect id="rect" x="100" y="100" width="200" height="150" fill="red" stroke="green" stroke-width="5"></rect>


  • <circle cx="50" cy="50" r="50" fill="red"></circle>

  • 椭圆
    <ellipse cx="200" cy="50" rx="100" ry="50" fill="orange"></ellipse>

  • 直线
    <line x1="0" y1="0" x2="400" y2="400" stroke="white"></line>

  • 折线
    <polyline points="100,20 20,100 200,200 100,20" stroke="green" stroke-width="10" fill="pink"></polyline>

    <polygon points="100,20 20,100 200,200 100,20" stroke="green" stroke-width="10" fill="pink"></polygon>
    

注意:通过js设置序号属性是无效的,因为这些只读属性

SVG渐变

  • 创建 <svg></svg>
  • 在svg里追加defs元素
    <svg>
    <defs></defs>
    </svg>
  • 在defs里追加linearGradient元素
    <linearGradient x1="" y1="" x2="" y2=""></linearGradient>
    注意: 这四个值都是百分比
  • 在linearGradient里面追加stop元素
    <stop offset="" stop-color="" stop-opacity="">
    <stop offset="" stop-color="">
    offset: 值为百分比
    stop-color:设置渐变颜色
    stop-opacity:设置渐变颜色的透明度
  • 在defs下面追加<rect>,画出图形,并将上面设置的线性渐变,添加到矩形中
    使用fill属性,值为url(#渐变元素的id值)
    <rect x="0" y="0" width="400" height="400" fill="url(#def)">
  • 扇形渐变radialGradient,参考线性渐变

SVG高斯模糊效果

 <svg width="500" height="500"> 
   <defs> 

      <filter id="Gaussian_Blur"> 

            //fegaussianblur- 高斯模糊,stdDeviation - 设置模糊程度 
            <feGaussianBlur in="SourceGraphic" stdDeviation="3" /> 

      </filter>
   </defs>

   <rect x="0" y="0" width="400" height="400" filter="url(#def)">
 </svg>

相关文章

  • 技巧分享:使用SVG设计可灵活修改的曲线分割网页效果。

    本文介绍如何使用图形绘制工具(sketch、AI)绘制图形并拷贝SVG代码,使用Coolsite360插入SVG组...

  • Canvas

    介绍 SVG是构建XML树的方式来达到绘制图形的,canvas是通过调用相关的方法来绘制图形的。区别:SVG绘制图...

  • svg

    svg双闭合标签,默认宽高300*150 必须在svg标签内绘制图形 画线 line 绘制折线 polyline...

  • SVG 简单的图形绘制

    使用SVG绘制图形是非常简单的,SVG内置6个基本图形,和4个基本属性

  • mxgraph

    前端绘制图形有3种方式: HTML + CSS canvas svg 前端绘制图形优缺HTML + CSS简单。C...

  • SVG

    内容整理自网上! 1、什么是SVG? 2、SVG的优势: 3、绘制矢量图形 参考文档:https://develo...

  • 使用svg绘制图形,实现渐变效果以及模糊效果

    一、SVG-绘制图形 二、SVG-渐变 1、 设置线性渐变步骤 2、 扇形渐变radialGradient,参考线...

  • svg图形绘制公式

    //定义布局大小 //定义各种点连成的线的路径,填充色,笔触颜色和宽度,移动整体位置变化

  • Canvas 和 SVG 在浏览器中创建图形

    1.SVG 是一种使用 XML 描述 2D 图形的语言2.在 SVG 中,每个被绘制的图形均被视为对象。如果 SV...

  • 基于vue使用SVG绘制各种图形 上图等

    基于背景图进行绘制以及上图效果图svg绘制线矩形不规则图形等.png 主要代码 组件绘制代码

网友评论

    本文标题:SVG绘制图形

    本文链接:https://www.haomeiwen.com/subject/chzzmttx.html