SVG Salamander

SVG Salamander是一个轻量级的用于Java的 SVG渲染器和动画引擎。(SVG Salamander is a light weight SVG renderer and animator for Java.)

Github stars Tracking Chart

SVG Salamander是一个用于Java的SVG引擎,它设计得小,速度快,允许程序员快速而轻松地使用它。它特别针对于使SVG容易集成到Java游戏中,并使艺术家更容易设计2D游戏内容——从丰富的互动菜单到图表和图形到复杂的动画。

功能

Ant任务,允许从SVG到Ant脚本中的图像轻松转换
SVGIcon类大大简化了加载和绘制图像到屏幕

比Batik小得多的代码脚印,只需要包括一个JAR文件

直接访问场景图树。您可以使用Java命令直接操作它。
SVG图中所有命名形状的索引都可以轻松访问。
给定(x,y)坐标的拾取形状是可能的,并且可以用于实现由鼠标选择的图形按钮
剪辑区域灵敏度使得在仅更新图像的一部分时能够快速呈现。这使得平移相机效率很高。
轻松渲染任何Graphics2D或BufferedImage。与Batik不同的是,SVG Salamander引擎不拥有图形上下文,所以你可以传递它任何你喜欢的图形上下文。
内部和外部链接实现为URI,允许引擎自动导入链接的文档—— 即使它们存储在远程服务器上。

SVG可以读取输入流(InputStream),因此您可以从程序内XSLT转换中动态创建文档。

SVG Salamander创建于2002年,仍然与Java 1.4兼容,因此对于那些需要非常向后兼容的代码而言,这是一个伟大的选项。 虽然SVG Salamander能够处理许多最常见的SVG用途,但它缺少一些功能,如过滤器和脚本。 (添加对这些功能的支持可能需要重写核心代码,作者说目前还不能真正证明这一点,但是,如果有人真正感兴趣,可跟他联系)。

Overview

Name With Ownertaskforcesh/bullmq
Primary LanguageTypeScript
Program languageHTML (Language Count: 5)
Platform
License:MIT License
Release Count535
Last Release Namev5.7.8 (Posted on )
First Release Namev1.0.0 (Posted on )
Created At2018-12-19 21:46:28
Pushed At2024-05-03 10:07:58
Last Commit At2024-05-01 20:27:19
Stargazers Count5.2k
Watchers Count30
Fork Count342
Commits Count2.4k
Has Issues Enabled
Issues Count1015
Issue Open Count257
Pull Requests Count1081
Pull Requests Open Count33
Pull Requests Close Count136
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private

SVG Salamander

SVG Salamander is an SVG engine for Java that's designed to be small, fast, and allow programmers to use it with a minimum of fuss. It's in particular targeted for making it easy to integrate SVG into Java games and making it much easier for artists to design 2D game content - from rich interactive menus to charts and graphics to complex animations.

Features

  • Ant task to allow easy conversion from SVG to images from within Ant scripts
  • SVGIcon class greatly simplifies loading and drawing images to screen
  • A much smaller code foot print than Batik, and only one JAR file to include
  • Direct access to the scene graph tree. You can use Java commands to manipulate it directly.
  • An index of all named shapes in the SVG graph is easily accessible.
  • Picking shapes given (x, y) coordinates is possible, and can be used to implement graphical buttons selected by the mouse
  • Clip region sensitivity makes for fast rendering when only updating part of the image. This makes panning the camera quite efficient.
  • Easy rendering to any Graphics2D or BufferedImage. Unlike Batik, the SVG Salamander engine does not own the graphics context, so you can pass it whatever graphics context you like.
  • Internal and external links are implemented as URIs, which allows the engine to automatically import linked documents - even if they're stored on a remote server.
  • SVG can be read from an InputStream, so you can create documents dynamically from an in-program XSLT transformation.

Documentation

An overview of how to use SVG Salamader in your project.

Current status

SVG Salamander is part of the Salamander project hosted on http://www.kitfox.com

Projects using SVG Salamander

  • Apache Pivot - An alternate crossplatform GUI for Java.
  • VisiCut - A tool for laser precision cutting.
  • Xoetrope - An alternate crossplatform GUI for Java.
  • Power Line - A slide editor for SVG.
  • Tygron - Serious games illustrating urban planning and climate change.
  • NeoLogica - Medical imaging.
  • JOSM - Java OpenStreetMap Editor.
  • Freeplane - Java program for working with Mind Maps

License

SVG Salamander is available under two licenses. You may choose to use either the LGPL license or the BSD license - whichever is more appropriate for your project.

To the top