SVG开发包, 20 个有用的 SVG 工具,提供更好的图像处理

20 个有用的 SVG 工具,提供更好的图像处理

SVG 现正在 Web 设计领域变得越发流行, 你可以使用 Illustrator 或者 Inkscape 来创建 SVG 图像。 但当进行 Web 设计时,我们还需要做一些优化来使得 SVG 变得更加轻量。

下面介绍的 20 个工具,可以帮助你快速有效的创建 SVG 图像。现有的在线工具已经可以帮助我们进行优化、转换、新建模式等工作。

更详细的介绍,参见:How To Create SVG Animation Using CSS

交互式 SVG 坐标系统

设计 SVG,离不开它的坐标系统。这是一个由 Sara Souiden 编写的超赞的交互工具,可以帮助你理解 SVG 坐标系统是怎么一回事。 使用 SVG 的 viewBox 和 preserveAspectRatio,也就是下图所示的粉色线和橙色线,以及旁边的标尺,你可以在折腾的过程中学习到 SVG 坐标是如何工作的。

b64

b64 是一个通过将图像格式转换为 base64 来进行优化的小工具。 你可以直接把你的 SVG 图像(或者 JPG 和 PNG 也行)扔进去,然后直接把结果作为 CSS 弄到你的网站上就行了。

SVGO

默认的 SVG 包含了许多可删除的不必要的信息,删除这些东西不会影响图像本身。如果你想删除关于编辑器元数据、注释或者隐藏的节点,你可以用 SVGO。

你可以通过 npm 来安装 SVGO

$ [sudo] npm install -g svgo

也可以使用 GUI版本,这样你就可以愉快的拖拖拖了。

SVG OMG

SVG OMG 将 SVGO 的命令行包装成了一个带 GUI 的版本,你可以简单的通过点点按钮来打开和关闭特性,最后你导出一下图片或者代码就行了。

SVG Now

当你工作在 Illustrator 上时,输出的 SVG 包含许多并不需要的信息。使用这个工具你可以从你的 Illustrator 右边得到优化版本的导出 SVG 。这个工具在面板上添加了一些优化 SVG 选项。你可以从Creative Cloud Add-ons page 取得 SVG Now。

SVG to PNG converter

想要把输出的 SVG 文件转换成 PNG 格式?不用打开类似 Illustrator 这样的应用就能做?使用这个 SVG 到 PNG 转换工具可以得到 PNG 格式的输出图像,并且如果你需要的话还能得到 PNG 的 Base64 数据 URI 。

SVG Circus

如果你认为加载动画很酷,那么现在你可以通过 SVG Circus 来简单地处理 SVG。这个工具可以让你制作自己的加载器,旋转器,或者任何类似的循环动画。设置‘角色’,位置,尺寸,颜色和其他形式的面板,之后输出就可以得到结果。

SVG Sprite

SVG Sprite 是一个Node.js 模块, 可以优化一大堆 SVG 文件,并烤制成 SVG sprite-types,带有传统的背景 CSS sprites 或者前景图片,SVG stacks 以及其他的。

Quasi

使用 quasi,你可以生成如下看到的 Quasicrystal  图片。这个生成器只是试验性的,但是结果却是很酷。你可以通过改变选项值试用一下,然后使用‘Save SVG‘按钮下载下来。

Plain Pattern

使用 SVG 创图案从来就不是简单而很有趣的事情。上传你的图片,按比例缩小或改变间隔,旋转和重新着色,直到你得到一个漂亮的图案。你可以在下载之前预览结果。

Trianglify Generator

使用 Trianglify 生成器创建漂亮的 SVG 几何图案。你可以随意/变化设置颜色,粒度大小并选择一个颜色调色板来配合使用。这个工具是 Trianglify 的GUI版本。

SVG Gradient

你知道你可以使用 CSS 来制作渐变 但是你知道你也可以使用 SVG 做到相同的效果吗?使用 SVG 产生渐变最简单的方式是使用这个工具。只需要输入开始和停止颜色,然后就可以获得产生效果的代码了。 CSS 的后退也有包括。

Export PSD to SVG

