博客
关于我
SVG基础知识速查笔记
阅读量:277 次
发布时间:2019-03-01

本文共 1626 字,大约阅读时间需要 5 分钟。

SVG(可缩放矢量图形)简介

SVG(Scalable Vector Graphics),即可缩放矢量图形,是一种用于描述二维矢量图形的图形格式。它采用XML格式定义图形,支持跨平台显示,广泛应用于网页设计、图表生成以及移动应用开发等领域。

SVG的优点

  • 文件体积小:相比位图格式,SVG文件体积通常更小,尤其是在高分辨率图像中。
  • 无锯齿:矢量图形在缩放、旋转或绘制时不会失真。
  • 灵活性:支持多种图形元素和样式属性,满足多样化的设计需求。
  • SVG图形元素

    SVG主要包括以下图形元素:

  • 矩形(<rect>:定义矩形,支持圆角矩形。
  • 圆形(<circle>:定义圆形,圆心和半径决定图形。
  • 椭圆(<ellipse>:定义椭圆,圆心、水平半径和垂直半径决定图形。
  • 线段(<line>:定义直线段,起点和终点坐标决定图形。
  • 折线和多边形(<polyline>:通过点坐标定义折线或多边形。
  • 路径(<path>:最灵活的图形元素,可用于绘制复杂图形。
  • 矩形

    矩形是SVG中最基础的图形元素,具有以下属性:

    • x:左上角横坐标
    • y:左上角纵坐标
    • width:宽度
    • height:高度
    • rx:圆角矩形的X轴半径
    • ry:圆角矩形的Y轴半径

    示例代码:

    圆形与椭圆形

    • 圆形:由圆心坐标(cxcy)和半径(r)决定。
    • 椭圆:由圆心坐标、水平半径(rx)和垂直半径(ry)决定。

    示例代码:

    线段

    线段由起点和终点坐标决定。

    示例代码:

    多边形与折线

    多边形和折线均通过多个点坐标定义图形,主要区别在于是否连接起点和终点。

    示例代码:

    路径

    路径(<path>)是最灵活的图形元素,支持多种绘图命令。

    示例命令

    • M:移动到指定坐标
    • L:画直线到指定坐标
    • C:画三次贝塞尔曲线
    • S:画简化的三次贝塞尔曲线
    • Q:画二次贝塞尔曲线
    • T:画简化的二次贝塞尔曲线
    • A:画椭圆曲线
    • Z:闭合路径

    示例代码:

    文字

    在SVG中使用<text>标签绘制文字,支持多种样式属性。

    示例代码:

    I Love
    D3

    样式

    SVG支持丰富的样式属性,如填充色、边框颜色、透明度等,样式可直接在元素中定义或使用类名。

    常见样式属性

    • fill:填充色
    • stroke:边框颜色
    • stroke-width:边框宽度
    • opacity:透明度
    • font-family:字体
    • font-size:字体大小
    • font-weight:字体粗细
    • font-style:字体样式
    • text-decoration:文字装饰

    标记

    标记(<marker>)用于定义可重复使用的图形元素,如箭头。

    示例代码:

    滤镜

    滤镜(<filter>)用于定义图形效果,如模糊、阴影等。

    示例代码:

    渐变

    SVG支持线性渐变(<linearGradient>)和放射性渐变(<radialGradient>)。

    示例代码:

    通过以上内容,用户可以根据需要选择和使用SVG的相关功能,轻松创建高质量的矢量图形。

    转载地址:http://aegx.baihongyu.com/

    你可能感兴趣的文章
    Openlayers图文版实战,vue项目从0到1做基础配置
    查看>>
    Openlayers实战:modifystart、modifyend互动示例
    查看>>
    Openlayers实战:判断共享单车是否在电子围栏内
    查看>>
    Openlayers实战:加载Bing地图
    查看>>
    Openlayers实战:绘制图形,导出geojson文件
    查看>>
    Openlayers实战:绘制图形,导出KML文件
    查看>>
    Openlayers实战:绘制多边形,导出CSV文件
    查看>>
    Openlayers实战:绘制带箭头的线
    查看>>
    Openlayers实战:输入WKT数据,输出GML、Polyline、GeoJSON格式数据
    查看>>
    Openlayers实战:非4326,3857的投影
    查看>>
    Openlayers高级交互(10/20):绘制矩形,截取对应部分的地图并保存
    查看>>
    Openlayers高级交互(11/20):显示带箭头的线段轨迹,箭头居中
    查看>>
    Openlayers高级交互(14/20):汽车移动轨迹动画(开始、暂停、结束)
    查看>>
    Openlayers高级交互(15/20):显示海量多边形,10ms加载完成
    查看>>
    Openlayers高级交互(16/20):两个多边形的交集、差集、并集处理
    查看>>
    Openlayers高级交互(17/20):通过坐标显示多边形,计算出最大幅宽
    查看>>
    Openlayers高级交互(18/20):根据feature,将图形适配到最可视化窗口
    查看>>
    Openlayers高级交互(19/20): 地图上点击某处,列表中显示对应位置
    查看>>
    Openlayers高级交互(2/20):清除所有图层的有效方法
    查看>>
    Openlayers高级交互(20/20):超级数据聚合,页面不再混乱
    查看>>