android开发笔记之xml矢量图片
xml矢量图片
缩放矢量图形(英语:Scalable Vector Graphics,SVG)是一种基于可扩展标记语言(XML),用于描述二维矢量图形的图形格式。
.svg格式相对于.jpg、.png甚至.webp具有较多优势:
图像与分辨率无关,不会变形,适配安卓的各种分辨率;
省空间。体积小,一般复杂图像也能在数KB搞定,图标更不在话下
xml矢量图片的生成
方式一:通过android studio 将svg格式的图片转换成 xml格式的矢量图片:
(1) 通过阿里的iconfont网址,下载对应的在线矢量图:
https://www.iconfont.cn/home/index?spm=a313x.7781069.1998910419.2
我们可以通过这个网站,查询下载各种svg的图片,关键是还可以根据自己的需要来调节各种颜色:
(2)通过android studio,将svg图片转换为xml矢量图片。
将项目选择为Project Files, 鼠标选中drawable文件夹–右键–New–Vector Asset:
打开Configure Vector Asset,选择Local file(AVG,PSD),从这我们也可以看出PSD格式的图片也是可以直接转换为xml矢量图片的:
然后,我们就可以看到转换后的xml格式的矢量图片:
方式二:通过android studio,直接选择xml矢量图片
将项目选择为Project Files, 鼠标选中drawable文件夹–右键–New–Vector Asset:
选择Clip Art,再点击Clip Art后面显示的图标(上图为机器人小图标):
选择我们需要的矢量图片,然后就可以自动生成我们需要的xml矢量图片。
方式三:svg2VectorDrawable生成xml矢量图片
在Android Studio中, File -> Setting -> Plugins -> Browser repositories -> 搜“svg2VectorDrawable” -> 安装并重启Android Studio,再次进来后顶部工具栏会多一个图标:
然后点击SVG:
就可以直接在对应位置生成xml矢量图片。
xml矢量图片的预览
那我们如何预览我们的xml矢量图片呢?有二种方式:
方式一:Android Studio预览功能
将xml矢量图片复制到对应项目的drawable文件夹中,然后直接可以打开预览:
方式二:SVG2Vector编辑预览工具
这是1款Java Applet可视化小程序,支持快速处理svg或svgz格式图片生成vector的转换,并且支持编辑和预览生成的vector资源文件图片。
首先,源码地址:https://github.com/MegatronKing/SVG-Android/tree/master/svg-vector-applet
其次,下载地址:http://download.csdn.net/detail/megatronkings/9732869
使用步骤:
下载后为svg2vector-applet-1.0.0.jar,直接启动:
java -jar svg2vector-applet-1.0.0.jar
然后,我们可以直接将svg、svgz、vector文件,xml矢量图片直接拖入到这个界面,就可以得到预览界面,我们可以修改。
附:
还有一个工具,我们可以生成svg格式的图片—Adobe Illustrator Cs6
最后,我们android开发,这个xml矢量图片的制作,预览二个功能已经搞定,应该来说,没有什么拦路虎了。
参考资料
(1)Android使用矢量图(SVG, VectorDrawable)实践篇
https://www.jianshu.com/p/0555b8c1d26a
(2)SVG-Android开源库——SVG生成Vector资源文件的编辑预览工具
http://www.wfuyu.com/technology/27393.html
(3)SVG2Vector离线编辑和预览工具
https://download.csdn.net/download/megatronkings/9732869
android开发笔记之xml矢量图片相关推荐
- Android开发笔记(一百三十二)矢量图形与矢量动画
矢量图形VectorDrawable 与水波图形RippleDrawable一样,矢量图形VectorDrawable也是Android5.0之后新增的图形类.矢量图不同于一般的图形,它是由一系列几何 ...
- 《ArcGIS Runtime SDK for Android开发笔记》——离在线一体化技术:离线矢量数据编辑...
1.前言 在上一篇我们已经实现了离线地理数据库的下载,这一篇我们着重介绍离线数据库的加载与编辑. 由于ArcGIS Runtime SDK for Android 10.2.X版本并没提供要素绘制功能 ...
- Android开发笔记(九十八)往图片添加部件
添加圆角 添加圆角的功能,要用到Canvas类的drawRoundRect方法,即把画布裁剪成指定的圆角矩形. 下面是给图片添加圆角的效果截图: 下面是给图片添加圆角的代码片段: public sta ...
- Android开发笔记(九十七)图片的特效处理
图片特效用到的函数 本文讲述的图片特效处理包括:怀旧.光照.光晕.底片.浮雕.模糊.锐化.黑白.冰冻.素描,所有这些特效都是基于一定的算法,对图像每个点的RGB值进行计算,并汇总所有点的计算结果生成新 ...
- Android开发笔记(九十四)图片的基本加工
位图管理Bitmap Android上的图形使用Drawable类,而位图管理则使用Bitmap类,java上与之对应的是awt包中的BufferedImage.Android开发中有需要对jpg.p ...
- Android开发笔记(七十七)图片缓存算法
ImageCache 由于手机流量有限,又要加快app的运行效率,因此好的app都有做图片缓存.图片缓存说起来简单,做起来就用到很多知识点,可算是集Android技术之大全了.只要理解图片缓存的算法, ...
- Android开发笔记(三十三)文本文件和图片文件的读写
文本文件读写 简单文件读写一般是借助于FileOutputStream和FileInputStream,其中FileOutputStream用于写文件,而FileInputStream用于读文件. 写 ...
- Android开发笔记(一百五十)自动识别验证码图片
若问目前IT领域最炙手可热的技术方向,必属人工智能(简称AI)无疑.前有谷歌的阿法狗完胜围棋世界冠军柯洁,后有微软小冰出版了诗集<阳光失了玻璃窗>,一时间沸沸扬扬,似乎人工智能无所不能,从 ...
- Android开发笔记(序)写在前面的目录
知识点分类 一方面写写自己走过的弯路掉进去的坑,避免以后再犯:另一方面希望通过分享自己的经验教训,与网友互相切磋,从而去芜存菁进一步提升自己的水平.因此博主就想,入门的东西咱就不写了,人不能老停留在入 ...
- Android开发笔记(序)
本开发笔记,借鉴与其他开发者整理的文章范例与心得体会.在这里作为开发过程中的一个总结与笔记式记录. 如有侵犯作者权益,请及时联系告知删除.俗话说:集百家成一言,去粕成金. ************** ...
最新文章
- 知识点041-Samba 的安装
- yolov3为什么对大目标检测不好_基于改进Yolov3的目标检测的研究
- G - Strongly connected - hdu 4635(求连通分量)
- http三次握手四次挥手详解
- 场景/故事/story——寻物者发布消息场景、寻失主发布消息场景、消息展示场景、登录网站场景...
- 如何用python自动改试卷_利用Python和Jinja2自动生成试卷
- python学习-字符串的基本操作
- sqlserver垮库查询_SQLServer跨库查询--分布式查询
- spring笔记4-事务管理
- AIX学习笔记-第一天简介
- 深入了解OWIN Katana
- 5.应用测试 5.1测试Spring MVC的控制器
- Linux-Discuz安装LAMP
- day20T3改错记
- [原] 计算机调试管理器服务被禁用的解决方法
- Android 虚线切割线
- Solidworks 课程大纲(虎课网)
- 如何用ftp上传到服务器视频文件,ftp如何将文件上传到服务器上
- 3d变换基础:平移、旋转、缩放(仿射变换)详解——公式推导
- C# wpf 封装成dll供C++调用
热门文章
- vmstat 命令详解
- 新知识点!一文告诉你如何调试运行在Docker容器中的远程Node.js应用程序
- SQL 基础教程 (第2版)
- linux opendir路径_Linux目录操作函数:opendir/readdir/closedir
- php opendir 不能用,php opendir()函数讲解及遍历目录实例
- 正商职业学校预付费云平台系统 的设计与应用
- Matlab中绘制折线图(附matlab代码)
- 贝叶斯定理的通俗理解
- 全概率公式和贝叶斯公式的定义与说明
- 成都学计算机的大学有哪些专业学校,成都市计算机类专业开设的院校有哪些