博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
The Apache™ Batik Project
阅读量:6469 次
发布时间:2019-06-23

本文共 3684 字,大约阅读时间需要 12 分钟。

The Apache™ Batik Project

Page Contents

Apache™ Batik SVG Toolkit

Overview

Batik is a Java-based toolkit for applications or applets that want to use images in the format for various purposes, such as display, generation or manipulation.

The project’s ambition is to give developers a set of that can be used together or individually to support specific SVG solutions. Examples of are the , the and the . Another ambition for the Batik project is to make it highly —for example, Batik allows the developer to handle custom SVG elements. Even though the goal of the project is to provide a set of core modules, one of the deliverables is a full fledged implementation which validates the various modules and their inter-operability.

What Batik can be used for

Batik use cases

With Batik, you can manipulate SVG documents anywhere Java is available. You can also use the various to , and SVG images in your applications or applets.

Batik makes it easy for Java based applications or applets to deal with SVG content. For example, using Batik’s , a Java application or applet can very easily export its graphics into the SVG format. Using Batik’s , an application or applet can very easily integrate SVG viewing and interaction capabilities. Another possibility is to use Batik’s modules to convert SVG to various formats, such as raster images (JPEG,PNGorTIFF) or other vector formats (EPSorPDF, the latter two due to the transcoders provided by ).

The Batik toolkit includes the following:

Modules

  • An

  • A set of

  • A

  • A that creates an SVG document from Java2D calls

  • A

  • A

Tools and applications

  • Squiggle, an

  • An

  • A

  • A for SVG source files

See for real-life example of how Batik is already integrated in projects and products.

The SVG specification

Scalable Vector Graphics, SVG, is a Recommendation. It defines an XML grammar for rich 2D graphics which includes features such as transparency, arbitrary geometry, filter effects (shadows, lighting effects, etc.), scripting and animation.

The SVG specification states:

This specification defines the features and syntax for Scalable Vector Graphics (SVG). SVG is a language for describing two-dimensional graphics in XML [ ]. SVG allows for three types of graphic objects: vector graphic shapes (e.g., paths consisting of straight lines and curves), images and text. Graphical objects can be grouped, styled, transformed and composited into previously rendered objects. The feature set includes nested transformations, clipping paths, alpha masks, filter effects and template objects.

SVG documents can be interactive and dynamic. Animations can be defined and triggered either declaratively (i.e., by embedding SVG animation elements in SVG content) or via scripting.

Implementation status

The latest revision of Batik, release 1.7, is a conformant and supports , and features of the SVG specification. This release supports a nearly complete implementation of declarative , too.

See the page for a detailed description of the set of SVG features Batik supports.

Download Batik

You can get the Batik distribution, source and binary, from the .

All other libraries needed by Batik are included in the distribution. As a consequence the Batik archive is quite big, but after you have downloaded it, you will not need anything else.
This is a warning that a script security issue was reported in the Batik Squiggle browser. Squiggle uses the Rhino scripting engine and some features of that engine can be leveraged by malicious scripts to gain access to otherwise protected resources (like the file system). This issue was fixed in the 1.5.1 release of Batik. If you are using a version of Batik older than 1.5.1, you should upgrade.

SVG to raster image conversion

转载地址:http://ohdko.baihongyu.com/

你可能感兴趣的文章
Android Camera简述
查看>>
Linux磁盘限额
查看>>
我的友情链接
查看>>
10.26 作业
查看>>
论剑BGP3
查看>>
关于lun 的几个问题
查看>>
网页图表Highcharts实践教程之图表区
查看>>
告诉自己,坚持学习--自己的新博客
查看>>
redis慢日志查询
查看>>
int表示范围大小
查看>>
玩转百度即用API(4)——手机号码归属地查询
查看>>
【Android学习总结】之Activity:初识Activity及使用
查看>>
HTTPD+PHP+MySQL+NFS
查看>>
数据库备份与恢复
查看>>
邮件数据恢复解决方法
查看>>
UIImage拉伸图片的效果实现
查看>>
Bash配置文件详解
查看>>
【Python之旅】第二篇(七):集合
查看>>
dom4j
查看>>
alisql ubuntu 安装
查看>>