掌握SVG基础:从零开始学习

news2024/11/19 1:46:14

格栅图可以实现图片的清晰显示,但这也意味着如果要在各种设备上使用格栅图,就会增加大量不同规格的格栅图,以适应各种尺寸的设备。这也直接导致资源文件体积的增加,矢量图没有这个问题。本文将SVG代码编写与即时设计工具相结合,介绍SVG的基础知识。

什么是 SVG

SVG(Scalable Vector Graphics)它是一种图像文件格式,意思是可缩放矢量图形。它是基于XMLL的。(Extensible Markup Language),World Wide Web Consortium(W3C)该联盟正在开发中。它是一种开放的标准矢量图形语言,可以让你设计出令人兴奋、高分辨率、Web图形页面。

用户可以直接使用代码绘制图像,使用任何文本处理工具打开SVG格式图像,通过改变部分代码使图像具有交互功能,并可以随时插入HTML通过浏览器观看。

即时设计 - 可实时协作的专业 UI 设计工具即时设计是一款支持在线协作的专业级 UI 设计工具,支持 Sketch、Figma、XD 格式导入,海量优质设计资源即拿即用。支持创建交互原型、获取设计标注,为产设研团队提供一站式协同办公体验。icon-default.png?t=N7T8https://js.design/?source=csdn&plan=btt065

为了直观地显示SVG代码,我将使用即时设计制作一个矩形来显示SVG代码。

在即时设计软件中制作矩形,直接导出SVG格式文件

打开导出的.SVG格式文件,您可以看到相应的SVG代码

使用矩形工具绘制的图形对应于SVG中的标签。基本标签由四个基本属性定义:矩形的起点坐标x和y、矩形的width和height

当width与height值相等时,就会画出一个正方形。

SVG是可读的,易于理解和修改的,作为内联 SVG嵌入 HTML 文档时,可以通过 CSS 或 JavaScript 操作 SVG代码。因此, SVG格式与传统 PNG、GIF 或 JPG 与图形格式相比,它更具灵活性和多功能性。

SVG的优点是什么?

SVG在应用过程中也有非常明显的优势。例如:

可扩展性和响应性

SVG使用形状、数字和坐标在浏览器中呈现图形,可以避免分辨率的影响,并具有无限的可伸缩性。SVG格式可以结合不同的形状、路径和文本元素来创造各种视觉效果,在任何尺寸下都非常清晰。相反,格栅格式(如GIF)、JPG和PNG)它们有固定的尺寸,所以它们在收缩时是像素化的。

可编程性和交互性

SVG格式可以编辑和编写脚本,所有类型的动画和交互都可以通过CSS和/或JavaScript添加到内联SVG图形中。

可访问性

SVG文件是基于文本的,所以当它嵌入到网页中时,它可以被搜索和索引。此外,还可以访问屏幕阅读器、搜索引擎和其他设备。

性能

影响网页性能的最重要因素之一是网页中使用的文件大小。SVG图形通常比位图文件格式小。

常见的 SVG实例

插图和图表

任何适合用钢笔和铅笔制作的传统绘图都应该完美地转化为 SVG格式。

标志和图标

logo和图标都是清晰锐利的。因此,SVG是logo和图标的最佳格式,SVG格式图标更容易访问和定位。

免费的SVG图标分享icon-default.png?t=N7T8https://js.design/community?category=detail&type=resource&id=65f1764f7ad3cda67792c650&source=csdn&plan=btt065

动画

您可以创建吸引人的动画,例如:

你可以使用 SVG格式图形的酷线画效果。

SVG代码可以和 CSS 动画以及 JavaScript 及其内置的 SMIL 交互动画功能。

交互性(图表、图形、信息图表、地图)

SVG可用于绘制数据,并根据用户操作或其他事件动态更新数据。

特殊效果

使用SVG可以实现许多实时效果,包括形状变形或不同的粘度效果,如带有外阴影的椭圆:

