动态svg图片简单制作
一、简介
#topics #no-box-shadow-img { box-shadow: none }
	
博主头像
svg图片格式不同于其它图片格式,svg图片本质上是一个xml文件,它内部是标记语言,可用文本编辑器打开编辑。
svg除了可以用ai这种制图软件制作以外,我们程序员也可以手写svg代码实现二次开发(从零画图不必要...不至于...)。
二、svg文件简单编辑
svg语法类似于html,且支持css语法,浏览器通过读取css来渲染动画。有趣的是,GitHub的 README.md 文件只支持少数html标签、属性,几乎完全不支持css样式,但是你插入带css的svg图片就没问题。
2.1 嵌套
<g>标签可以用于嵌套,包括嵌套子svg文件,拷贝进去就行。
<g>标签一般使用id属性,而<path> <circle>等标签一般使用class。添加动画的话在<style>标签中使用css即可。
2.2 调整大小
使用以下属性
width="366" height="366" viewBox="0 0 366 366"
前二者好理解,viewBox可有可无,有的话前两位一般是0,后两位最好和width、height保持一致。一般来说,只有<svg>主标签内的viewBox属性比较重要。
2.3 位移
想移动元素在图片中的位置,使用 transform="translate(x y)" 属性。
如你从其它svg中拷贝了一些图形过来,嵌套在<g>标签中,则在<g>标签中使用transform就能调整其位置。
如果xy为0,则图形在最左上角,图形中心的位置是width、height的一半。
2.4 嵌套其它图片格式
如果要在svg中嵌入png、jpg等图片,需要用到<image>标签。
调用远程图片的话,首先确保<svg>主标签内有xmlns:xlink="http://www.w3.org/1999/xlink",然后可以这样使用
<image xlink:href="url" x="0" y="0" width="200" height="200"/>
注意事项参考:https://cloud.tencent.com/developer/section/1423874
此外,远程调用存在一些问题,比如直接在页面中远程使用此svg图片,其中的<image>能显示。如果是被js渲染出的svg图片,则svg中的<image>就可能不被加载。所以我推荐将图片直接存在svg图片中。
使用base64编码即可:
>>在线图片base64编码工具<<
将编码结果放入 xlink:href=" 这里 " 即可。
就酱 (๑•̀ㅂ•́)و✧
动态svg图片简单制作的更多相关文章
- 彰显个性│制作一个独一无二的动态 svg 头像
		一.头像预览 看一下博主的动态图像,是不是很炫酷,想不想拥有一个? 这是一个 svg 图片,svg 图片不仅可以通过制图软件制作外,其实也可以通过代码进行开发 因为 svg 本质上是一个下 xml 文 ... 
- 动态插入图片到 svg 中
		动态插入图片到 svg 中使用 createElementNS 来创建svg标签,通过setAttributeNS 来设置属性, 要注意两点,创建的时候要有'http://www.w3.org/200 ... 
- Svg图片在asp网站上的使用
		最近需要做一个动态的根据后台的返回数据而动态显示的导航图,然后我就采用了jquery+ajax+SVG矢量图来实现这个功能. 首先,客户给了个ai的矢量图,我对这一块不懂就找以前同事帮我转成了svg图 ... 
- Python3.7将普通图片(png)转换为SVG图片格式并且让你的网站Logo(图标)从此”动”起来
		原文转载自「刘悦的技术博客」https://v3u.cn/a_id_148 在之前的几篇文章中,介绍了业界中比较火爆的图片技术SVG(Scalable Vector Graphics),比如Iconf ... 
- Adobe Edge Animate –解决图形边缘精确检测问题-通过jquery加载svg图片
		Adobe Edge Animate –解决图形边缘精确检测问题-通过jquery加载svg图片 版权声明: 本文版权属于 北京联友天下科技发展有限公司. 转载的时候请注明版权和原文地址. 在edge ... 
- WP8.1开发中关于如何显示.gif格式动态格式图片方法
		这几天又遇到个问题,就是如何显示动态图片,本来以为和显示静态图片一样,谁知不行,在网上一查才知道WP8.1不支持.gif格式动态图片的显示: 后来又在MSDN论坛上查找,也有人问类似的问题,后来就大概 ... 
- SVG交互动画制作
		前面我们已经说过了要怎样制作CSS3动画,但是SVG动画一直都没有时间研究过,正好趁现在有一点时间静下心来研究一下. 一般来说,常见前端动画实现方案分为三种,CSS3动画,HTML动画(SVG动画), ... 
- vue-cli3项目中解决动态引入图片img404的问题
		博主最近手头再做一个项目,需要调用天气接口,并且还要动态显示天气相关图片icon. 本来以为没什么大问题,结果硬生生被这个动态图片路径搞得民不聊生(博主还是 too young,too simple~ ... 
- UWP应用载入SVG图片的兼容性方案
		原文 UWP应用载入SVG图片的兼容性方案 新版本<纸书科学计算器>的更新点之一,就是优化了表达式的显示方式.在旧版本中,表达式里的符号是用png图片显示的,当用户放大看的时候会发现一些锯 ... 
随机推荐
- springboot整合rabbitMq实现消息延时发送
			实现思路:利用mq的ttl设置消息失效时间 当达到设置时间后通过交换机到达死信队列中,消费者端绑定读取死信队列中信息来达到延时发送消息的功能. demo 如下: (1)在pom.xml 中引入rabb ... 
- linux netfilter 五个钩子点
			参考http://www.linuxtcpipstack.com/685.html#NF_INET_PRE_ROUTING https://opengers.github.io/openstack/o ... 
- Markdown文档示例
			目录 我是大标题,和一级标题长得一样 我是次级标题,和二级标题长得一样 这是一级标题 这是二级标题 一直到六级标题 列表 表格 分割线 字体 超链接 插入图片 引用 代码块 注意下面每一个标记如果和内 ... 
- Java的比较器Comparable与Comparator
			在Java中有两个比较器:Comparable.Comparator 对于Integer.Double等等类型,可以直接对他们进行比较,因为已经实现了比较的方式,然而在平时常常会面临需要对集合进行排序 ... 
- list scheduling algorithm 指令调度 —— 笔记
			作者:Yaong 出处:https://www.cnblogs.com/yaongtime/articles/14033444.html 版权:本文版权归作者和博客园共有 转载:欢迎转载,但未经作者同 ... 
- Earmaster——音乐爱好者必备软件
			有很多喜爱音乐但是却由于一些"不可抗力"而没能学习到音乐基础的小伙伴,相信你们在自学乐器或是声乐的时候总会因为基础不扎实而看不懂一些复杂的乐谱,换别的曲子练习之后发现依旧看不懂,由 ... 
- 【PYTEST】第三章参数化
			知识点: 参数化 1. parametrize() 参数化测试用例 实际工作中,我们不可能就传一组数据,参数化支持多组数据测试,并且每组都会去执行,parametrize(), 第一个参数用逗号开分隔 ... 
- linkedin第三方登陆
			到linkedin注册成为开发者:https://developer.linkedin.com/zh-cn 成功后,创建应用,填写重定向地址,得到appid和appkey 使用这个sdk https: ... 
- yii2.0 模态框简单使用
			1 <?php foreach($data as $model) :?> 2 3 <!-- 按钮触发模态框 --> 4 <button class="btn b ... 
- Javascript严格模式与一般模式的区别
			严格模式是指使代码在严格条件下运行.如果你在JavaScript脚本的头部看到"use strict",那么就表明当前处于严格模式下.严格模式主要是为了消除JavaScript语法 ... 