如果你使用 Photoshop 作为你作品的图片编辑器,有时候你可以需要在 Photoshop 的 workspace 里边转换你的设计成 SVG, 在 Photoshop 中有一个不支持的格式。下载脚本到这个工具里边, 然后复制到 Adobe Photosho/presets/scripts 文件夹里边。

用 SVG 扩展名重命名一个矢量层名字 (e.g. layer1变成layer1.svg), 你现在可以从 File > Scripts > PS to SVG 来运行脚本了。

SVG Filters

你知道使用 SVG 可以对图片添加效果吗?例如色度,饱和度,模糊度,线性颜色叠加和其他效果。这是一款可以显现这些效果的工具,然后给你一个小片段使得它容易被嵌入效果到你的项目中。

SVG Morpheous

SVG Morpheous 是一个 JavaScript 库,允许你从一个形状到另一个形状改变一个 SVG 图标。你可以设置宽松效果,过度动画的持续时间,以及旋转的方向。

Clip path generator

SVG 允许你单击图片形状修剪。如果形状在一个方形或者圆形里边,就相当简单。但是假设形状是一个带有很多店或者多边形的呢?这就是你需要找个 Clip Path Generator 工具了。

Chartist.js

Chartist.js 一个创建高可定制化响应式图表的库。它利用 SVG 来显示图表,也可以使用 SMIL 动画。使用这个库,你可以创建线性图表,饼图,直方图和其他类型的图表,甚至可以跟图表添加动画

SVG stroke dash generator

这是一个使用 SVG stroke-dasharray 生成虚线的简单工具。首先选择从列表中选择一个虚线类型,然后在宽度,高度,旋转或颜色方便自定义虚线。然后你可以攫取 HTML 代码和 CSS 应用这条虚线到你的项目中。

Method Draw: A Simple SVG Editor

Method draw 是一个基于 web 的 SVG 编辑器,带有一个两边伴有工具的画布的直观的界面。你可以画线条,形状,输入文本或者使用内置的形状,然后编辑绘画兑现的属性。使用 SVG 格式导出图像(也可以变成 SVG base64 格式)或者直接使用 PNG 保存。

Export Flash to animated SVG

尽管它不在流行了,但是有时候你很难放弃 Flash。如果是这样,你可以让你的 flash 动画变成 SVG 与更新的技术保持协调工作。这个工具塑造了 Flash 应用程序的扩展形式,可以和 CS5,CS5 和 CC 一起工作。

当它变成 Shapes, Bitmaps Symbols, Classic Motion Tweens, Shape tweens,你可以将它导出到SVG(对另一些人来说,成功是有议可争的)。

五款超实用的开源SVG工具

摘要:SVG是基于XML的矢量图像格式,用户可灵活运用图像进行搜索、索引、脚本以及压缩。本文分享5款超实用的开源的SVG工具,希望对你有所帮助。

SVG(Scalable Vector Graphics)是基于XML的矢量图像格式,用户可灵活运用图像进行搜索、索引、脚本以及压缩。SVG由W3C制定开发,是一个开放标准,支持当前主流浏览器包括Firefox、IE9-10、Chrome、Safari以及Opera。

SVG支持三种图像类型:矢量图像、嵌入式外部图像以及文字。图形对象包括PNG、JPEG和SVG格式,用户可根据自己的喜好轻松使用XML文本文件进行修改,因此使用文本编辑成为创建SVG图像的重要方法之一。由于这种格式得到主流浏览器的支持,越来越多的产品开始倾向开源。

本文我们将分享5款超实用的开源的SVG工具:

1. SharpVectorGraphics(SVG)

SVG是基于Microsoft .Net开源项目设计而来,是建立在.Net framework上使用SVG的一款应用,支持生成、操作以及可查看 ,该项目旨在赋予一组核心模块,开发人员可创建基金会来支持特定的SVG解决方案。

2. Cairo

Cairo是一款2D图像库能够安装、填充cubic Bézier曲线,转换和合成半透明图像,通过绘图操作进行文字渲染,可以转换任何仿射变换(缩放、旋转、剪切等)。

3. Graphviz

Graphviz是一款可视化的图形软件,支持SVG、PDF和Postscript,显示交互式的图形浏览器,此外,该工具擅长抽象图形和网格,具备多种实用的特性涵盖具体的图表功能如颜色、字体、表格节点布局、线型样式、超链接、滚动以及自定义形状。

