百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

学下SVG矢量图形,你也是个小小艺术家!

myzbx 2025-04-26 19:40 3 浏览

SVG 全面教程

1. SVG 简介

SVG(Scalable Vector Graphics)是一种基于XML的矢量图形格式,可以在不损失质量的情况下任意缩放。

2. 基础语法

<svg width="200" height="200" xmlns="http://www.w3.org/2000/svg">
<rect x="10" y="10" width="100" height="100" fill="red" />
</svg>

[SVG演练场](
https://developer.mozilla.org/en-US/play
)

3. 基本形状

3.1 矩形

<rect x="10" y="10" width="100" height="50" fill="blue" stroke="black" stroke-width="2"/>

3.2 圆形

<circle cx="50" cy="50" r="40" fill="green"/>

4. 路径绘制

<path d="M10 10 L100 10 L100 100 Z" fill="none" stroke="black"/>

5. 渐变效果

<defs>
<linearGradient id="grad1" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" style="stop-color:rgb(255,255,0);stop-opacity:1" />
<stop offset="100%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
</linearGradient>
</defs>
<rect x="10" y="10" width="200" height="100" fill="url(#grad1)" />

6. 滤镜效果

<defs>
<filter id="blur">
<feGaussianBlur in="SourceGraphic" stdDeviation="5" />
</filter>
</defs>
<rect x="10" y="10" width="100" height="100" fill="blue" filter="url(#blur)"/>

7. 动画效果

<rect x="10" y="10" width="50" height="50" fill="red">
<animate attributeName="x" from="10" to="200" dur="3s" repeatCount="indefinite"/>
</rect>

8. 实际应用案例

8.1 简单图标

<svg width="100" height="100">
<circle cx="50" cy="50" r="40" fill="yellow" stroke="black" stroke-width="2"/>
<circle cx="35" cy="40" r="5" fill="black"/>
<circle cx="65" cy="40" r="5" fill="black"/>
<path d="M30 70 Q50 90 70 70" fill="none" stroke="black" stroke-width="2"/>
</svg>

8.2 复杂图形



<svg width="200" height="200">
<path d="M20,20 L180,20 L180,180 L20,180 Z M40,40 L160,40 L160,160 L40,160 Z"
fill="none" stroke="black" stroke-width="2"/>
<circle cx="100" cy="100" r="30" fill="red"/>
<line x1="100" y1="40" x2="100" y2="160" stroke="blue" stroke-width="2"/>
<line x1="40" y1="100" x2="160" y2="100" stroke="blue" stroke-width="2"/>
</svg>

参考资料

  1. MDN SVG参考
  2. Inkscape 绘图软件
  3. SVG演练场

相关推荐

建模大神都在用的软件,哝晓得不?

各位宝宝们,阿瑶又来啦!一日不见,甚是想念。今天阿瑶这篇文章是个连载文章连载四天大家走过路过不要错过哦!今天阿瑶先给大家来讲一讲Maya建模类型中的第一个多边形建模。各位宝宝们,赶紧拿好你们的小板凳,...

神器推荐 | 制作多边形网格从此不用愁

近来许多大数据分析、网络社群方面的PPT,特别喜欢使用多边形网格作为修饰,借以表示连接、关系、节点等抽象概念,比如▼虽然使用PPT自带的图形工具也能做出来,但是纯手工绘制那是相当耗时耗力,谁用谁知道▼...

谷歌最强推理模型gemini2.5pro登场,强的离谱~

25号晚上,谷歌直接放了一个大招,直接推出了gemini2.5pro的下一代推理模型。强到什么程度,据官网介绍的,在一系列需要高级推理的基准测试中都处于领先地位,并且是甩掉了后面模型一大截的差距。就好...

设计大神不传之秘,这个PPT隐藏的排版神器,让你提前1小时下班

最近好多学员在群里给我吐槽,说做工作汇报的时候经常碰到一大堆文字的时间轴页面,不管怎么排版都感觉又乱又丑,一眼看不到重点,就像这样:如果随便找一张模板套上去,很有可能显得浮夸:不如找来一张折线图,上升...

网站分享 | 想要作品有创意?不如学学如何玩转半色调吧

正当你想要为自己的设计作品增添新的创意元素发愁时,不如试试「半色调」能否给你带来新的灵感!什么是半色调?半色调又称灰度级,它是反映图像亮度层次、黑白对比变化的技术指标。也就是通过运用点、条纹或其他形...

想做半色调+低多边形+条纹效果?这个网站帮你一键生成!

如果想要为设计作品增添一些新意的元素,或许今天这个「矢量半色调」网站能带给你一些启发!什么是「半色调」效果呢,「半色调」是指运用点、条纹或其他形状的图案,根据元素大小或者疏密的不同,从而构成从远处看起...

Excalidraw-免费的白板应用,能够画各种流程图架构图

一款完全免费的手绘风格绘图在线应用,能快速画出漂亮的流程图、示意图甚至是图表。关于ExcalidrawExcalidraw是一款轻量的手绘风格电子白板在线应用,无论是Windows/macO...

时间轴动画怎么加才惊艳?简单,腾讯御用PPT设计师直接爆料

大家应该收集或者见过很多不错的时间轴的页面设计吧?时间轴算是PPT制作中经常遇到的页面类型,个人述职、项目路演、企业介绍等等,都会用到时间轴来让用户更加直观地了解个人或公司。比如腾讯的时间轴页:又比如...

图片无限放大也不会模糊的秘密,矢量图的那些事

当你想在你的文档或者幻灯片中插入一个图片,感觉图片太小排版不太美观,我们放大一下图片,发现图片因为放大而变得模糊,严重影响视觉感受。这个视频我会告诉如何让图片放大、再放大都不会失真的方法。首先我们先来...

用热搜的方式打开推文?

热搜,向来是全民瞩目的焦点。要是把热搜元素融入到推文之中,那推文的趣味性必定直线上升!想必大家都很好奇,怎样在SVG交互推文中打造出热搜效果呢?不少品牌方账号中,90%以上的内容都采用了SVG,交...

羊角螺线如何应用到平面设计中?

羊角螺线是一段数学函数曲线。多用作缓和曲线,缓和直路线与圆曲路线之间曲线变化的作用。羊角螺线的特点是,从坐标原点开始,起始曲率为0,函数曲线的曲率呈线性增长。也就是说,羊角螺线可以完美链接直线与任何圆...

cad转svg的软件有哪些?为你介绍这四个软件

cad转svg的软件有哪些?CAD(计算机辅助设计)是一种广泛使用的工具,用于创建和修改设计图纸。SVG(可缩放矢量图形)是一种开放标准,用于在Web上显示矢量图形。CAD转SVG是将CAD图纸转换为...

图片格式那么多,哪种更适合你?

本文介绍和比较几种常见图片文件格式的优缺点,并介绍不同的文件格式对Web应用程序性能的影响。有损vs无损图片文件格式有可能会对图片的文件大小进行不同程度的压缩,图片的压缩分为有损压缩和无损压缩两种。有...

一篇文章教会你使用SVG 画多边形

作者:前端进阶者来源:前端进阶学习交流大家好,我是前端进阶者。polygon元素定义了一个由一组首尾相连的直线线段构成的闭合多边形形状,最后一点连接到第一点。元素通常用于绘制具有多个(3个或更多)...

SVG 绘制曲折线

本节我们来学习如何在SVG中绘制曲折线,绘制曲折线可以使用<polyline>元素来实现。如何绘制曲折线曲折线就是通过一系列的直线连接多个点,然后组合成任意形状。曲折线可以通过S...