构建接口和应用程序

我们可以用SVG制作难度接口,并与HTML5、基于Web的应用程序和Internet应用程序进行合作(RIA)相结合。

支持SVG的浏览器

目前,大多数现代Web浏览器都支持SVG最重要、最基本的功能。

读到这里,我想你应该对SVG有一个初步的了解。然而,作为一名UI设计师,你仍然需要做很多实践。上述多次提到的即时设计工具是新一代的设计合作工具。它可以无缝地连接以前的工作,并支持SVG、Sketch、XD等文件的导入和导出是您进行UI创作练习的实用工具。

即时设计 - 可实时协作的专业 UI 设计工具即时设计是一款支持在线协作的专业级 UI 设计工具,支持 Sketch、Figma、XD 格式导入,海量优质设计资源即拿即用。支持创建交互原型、获取设计标注,为产设研团队提供一站式协同办公体验。icon-default.png?t=N7T8https://js.design/?source=csdn&plan=btt065

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1792005.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024050401-重学 Java 设计模式《实战代理模式》

重学 Java 设计模式:实战代理模式「模拟mybatis-spring中定义DAO接口,使用代理类方式操作数据库原理实现场景」 一、前言 难以跨越的瓶颈期,把你拿捏滴死死的! 编程开发学习过程中遇到的瓶颈期,往往是由于看不到前进…

[vue2项目]vue2+supermap[mapboxgl]+天地图之地图的初始化

Supermap参考教程 天地图 一、安装 1、终端:npm install supermap/vue-iclient-mapboxgl 2、在package.json文件的dependencies查看supermap/vue-iclient-mapboxgl依赖是否安装成功。 3、在mian.js全局引入 import VueiClient from supermap/vue-iclient-mapboxgl; Vue.use(…

[Classifier-Free] Classifier-Free Diffusion Guidance

1、背景 1)Classifier Guidance的问题 a)需要额外训练一个分类器(要基于噪声图像训练,因此无法用现成的预训练分类器),使得扩散模型的训练pipeline更加复杂 b)whether classifier guidance is s…

Vue05-数据绑定

一、数据绑定 1-1、v-bind指令 1-2、v-model指令 1、单项数据绑定: 2、双向数据绑定 注意: 表单元素,必须要有属性:value!!! 1-3、小结

钡铼技术BL103助力实现PLC到OPC-UA无缝转换新高度

在工业4.0的大背景下,信息物理系统和工业物联网的融合日益加深,推动了工业自动化向更高层次的发展。OPC UA作为一种开放、安全、跨平台的通信协议,在实现不同设备、系统间数据交换和互操作性方面扮演了核心角色。钡铼技术公司推出的BL103 PLC…

Java网络编程(上)

White graces:个人主页 🙉专栏推荐:Java入门知识🙉 🙉 内容推荐:Java文件IO🙉 🐹今日诗词:来如春梦几多时?去似朝云无觅处🐹 ⛳️点赞 ☀️收藏⭐️关注💬卑微小博主&a…

AI教我变得厉害的思维模式01 - 成长型思维模式