4. Inkscape

Inkscape是一款开源的矢量图形编辑器,支持可缩放的SVG1.1版,支持Mac OSX,Unix  OS以及Microsoft Windows系统。

Inkscape中的对象可进行伪射转换(移动,旋转、缩放、倾斜以及可配置的矩阵),该对象可进行分组、克隆;Inkscape支持多行文本(SVG’s <text>元素)和流动文本(非标准<flowRoot> 元素,此前提出的SVG 1.2版)。

Inkscape兼容多种格式,不仅支持其原生格式SVG,还有PS、 EPS、PD、AI (Adobe Illustrator)以及raster格式。

5. Apache Batik

Batik是由Apache软件基金会开源的一款工具。

该工具使用Java编写,几乎完全支持SVG 1.1,此外,其他一些功能还将被纳入到SVG 1.2原始计划中。

除了能为PNG输出查看器和光栅化程序,Batik还支持完美的打印SVG文件格式以及TrueType-to-SVG-Font字体转换,用户还能将SVG转换成PDF格式。

SVG和EPS图像展示工具 Hypercube

Hypercube (超立方体)设有一个基于Qt的GUI简单的基于文本的图形来表示SVG和EPS图像,以及作为一个Qt独立的命令行工具的可视化工具。它采用了模拟退火算法的布局图,可以很容易地参数进行调整,来达到所需的外观。主要发展目标是便携性和易于使用的,而不是高性能和复杂性。命令行工具不使用任何其他的库比标准C ++库,GUI工具使用“纯”的Qt。

Hypercube features a Qt-based GUI tool for visualizing simple text-based graph representations as SVG and EPS images, as well as a Qt-independent commandline tool. It uses a simulated annealing algorithm to lay out the graph, which can be easily parametrized to achieve the desired look. The main development goals are portability and easy usage rather than high performance and complexity. The commandline tool does not use any other libraries than the standard C++ library, and the GUI tool uses “pure” Qt.

CLI tool

Usage:    hypercube-cli [OPTIONS] FILE

OPTIONS:
 -v               print the program version

 -s <dimensions>  set image size to <dimensions>
 -f <format>      set output format to <format>
 -e <encoding>    set input file encoding to <encoding>
 -o <file>        set the output file to <file>

 -vc <color>      set vertex color to <color>
 -ec <color>      set edge color to <color>
 -vs <size>       set vertex size to <size>
 -es <size>       set edge size to <size>
 -vf <size>       set vertex font size to <size>
 -ef <size>       set edge font size to <size>
 -d               directed graph
 -u               undirected graph
 -c               asign a unique color to every uniqe edge value
 -l <size>        show edge color legend with font size <size>

option arguments:
 <dimesnsions>    width,height
 <color>          #RRGGBB
 <format>         svg eps
 <encoding>       iso-8859-1 iso-8859-2 iso-8859-5 iso-8859-7
                  windows-1250 windows-1251 windows-1252 windows-1253
                  koi8-r koi8-u utf-8

一直知道SVG但一直没有详细了解过,以前错误的认为画不一样类型的数据图应该选择不同的办法,比如GD,RRD或是其他HTML类的画图,昨天看到很多SVG的图,这东西简直能画一切,从生物科学到简单的柱状图、饼图,而且这个图可以画的超好看。从技术上说SVG也算是很有前瞻性,目前SVG的成功案例也不少,很多JS的HTML5图形库都是基于SVG的。Perl也有个SVG模块可用。

等你真正用了,你会发现svg的功能还是太基础了。
目前阶段,还是flash的图形才是主流。
html5里面,也是canvas更流行。
svg的特点是矢量,问题是现在地位很尴尬,缺乏动力
其实SVG已经不超前了,各大浏览器都是支持的,只有IE8和以前的IE浏览器需要转ADOBE的插件才能看SVG。
ACDSee这类的东西不支持SVG也可以理解,毕竟SVG就是XML,所以用浏览器查看SVG更符合使用逻辑。
我个人觉得SVG最适合和JS搭配使用,用Perl只把JSON给前端。因为有动态效果的SVG更适合做统计图,如果搭配JS,结合HTML5和CSS。在WEB领域就完美了。目前已经有不少这类成熟的产品,比如d3.js,http://d3js.org/
   
 

