博客
关于我
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轴半径

    示例代码:

    圆形与椭圆形

    • 圆形:由圆心坐标(cx、cy)和半径(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/

    你可能感兴趣的文章
    Python:如何以非阻塞方式读取子进程的标准输出
    查看>>
    Python:如何使用 plotly 制作阴影区域或交替背景颜色?
    查看>>
    Python:如何根据日期时间获取值的计数
    查看>>
    python:如何检测串行 COM 上的设备名称/ID
    查看>>
    Python:如何模拟 datetime.utcnow()?
    查看>>
    Python:如果DataFrames之间的其他值匹配,则对DataFrame中的值求和
    查看>>
    Python:字典思维
    查看>>
    Python:将 HEX 字符串转换为字节
    查看>>
    Python:将列表与范围列表合并
    查看>>
    Python:将列表列表初始化为一定大小,
    查看>>
    Python:带有生成器的给定集合的幂集
    查看>>
    Python:按字符的位置拆分字符串
    查看>>
    Python:替换嵌套字典中的值
    查看>>
    Python:爬取数据出现response.status_code为403解决方法
    查看>>
    Python:爬取数据出现response.status_code为418解决方法
    查看>>
    Python:生成“元组集“;来自“元组列表“;不考虑顺序
    查看>>
    Python:生成具有趋势的随机时间序列数据(例如周期性、指数衰减等)
    查看>>
    Python:用渐进式数字重命名列表中的重复项而不对列表进行排序
    查看>>
    Python:矩形参数无效
    查看>>
    Python:语法进阶
    查看>>