今天和AI一起思考如何培养自己的成长性思维。 一一核对,自己哪里里做到,哪里没有做到,让AI来微调训练我自己。 成长性思维的介绍 成长性思维(Growth Mindset)是由斯坦福大学心理学教授卡罗尔德韦克(Carol…

OpenWrt开启ipv6

原生版本的openwrt, 开启ipv6方法如下: 导航栏 网络->接口 编辑lan接口 DHCP Sever选项里 找到IPv6 Settings 选项: Designated master 不需要开启。RA-Service 设置为 server modeDHCPv6-Service 设置为 server mode 局域网即可确处理IPv6地址分配…

高并发短视频系统设计:架构、存储与性能优化全解

1. 系统概况与需求分析 1.1 短视频系统简介 当前短视频行业的快速发展,加上用户对高清、流畅观看体验的需求不断提升,对系统的并发处理能力、视频处理速度、存储效率等多方面都提出了极高的要求。那么,我们首先需要了解一个完整的短视频系统…

空间不够用了怎么办

空间告急啊哥们 整理一下清理空间有用的一些blog吧。 【linux】公共服务器如何清理过多的.cache缓存 linux根目录空间不足,追加空间到根目录下 【linux】linux磁盘空间 目录查看清理 和 文件查看清理

php: centos+apache 启动php项目

指导文件 :PHP: Apache 2.x on Unix systems - Manual 下载路径 :Index of /httpd configure: error: APR not found. 解决方案: APR(Apache Portable Runtime)库。APR是Apache HTTP服务器的可移植运行时环境&…

E: 仓库 “http://download...graphics:/darktable/xUbuntu_22.04 InRelease” 没有数字签名

问题 Ubuntu22.04装了darktable软件没装好,已经卸载了但是没卸载干净,终端使用 sudo apt update 出现的问题: 解决: sudo nano /etc/apt/sources.list.d/*darktable*.list找到了该软件的相关仓库条目:直接给他注释掉就行了。

HBuilderx uniapp启动微信小程序报错[error] Error: Fail to open IDE

1、打开微信呢开发者工具,添加项目 创建小程序--目录(目录选择自己小程序项目下的dist/dev/mp-weixin)点击确定之后微信开发者工具会自己去编译,等待一会便好,查看微信开发者工具控制台是否有报错日志 如果发现[插件 w…

韩顺平0基础学Java——第17天

p342-373 上课的时候一部分在纸上写过了,就不在这里复盘了。 this可以调用本类的所有方法,super可以调用父类的非private方法 Test Demo Rose Jack John jack 重写equals方法: 15: 1.调用C的有参构造器 2.进入B的有参构造器…

【C++面试50题】

以下是针对C程序员面试可能遇到的一些问题,涵盖了从基础语法、面向对象、STL、内存管理、模板、异常处理、并发编程等多个方面。 ### 基础概念与语法 1. C与C的主要区别是什么? 2. 什么是构造函数和析构函数?它们何时被调用? 3. 什…

【qt】多窗口开发

多窗口开发 一.应用场景二.嵌入的窗口1.设计Widget窗口2.创建窗口3.添加窗口4.总代码 三.独立的窗口1.创建窗口2.显示窗口 四.总结 一.应用场景 多窗口,顾名思义,有多个窗口可以供我们进行操作! 截个小图,你应该就知道了 OK,话不多说,直接开干,先来设计我们的主窗口 需要蔬菜…

场外个股期权标的有哪些?

今天带你了解场外个股期权标的有哪些?场外个股期权是一种金融衍生品,它不在交易所内进行交割,而是在交易所以外的场所进行交易的股票期权合约。 场外个股期权标的有哪些? 场外个股期权的标的通常包括A股市场上的融资融券标的&…

godot.bk5:how to change the scene

control:界面层,点击start进入map extends Controlonready var start $Button # Called when the node enters the scene tree for the first time. func _ready():start.connect("button_down", self._on_pressed_)pass # Replace with fun…

西门子学习笔记6 - TCP通讯

1、主站设置 1、添加两个PLC在网络组态进行链接在一起,使用tcp链接 2、设置主站IP地址为:192.168.1.1 3、添加TSEND_C功能块 4、设置功能块参数连接 5、设置如下所示(连接参数设置) 6、设置如下所示(连接块参数设置&a…

调用讯飞星火API实现图像生成

目录 1. 作者介绍2. 关于理论方面的知识介绍3. 关于实验过程的介绍,完整实验代码,测试结果3.1 API获取3.2 代码解析与运行结果3.2.1 完整代码3.2.2 运行结果 3.3 界面的编写(进阶) 4. 问题分析5. 参考链接 1. 作者介绍 刘来顺&am…