SVG开发包

排序方式:

评分 收录时间 浏览数 收藏数

推荐软件

在线图像编辑器 SVG-Edit

SVG-Edit 是一个基于浏览器的图像编辑器,可进行常用的一些图像处理功能,无需服务器端支持,支持各种浏览器。如下图所示: 在线演示

收藏 55

SVG编辑器 Sketsa

Sketsa是一个基于SVG的矢量图创建工具。此格式基于XML,允许放大或者缩小尺寸到任意分辨率而不会产生任何细节损失,同时修改时还可得到实时的效果反馈。Sketsa提供了调色板、DOM编辑器、...

上次更新: 2012年09月21日收藏 34评论 1

SVG.js

SVG(Scalable Vector Graphics,可缩放矢量图形)是基于XML、用于描述二维矢量图形的一种图形格式。SVG由W3C制定,是一个开放标准。 SVG.js中包含了大量用于定义...

收藏 47

Android的SVG开发包 svg-android

svg-android 可以让 Android 支持可 SVG 图形。 可缩放矢量图形(Scalable Vector Graphics,SVG)是基于可扩展标记语言(XML),用于描述二维矢量...

收藏 25

SVG图标 OpenIcons

OpenIcons 是一组适合在Web上使用的SVG图标,所有图标都是基于向量的,使用 InkScape 制作。可以方便的转成各种格式和各种规格尺寸的图标。

上次更新: 2010年08月26日收藏 38

SVG 工具包 Batik

Batik是一个基于Java技术的SVG(可扩展矢量图)工具包。applications或applets使用这个工具包可以查看,生成,处理SVG格式的图片。

收藏 24

C++的SVG开发包 wxSVG

wxSVG 是一个 C++ 的库用来创建、操作和显示 SVG 文件的开发包。

收藏 10评论 1

Java 的 SVG 库 JFreeSVG

JFreeSVG 是一个快速、轻量级的 Java 向量图形库,可简化生成 SVG 格式的图形输出,包好: SVGGraphics2D - 通过标准的 Java 2D API 生成 SVG 输出 ...

上次更新: 2014年05月07日收藏 24

基于SVG的GUI框架 MadButterfly

MadButterfly 是以 SVG 為基礎的 GUI 架構,讓 application 可以用 SVG 畫出 GUI ,透過 MadButterfly 呈現在螢幕上,並和使用者互動。

收藏 6

SVG图表库 GerbilCharts

GerbilCharts 是一个基于 SVG + JavaScript 的可交互式的时间序列图表库。 安装方法:sudo gem install gerbilcharts

上次更新: 2011年03月03日收藏 9

JavaScript SVG 动画库 Vivus.js

Vivus 是一个轻量级的JavaScript类(完全无依赖) 来允许你创建 SVG 动画,让他们显示被画出来的轨迹。 Vivus提供很多不同种类的动画。 另外还有选项,你可以按你的想法来创建一...

收藏 17

SVG 渲染引擎 libRSVG

libRSVG 是一个使用 C 语言编写的非常快速的 SVG 渲染引擎。当前支持大多数 SVG 1.2 规范,除了动画部分。libRSVG 在很多项目中用于 SVG 渲染,诸如 GNOME。

收藏 6

SVG Integration

Manipulate SVG documents from JavaScript. Supported natively in Firefox, Opera, and Safari and vi...

收藏 0

PHP5的SVG开发包 SVGGraph

SVGGraph是一个PHP5面向对象库,用于从数据创建各种类型的SVG图表。包括:BarGraph、LineGraph、PieGraph、Bar3DGraph、Pie3DGraph、Scatt...

收藏 7

SVG2EMF

