android中如何添加Vector Asset

一:Vector Asset简介

Vector Asset中文名为矢量资源,在android studio中可以直接使用,当我们需要一些起导向作用的图片的时候,我们就可以直接调用Vector Asset。而且Vector Asset有一个特别好的优点就是不会出现图片失真的情况。
Vecto Assetr是Android 5.0之后新增加的一项功能,目前已经可以兼容到Android 5.0之前的版本。但使用过程中依然还是可能产生一些兼容性的问题。建议大家把Android studio升级到5.0之后的版本。
注意:最好将生成的vector drawable资源放在drawable目录下或drawable-anydpi目录下。

二:获取方式

1.外部软件制作
(1)下载软件Vector Magic:
官网:https://vectormagic.com/
(2)准备一个图标,最好比较简单,不然导出的数据会非常大。用软件制作一个成Vector Asset(矢量资源),保存文件类型为SVG格式,处理完了之后会得到一***.SVG文件
(3)打开http://inloop.github.io/svg2android/将上一步生成好的一个或者多个SVG 文件拖入,然后下载下来
(4)将下载好的xml文件放入 res/drawable里

注意:软件生成的Vector Asset文件可以通过步骤(4)直接添加到drawable中,也可以在步骤(2)时通过Android studio中的Configure Vector Asset 功能添加。具体步骤在接下来的会讲到
2.在Android studio导入Vector Asset文件
Android studio中有自带的Vector Asset文件,在Project文件下的res目录下的drawable目录上单击右键,选择New目录下的Vector Asset,弹出Asset Studio对话框(也可以右键res目录添加,最后生成的资源默认的路径是一样的)
在这里插入图片描述
进入配置矢量资源界面
(1)当Asset Type选择到Clip Art时,是要导入 Android Studio自带的Vector Asset。
Name:xml文件名称。
Size:设置矢量图的大小。
Color:设置矢量图的颜色。
Opacity:设置不透明度。
Enable auto mirroring for RTL layout:为RTL布局启用自动镜像(从Android 4.2开始,Android SDK支持一种从右到左(RTL,Right-to-Left)UI布局的方式)。
双击Clip Art后面的图标就会进入Vector Asset选择界面,可以根据读者自身的喜好选择资源文件。
(2)当Asset Type选择到Local file时,是要导入本地的SVG格式图片或者PSD格式图片,可以直接导入上文中外部软件制作的第二步制作的文件在这里插入图片描述 Name:xml文件名称
Path:选择本地矢量图(SVG或者PSD格式)
Size:设置矢量图的大小
Opacity:设置不透明度
Enable auto mirroring for RTL layout:为RTL布局启用自动镜像

上面不管哪一个,选择好图片按Next再按Finish就创建完成了,然后去调用文件就可以

三.详解SVG

1.SVG介绍
SVG 即可缩放矢量图形 (Scalable Vector Graphics) ,是使用 XML 来描述二维图形和绘图程序的语言,其定义遵循 W3C 标准。在 2003 年 1 月,SVG 1.1 被确立为 W3C 标准。使用 SVG 的优势在于:
SVG 可被非常多的工具读取和修改(比如记事本)。
SVG 与 JPEG 和 GIF 图像比起来,尺寸更小,且可压缩性更强。
SVG 是可伸缩的。
SVG 图像可在任何的分辨率下被高质量地打印。
SVG 可在图像质量不下降的情况下被放大。
SVG 图像中的文本是可选的,同时也是可搜索的(很适合制作地图)。
SVG 可以与 Java 技术一起运行。
SVG 是开放的标准。
SVG 文件是纯粹的 XML。
2.命令介绍
在这里插入图片描述
可用的命令如下:
A = elliptical Arc(A RX,RY,XROTATION,large-arc-flag,sweep-flag,X,Y):弧线。
C = curveto(C X1,Y1,X2,Y2,ENDX,ENDY) :三次贝赛曲线。
H = horizontal lineto(H X):画水平线到指定的X坐标位置。
L = lineto(L X,Y):画直线到指定的坐标位置。
M = moveto(M X,Y):将画笔移动到指定的坐标位置。
Q=quadraticBelziercurve(QX,Y,ENDX,ENDY):二次贝赛曲线。
S = smooth curveto(S X2,Y2,ENDX,ENDY):同样三次贝塞尔曲线,更平滑。
T=smoothquadraticBelziercurveto(TENDX,ENDY):同样二次贝塞尔曲线,更平滑。
V = vertical lineto(V Y):画垂直线到指定的Y坐标位置。
Z = closepath():关闭路径。

以上所有命令都可以用小写字母。大写字母是基于原点的坐标系(偏移量),即绝对位置;小写字母是基于当前点坐标系(偏移量),即相对位置

**注:**PSD格式是Adobe公司的图形设计软件Photoshop的专用格式。PSD文件可以存储成RGB或CMYK模式,还能够自定义颜色数并加以存储,还可以保存Photoshop的图层、通道、路径等信息,是目前唯一能够支持全部图像色彩模式的格式。

发布了1 篇原创文章 · 获赞 3 · 访问量 46

猜你喜欢

转载自blog.csdn.net/qq_45156021/article/details/104433252