svg学习笔记

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

svg可以理解为视图缩放器。
学习它,个人认为重要的是搞清每个标签的内容,最终弄成web端界面将图片放好后导出成带svg标签的代码从而替代从c#工具端导出的繁琐过程,以及需要大量的的自主练习。

一、svg是什么?

svg是一种基于XML的矢量图形格式(矢量图只能靠软件生成,这种类型的图像文件包含独立的分离图像,可以自由无限制的重新组合,文件中的图形元素称为对象,每个对象都是一个自成一体的实体,它具有颜色、形状、轮廓、大小和屏幕位置等属性。其最大的优点,是它不受分辨率的影响。因此在印刷时,可以任意放大或缩小图形而不会影响出图的清晰度,可以按最高分辨率显示到输出设备上。适用于图形设计、文字设计和一些标志设计、版式设计等。但它也有一个最大的缺点,就是难以表现色彩层次丰富的逼真图像效果),用于在Web和其他环境中显示各种图形;它允许我们编写可缩放的二维图形,并可通过CSS或JavaScript进行操作。
注:矢量图与位图的区别:在这里插入图片描述

二、svg的作用

1.为什么使用svg

SVG最能够响应当前Web开发对可伸缩性,响应性,交互性,可编程性,性能和可访问性的要求。
因为SVG是基于矢量的,所有在放大图形时不会出现任何降低或丢失保真度的情况。它们只是重新绘制以适应更大的尺寸,这使得它非常适合多语境场景,例如响应式Web设计。

2.使用它可以做什么

可以解决现代维保开发中许多最棘手的问题,因为其具备以下各种特性:
1.可扩展性和响应能力
SVG是使用形状、数字和坐标(而不是像素网格)在浏览器中渲染图形,这使得它具有分辨率无关性和无限可伸缩性。如果你仔细想想就可发现,不管你是用钢笔还是用写字板,创建圆形的指令都是相同的,只是比例发生变化。
使用SVG,我们可以组合不同的形状、路径和文本元素来创建各种视觉效果,并确保它们在任何尺寸大小下看起来都十分的清晰明快。
相比之下,基于栅格的格式(如GIF,JPG和PNG)具有固定的尺寸,这使得它们在缩放时会像素化。尽管各种响应性图像技术已经证明对像素图形有价值,但它们永远无法真正与SVG的无限扩展(伸缩)能力竞争。

2、可编程性和交互性
SVG是完全可编辑和可脚本编写的,我们可以通过CSS或JavaScript将各种动画和交互添加到绘图中。
3、无障碍
SVG文件是基于文本的,可以进行搜索和索引。这使得它们可以通过屏幕阅读器、搜索引擎和其他设备被阅读。
4、性能
影响Web性能的一个最重要方面是网页上使用的文件的大小。与栅格图形(如GIF,JPG和PNG)相比,SVG图形通常是较小的文件。
使用svg的常见案例:简单的插图和图表、徽标和图标、动画、交互性(图表、信息图表、地图等)、特殊效果、构建接口和应用程序。

案例:

<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">

<svg xmlns="http://www.w3.org/2000/svg" version="1.1"> //xmlns指的是svg的命名空间
  <circle cx="100" cy="50" r="40" stroke="black"
  stroke-width="2" fill="red" />
</svg
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值