矢量资源工具Vector_Asset_Studio

2018-10-28 11:14:29

 

Android Studio有一个称为“Vector Asset Studio”的工具,

它可以将SVG文件和PSD文件转化为工程可用的矢量可绘制资源(vector drawable resources),

使用矢量资源的好处是:

1、比图片资源要轻巧,编译出来的APK体积更小

2、可以自动适应不同尺寸和分辨率的屏幕

 

 

Android 5.0之后新增加了一个VectorDrawable类,用于定义矢量资源,但是必须要求5.0及更高版本才可以使用。

但是使用“Vector Asset Studio”这个工具,则不会受到低版本系统的影响!

这是因为“Vector Asset Studio”会在构建APK的时候将矢量资源转化为不同density的图片资源!~

 

以下说说使用方法:

在Android Studio中,依次点击“File”--“New”--“Vector Assets”,即可打开“Vector Asset Studio”工具,如下:

【Android】矢量资源工具Vector_Asset_Studio

在上面的界面中,

Asset Type--表示资源来源,有两种:Material Icon 和 Local File(SVG,PSD),分别是内置资源和其它本地资源

Name---表示文件名称,即drawable名称

Icon-----表示可选内置图标,点击可更改

Size-----表示图标大小

Opacity-表示图片不透明度

 

下面是内置的图标界面:


【Android】矢量资源工具Vector_Asset_Studio

 

下面是从本地导入一个SVG文件的效果:


【Android】矢量资源工具Vector_Asset_Studio

点击“Next”之后,将会提示你选择资源存放路径~~

 

【Android】矢量资源工具Vector_Asset_Studio

点击Finish即自动生成矢量资源,如下图所示:


【Android】矢量资源工具Vector_Asset_Studio

矢量资源是一个xml文件,里面描述了图形效果~~

 

至于这个矢量资源怎么用嘛,其实很简单,就把它当作成普通的drawable来引用就可以了~

Android Studion在构建的时候会将它转化为图片资源的

 

 【Android】矢量资源工具Vector_Asset_Studio

如果需要更改矢量资源的颜色,其实也很简单,一行代码就搞定了

【Android】矢量资源工具Vector_Asset_Studio

 

 

另:

附SVG资源下载地址:http://www.iconsvg.com/

还有这个:http://www.iconthink.com/

这个是阿里巴巴的:http://www.iconfont.cn/plus

 

 

Android5.0之后可直接支持矢量资源,不需要在构建的时候转化为图形资源,如果使用VectorDrawableCompat兼容包,可以让Android3.0以上的系统都支持。但是这有个不好之处。矢量资源加载的时候需要消费更多的CPU资源,毕竟,内存和性能不可兼得。官方建议不要超过200dp * 200dp ,否则的话会需要长时间执行绘制,特别是矢量动画。


  • 2019-01-29 14:33:07

    child_process中spawn和exec方法的使用

    child_process是nw.exe的一个内置模块,通过它可以实现创建多线程,并可实现主线程和子线程之间的通信。child_process模块中主要使用有两个方法spawn和exec,这两个方法都可以用来创建子线程。除了spawn和exec外,child_process模块还有execFile,fork,spawnSync,execFileSync,execSync,它们都是基于spawn的不同封装。 --------------------- 作者:黄泽平 来源:CSDN 原文:https://blog.csdn.net/zeping891103/article/details/52230175 版权声明:本文为博主原创文章,转载请附上博文链接!

  • 2019-01-29 14:50:51

    Node.js 编写跨平台 spawn 语句

    Node.js 是跨平台的,也就是说它能运行在 Windows、OSX 和 Linux 平台上。很多 Node.js 开发者都是在 OSX 上做开发的,然后再将代码部署到 Linux 服务器上。由于 OSX 和 Linux 都是基于 Unix 的,因此两者共性很多。Windows 也是 Node.js 官方支持的平台,只要你通过正确的方式写代码,就能在各个平台上毫无压力的跑起来。

  • 2019-01-30 17:53:21

    视图与临时表

    视图与表的不同之处:视图是一个虚表,即视图所对应的数据不进行实际存储,数据库只存储视图的定义,对视图的数据进行操作时,系统根据视图的定义去操作与视图相关联的基本表。

  • 2019-02-01 08:43:59

    JS 随机排序算法

    使用JS编写一个方法 让数组中的元素每次刷新随机排列