Vector矢量图在Android项目中的应用越来越广泛,但是如果你想用Android Studio自带的工具将SVG图片转化成Vector资源文件却是相当麻烦,首先能支持的SVG规范较少,其次操作流程麻烦。而另一种方式就是通过http://inloop.github.io/svg2android/ 这个网站转换,虽然支持的SVG规范较多,但是访问速度较慢且操作起来相当麻烦,最重要的是没有预览功能。这里,给大家安利SVG-Android框架下的几个小工具,可以辅助开发者更加便捷地使用SVG图片。

这几款工具,都是基于SVG-Android核心库开发,相比于其它几种方式具有以下几种特性:

  • 支持更多的SVG规范,具体可以参考:SVG-Android支持规范文档

  • 支持处理svg格式和svgz格式的矢量图片

  • 独立的Java轻量级小程序,支持离线运行

  • 源码公开,如果有问题和建议,欢迎随时联系,尽快更新处理


一、SVG2Vector批量工具

首先,源码地址:https://github.com/MegatronKing/SVG-Android/tree/master/svg-vector-cli

其次,下载地址:http://download.csdn.net/detail/megatronkings/9732864

示例1

java -jar svg2vector-cli-1.0.0.jar -d D:\svg -o D:\vector

表示批量将svg目录下面的svg或者svgz格式的图片转换成Android使用的vector资源文件并输出到vector目录下

示例2

java -jar svg2vector-cli-1.0.0.jar -f D:\svg\test.svg -o D:\vector\test.xml

表示将单个名为test.svg的svg格式图片转换成Android使用的vector资源文件为test.xml

更多命令:

  • [-d] 指定需转换的目标svg文件夹,用于批量处理
  • [-f] 指定需转换的单个目标svg文件,用于单独处理
  • [-o] 指定生成vector资源文件的输出目录
  • [-w] 指定生成vector资源文件的宽度
  • [-h] 指定生成vector资源文件的高度

一、SVG2Vector编辑预览工具

这是一款Java Applet可视化小程序,支持快速处理svg或者svgz格式图片生成vector的转换,并且支持编辑以及预览生成的vector资源文件图片。

首先,源码地址:https://github.com/MegatronKing/SVG-Android/tree/master/svg-vector-applet

其次,下载地址:http://download.csdn.net/detail/megatronkings/9732869

使用步骤:

1、启动工具

java -jar svg2vector-applet-1.0.0.jar

2、拖动svg、svgz、vector文件到应用或者点击文件按钮选择指定文件

3、如果打开的是svg或者svgz文件,将会自动生成vector代码,并可在右侧预览图片内容

4、如果对图片样式属性不满意,可以修改一下

5、点击“文件->保存”,或者快捷键Ctrl+S 保存最终的vector文件


本博客不定期持续更新,欢迎关注和交流:

http://blog.csdn.net/megatronkings

SVG-Android开源库——SVG生成Vector资源文件的编辑预览工具的更多相关文章

  1. GitHub上排名前100的Android开源库介绍(来自github)

    本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍,至于排名完全是根据 GitHub 搜索 Java 语言选择 (Best Match) 得到的结果,然后过滤了 ...

  2. GitHub Top 100的Android开源库

    摘要: 本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍, 至于排名完全是根据GitHub搜索Java语言选择「Best M... 本项目主要对目前 GitH ...

  3. 【Java&Android开源库代码分析】のandroid-async-http の开盘

          在<[Java&Android开源库代码剖析]のandroid-smart-image-view>一文中我们提到了android-async-http这个开源库,本文正 ...

  4. Android 开源库和项目 3

    Android 开源库和项目 Android 开源库和项目 2 1.Matisse Android 图片选择器 -- 知乎开源 github 地址:https://github.com/zhihu/M ...

  5. Android 开源库获取途径整理

    介绍眼下收藏 Android 开源库比較多的 GitHub 项目.站点.Twitter.App 及怎样获取最新的 Android 开源库. 微信号: 1. GitHub Android 开源项目汇总 ...

  6. 我的Android进阶之旅】GitHub 上排名前 100 的 Android 开源库进行简单的介绍

    GitHub Android Libraries Top 100 简介 本文转载于:https://github.com/Freelander/Android_Data/blob/master/And ...

  7. <Android开源库 ~ 1> GitHub Android Libraries Top 100 简介

    转载自GitHub Android Libraries Top 100 简介 本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍, 至于排名完全是根据 GitH ...

  8. GitHub上排名前100的Android开源库介绍

    GitHub上排名前100的Android开源库介绍 文章来源: http://www.open-open.com/news/view/1587067#6734290-qzone-1-31660-bf ...

  9. Qt之生成Window资源文件(.rc 文件)

    简述 qmake 可以随意地自动生成一个适当填充的 Windows 资源文件.本节主要讲解如何用 qmake 处理一个 Windows 资源文件,并将其链接到一个可执行应用程序(EXE)或动态链接库( ...

随机推荐

  1. Java1.8新特性——接口改动和Lambda表达式

    Java1.8新特性——接口改动和Lambda表达式 摘要:本文主要学习了Java1.8的新特性中有关接口和Lambda表达式的部分. 部分内容来自以下博客: https://www.cnblogs. ...

  2. android特效集合

    https://github.com/Trinea/android-open-project http://www.cnblogs.com/hawkon/p/3593709.html http://i ...

  3. win7 32位安装pyqt

    参考 http://blog.csdn.net/fairyeye/article/details/6607981 http://www.cnblogs.com/toSeek/p/6363036.htm ...

  4. CD_Lulu软件著作权中软件分类号

    计算机软件著作权 登记中使用的软件分类编码指南 一.计算机软件著作权登记中使用的软件分类编码的结构采用组合代码结构,由9位数字组成并按照从左至右的顺序排列,前5位数字代表计算机软件分的代码:后4位数字 ...

  5. Dubbo简介及实例

    节点角色说明: Ø  Provider: 暴露服务的服务提供方. Ø  Consumer: 调用远程服务的服务消费方. Ø  Registry: 服务注册与发现的注册中心. Ø  Monitor: 统 ...

  6. margin: 0 auto; 元素水平居中布局无效

    失效原因: 要给居中的元素一个宽度,否则无效. 该元素一定不能浮动或绝对定位,否则无效. 在HTML中使用<center></center>标签,需考虑好整体构架,否者全部元素 ...

  7. SDUTOJ 2826 小P寻宝记——好基友一起走

    #include<iostream> #include<memory.h> using namespace std; int dp[10010]; int max(int a, ...

  8. angular 资源路径问题

    1.templateUrl .component("noData",{ templateUrl:"components/noData.html" // 注意相对 ...

  9. wince开发_摩托罗拉MC3100_打开条码设置

    呵呵不多说,直接上图 1.打开控制面板 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0 ...

  10. C/C++程序到内存分配(转)

    一.一个由C/C++编译到程序占用的内存分为以下几个部分: 1.栈区(stack)——由编译器自动分配释放,在不需要的时候自动清除.用于存放函数的参数.局部变量等.操作方式类似数据结构中的栈(后进先出 ...