SVG(Scalable Vector Graphics)是基于 XML 的一种矢量图形格式,它即可以作为单独的图形文件使用也可以嵌入到网页中并由 JavaScript 来操作,非常方便和灵活。SVG 在较新的浏览器中都支持,包括 Firefox 1.5,Opera 8.0,Safari 3.0.4,Chrome 1.0 和 IE 9 等。

在 SVG 中可以直接画出直线,矩形,圆形,多边形等。或者可以用更加一般的路径(path)元素,画出用椭圆弧或者贝塞尔曲线连接的复杂形状。例如:

<?xml version="1.0"?>
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="480" height="96" viewBox="0 0 480 96">
<g id="line" stroke="rgb(0,127,127)" stroke-width="12">
<line x1="10" y1="10" x2="86" y2="86"/>
<line x1="10" y1="86" x2="86" y2="10"/>
</g>
<g id="rect" transform="translate(96,0)" fill="rgb(255,0,0)">
<rect x="0" y="0" width="96" height="96" rx="20"/>
</g>
<g id="polygon" transform="translate(192,0)" stroke="rgb(51,51,51)" fill="gray" stroke-width="5">
<polygon points="24,64 48,32 72,64"/>
</g>
<g id="circle" transform="translate(288,0)" fill="rgb(0,255,0)">
<circle id="circle" cx="48" cy="48" r="48"/>
</g>
<g id="path" transform="translate(384,0)" stroke="black" stroke-width="3" fill="none">
<path d="M 6 6 C 3 60, 90 20, 90 90 z"/>
</g>
</svg>

参考资料:
[1] 维基百科 - 可缩放矢量图形
[2] MDN - SVG 教程
[3] W3School - SVG 教程
[4] MSDN - SVG
[5] Resolution Independence With SVG | Smashing Coding
[6] SVG-edit - A complete vector graphics editor in the browser
[7] Method Draw, the SVG Editor for Method of Action
[8] ScriptDraw 2.0
[9] Raphael Icons
[A] 30 Awesome And Free Flat Icon Sets
[B] svgweb - SVG for Web Browsers using Flash
[C] CSS-Tricks - Using SVG

SVG 矢量图形格式的更多相关文章

  1. JPG、PNG、GIF、SVG 等格式图片区别

    1.图片 2. 前言 首先,我们要清楚的是,图片从类型上分,可以分为 位图 和 矢量图. 位图:位图又叫点阵图或像素图,计算机屏幕上的图是由屏幕上的发光点(即像素)构成的,每个点用二进制数据来描述其颜 ...

  2. ttf,eot,woff,svg,字体格式介绍及使用方法

    而由于网页中使用的字体类型,也是各浏览器对字体类型有不同的支持规格. 字体格式类型主要有几个大分类:TrueType.Embedded Open Type .OpenType.WOFF .SVG. T ...

  3. Python3.7将普通图片(png)转换为SVG图片格式并且让你的网站Logo(图标)从此”动”起来

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_148 在之前的几篇文章中,介绍了业界中比较火爆的图片技术SVG(Scalable Vector Graphics),比如Iconf ...

  4. HTML5: SVG (可缩放矢量图形)

    ylbtech-HTML5: SVG (可缩放矢量图形) 可缩放矢量图形是基于可扩展标记语言(标准通用标记语言的子集),用于描述二维矢量图形的一种图形格式.它由万维网联盟制定,是一个开放标准. 1. ...

  5. SVG(可缩放矢量图形)

        SVG可缩放矢量图形(Scalable Vector Graphics)是基于可扩展标记语言(XML),用于描述二维矢量图形的一种图形格式.SVG是W3C("World Wide W ...

  6. 利用PS自动切图、支持svg且支持icoMoon——再也不用四处去转格式了

    今天想导出svg格式的图片支持webFont,结果AI打不开了,文件好像损坏了,于是就想办法在PS里面导出. 网上搜索到一篇文章,腾讯的 http://isux.tencent.com/ps-phot ...

  7. [Swift通天遁地]八、媒体与动画-(5)使用开源类库绘制文字、图形、图像、图表、SVG(可缩放矢量图形)

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  8. Logo小变动,心境大不同,SVG矢量动画格式网站Logo图片制作与实践教程(Python3)

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_207 曾几何时,SVG(Scalable Vector Graphics)矢量动画图被坊间称之为一种被浏览器诅咒的技术,只因为糟糕 ...

  9. HTML5 学习总结(四)——canvas绘图、WebGL、SVG

    一.Canvas canvas是HTML5中新增一个HTML5标签与操作canvas的javascript API,它可以实现在网页中完成动态的2D与3D图像技术.<canvas> 标记和 ...

随机推荐

  1. ArcGIS Runtime for Android开发教程V2.0(2)开发环境配置

    原文地址: ArcGIS Runtime for Android开发教程V2.0(2)开发环境配置 - ArcGIS_Mobile的专栏 - 博客频道 - CSDN.NET http://blog.c ...

  2. std::remove

    #include <algorithm> template< class ForwardIt, class T > ForwardIt remove( ForwardIt fi ...

  3. FireBug 调试JS入门

    http://www.blogjava.net/vincent/archive/2009/04/14/265591.html   http://baike.baidu.com/link?url=0S2 ...

  4. 简单的ftpserver设置

    一.安装: yum install vsftpd* 二. 修改配置文档如下: vi /etc/vsftpd/vsftpd.conf anonymous_enable=NO chroot_list_en ...

  5. 查看Linux系统的版本以及位数

    1.查看版本 http://jingyan.baidu.com/article/215817f7e360bd1edb142362.html[root@localhost usr]# lsb_relea ...

  6. Complete The Pattern #1

    Complete The Pattern #1 Task: You have to write a function pattern which creates the following patte ...

  7. oh my zsh命令

    打开某个文件夹地址,输入 cdf   命令,会自动进入这个文件夹命令行 open ./      打开当前命令行所在目录的文件夹

  8. BZOJ2500: 幸福的道路

    题解: 一道不错的题目. 树DP可以求出从每个点出发的最长链,复杂度O(n) 然后就变成找一个数列里最长的连续区间使得最大值-最小值<=m了. 成了这题:http://www.cnblogs.c ...

  9. UVA 1349 Optimal Bus Route Design 最优公交路线(最小费用流,拆点)

    题意: 给若干景点,每个景点有若干单向边到达其他景点,要求规划一下公交路线,使得每个景点有车可达,并且每个景点只能有1车经过1次,公车必须走环形回到出发点(出发点走2次).问是否存在这样的线路?若存在 ...

  10. sockaddr和sockaddr_in的区别(转载)

    原文链接:http://kenby.iteye.com/blog/1149001 struct sockaddr和struct sockaddr_in这两个结构体用来处理网络通信的地址. 在各种系统调 ...