博客
关于我
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/

    你可能感兴趣的文章
    nodejs libararies
    查看>>
    nodejs-mime类型
    查看>>
    nodejs中Express 路由统一设置缓存的小技巧
    查看>>
    Node入门之创建第一个HelloNode
    查看>>
    NotImplementedError: Cannot copy out of meta tensor; no data! Please use torch.nn.Module.to_empty()
    查看>>
    npm run build 失败Compiler server unexpectedly exited with code: null and signal: SIGBUS
    查看>>
    npm WARN deprecated core-js@2.6.12 core-js@<3.3 is no longer maintained and not recommended for usa
    查看>>
    npm和yarn的使用对比
    查看>>
    npm报错unable to access ‘https://github.com/sohee-lee7/Squire.git/‘
    查看>>
    npm的问题:config global `--global`, `--local` are deprecated. Use `--location=global` instead 的解决办法
    查看>>
    NR,NF,FNR
    查看>>
    nrf开发笔记一开发软件
    查看>>
    NSDateFormatter的替代方法
    查看>>
    NSOperation基本操作
    查看>>
    NSSet集合 无序的 不能重复的
    查看>>
    NT AUTHORITY\NETWORK SERVICE 权限问题
    查看>>
    ntko文件存取错误_苹果推送 macOS 10.15.4:iCloud 云盘文件夹共享终于来了
    查看>>
    nullnullHuge Pages
    查看>>
    numpy 用法
    查看>>
    Numpy如何使用np.umprod重写range函数中i的python
    查看>>