SVG2EMF 是一个用 Java 编写的用来将 SVG 可伸缩向量图专为 EMF(Enhanced Meta File) 的工具。 示例代码: public void testConvert(...

收藏 4

动态 SVG 图表库 Pygal

pygal 是一个 Python 开发的动态 SVG 图表库。 示例代码: import pygal                                               ...

收藏 4

jsDraw2DX

jsDraw2DX 是一个标准的 JavaScript 库,用来创建任意类型的 SVG 交互式图形,可生成包括线、举行、多边形、椭圆、弧线等等图形。

收藏 10

SVG 动画效果 SVG Circus

SVG Circus 可以在几秒钟内创建很酷的、有动画效果的 SVG spinners, loaders 。 # Install dependencies $ npm install $ bow...

收藏 3

JS的SVG游戏开发包 sv2gl

sv2gl 是一个游戏开发包,尝试利用 SVG 已有的可扩展的工具集来进行图像操作,包含游戏创建框架以及在浏览器上运行的物理引擎,可轻易的扩展并使用 Prototype 或者 jQuery 以及...

收藏 6

JavaScript 的 SVG 库 Paths.js

Paths.js 是一个可以帮你生成 SVG paths 的工具。可通过使用类似 Mustache or Handlebars 的模板引擎来在浏览器上显示 SVG 图形。 示例代码: var P...

收藏 13

Adobe Illustrator 的 SVG 优化器 SVG NOW

SVG NOW  是一个用于 Adobe Illustrator 的 SVG 出口(exporter)替代品,目前正在开发当中。它的目标是通过后处理(post-processing)SVGO 生...

收藏 2

PocketSVG

直接根据SVG生成CGPath/UIBezierPath。 使用场景: 1. 重写UIView的时候,直接从SVG文件获取CGPath进行绘制。 2. 替代庞大的png/jpg等图形文件,节约空...

收藏 5

CuteMenus - Crystal SVG

在 Firefox 和 Thunderbird 所有的菜单栏上添加 Crystal SVG 主题的图标。这个扩展合并了“flatstyle” 扩展,可以选择在菜单栏上增加图标或是彻底用图标替换文...

收藏 0

SoccerFox SVG

A theme for Soccer/football fans 已更新 2007 年 10 月 18 日

收藏 0

FootballFox SVG

A football theme 已更新 2007 年 11 月 3 日

收藏 0

Node.js 模块 svg-sprite

svg-sprite 是一个低层次的 Node.js 模块,它可以将一堆 SVG 文件进行优化,然后将它们烤成几种类型的 SVG sprites ,并包含合适样式表的资源(例如 CSS, Sas...

收藏 3

SVG Dashed Lines Generator

SVG Dashed Lines Generator 是一个简单使用 stroke-dasharray 生成虚线的工具。

收藏 0

基于 Node.js 用于优化 SVG 矢量图形文件的工具 svgo

svgo 是一个基于 Node.js 用于优化 SVG 矢量图形文件的工具。 为什么使用 svgo? 从各种编辑器导出的 SVG 文件通常包含大量冗余和无用的信息,例如编辑器元数据、注释、隐藏的...

收藏 0

时间: 2024-09-29 02:03:26

SVG开发包, 20 个有用的 SVG 工具,提供更好的图像处理的相关文章

3G手机视频对讲开发包

一.概述 针对3G网络研发的"手机视频对讲开发包",使人们在任何能够使用手机的地方都可以随时随地进行视频对讲.视频会议.应急视频指挥等,突破了传统固网的限制,是3G业务的革命性产品.该开发包已经通过了稳定性测试,是目前最完善的适合于大规模商用的3G视频应用开发包,填补了国内空白. 手机视频开发包可为3G用户提供视频监控和告警信息.远程采集.传输.存储.处理与传播等方面的无线网络视频服务,是一种有效的安防及管理工具:手机会议平台是为用户提供手机视频会议的定制.配置.使用的手机视频会议系统

为WEB程序员准备的20+有用的AngularJS工具

AngularJS是动态的Web应用程序的结构框架,最初由Misko Hevery开发,目前由谷歌维护.它有助于以灵活的方式创建Web应用程序.本篇文章就为大家分享20+非常有用个AngularJS工具. Sublime Text是一个非常有效的文本编辑器工具,易于切换项目,高度可定制.JASMINE,它基本上就是专门为JavaScript用户设计的.CodePen是前端程序员开发HTML.JS.CSS的完美编辑工具. Angular Deckgrid Angular fire Angular

OPC2.0服务器开发包源码 opc服务器源代码 server 源程序DLL

1,vc++6.0软件完整工程 2,opc da2.0 服务器开发包,没有任何限制,例子提供1024个点的演示过程 3,opc核心封装成dll库,提供库源码 4,提供调用opc库的测试程序,演示如果用vc6调用dll的全部过程 5,opc服务器模拟数据项,让用户懂得如何开发自己的opc服务器 6,提供测试客户端,可学习和研究opc服务器的建立过程 7,完美的opc服务器开发包,适合开发自己的opc服务器,简单易用.

【转】Android应用开发之PNG、IconFont、SVG图标资源优化详解

1 背景 最近因为一些个人私事导致好久没写博客了,多事之年总算要过去了,突然没了动力,所以赶紧先拿个最近项目中重构的一个小知识点充下数,老题重谈. 在我们App开发中大家可能都会有过如下痛疾(程序员和设计妹妹注意喽): 好多小的图标好烦人,又占体积还要考虑分辨率,一拉伸就模糊等. 同一个图标不同状态还有不同颜色的多张. 总是幻想IOS.Android.Web等对于一个图标只切一次图多好. 如果你有过类似的痛疾那么下面讨论的故事就是一个完美的解决方案,当然了,采用下面方案对于重型应用或者固件级的优

Android应用开发之PNG、IconFont、SVG图标资源优化详解

1 背景 最近因为一些个人私事导致好久没写博客了,多事之年总算要过去了,突然没了动力,所以赶紧先拿个最近项目中重构的一个小知识点充下数,老题重谈. 在我们App开发中大家可能都会有过如下痛疾(程序员和设计妹妹注意喽): 好多小的图标好烦人,又占体积还要考虑分辨率,一拉伸就模糊等. 同一个图标不同状态还有不同颜色的多张. 总是幻想IOS.Android.Web等对于一个图标只切一次图多好. 如果你有过类似的痛疾那么下面讨论的故事就是一个完美的解决方案,当然了,采用下面方案对于重型应用或者固件级的优

我用的一些Node.js开发工具、开发包、框架等总结

开发工具 1.WebStorm,毫无疑问非他莫属,跨平台,强大的代码提示,支持Nodejs调试,此外还支持vi编辑模式,这点我很喜欢. 2.做些小型项目用Sublime Text. 3.Browserify:将你的nodejs模块应用到浏览器中 4.nvm:nodejs版本管理工具,你可能会用到多个nodejs版本(如v0.11.x支持generator的nodejs和stable的v0.10.x版本),用它可以方便切换 测试&自动化 1.mocha:一个简单.灵活有趣的 JavaScript

最新Android SDK_API_开发包_离线包_下载

[转载][资源]最新Android SDK_API_开发包_离线包_下载 开发Android应用少不了Android SDK,由于谷歌服务器的原因,在国内下载Android SDK速度非常慢,如果要把所有的Android SDK下载回来势必是一件非常痛苦的事情.因此,在这里把本人下载的所有的Android SDK打包分享,希望对广大Android 开发者能有所帮助. 所安装的Android SDK,  包括谷歌到目前为止发布的所有的Android API,和部分工具. SDK_API_开发包_离

Android SDK开发包国内下载地址

原文:Android SDK开发包国内下载地址 不知道是因为最近kaihui还是怎么的,打开android sdk官方网站特别的慢,想下载最新版本的platform几乎变成不可能完成的任务,不知道为什么Google不像Apache那样在各国设立镜像站.为了预防今后再出现这样的情况,这次干脆把android开发所需要的各种包总结一下,顺便提供本地下载链接,省得以后找起来麻烦. 通过分析SDK Manager里要用到的repository文件,我下载了目前google提供的各类安卓开发包并上传到了网

[javascript svg fill stroke stroke-width circle 属性讲解] svg fill stroke stroke-width circle 属性 绘制圆形及引入方式讲解

1 <!DOCTYPE html> 2 <html lang='zh-cn'> 3 <head> 4 <title>Insert you title</title> 5 <meta name='description' content='this is my page'> 6 <meta name='keywords' content='keyword1,keyword2,keyword3'> 7 <meta htt