Batik详解

Batik 详解

一、概述

Batik 是为想使用 svg 格式图片来实现各种功能的应用程序和 Applet 提供的一个基 java 的工具包。

工程创建的目的是为开发者提供一系列可以结合或单独使用来支持特殊的 svg 解决方案的核心模块。模块主要有

SVGParser,SVGGernerator,SVGDOM 。Batik 工程的其他目的是使它具有高度的扩展性----举个例子,Batik 允许开发

者使用自定义的 SVG 元素。即使工程的目标是提供一系列核心模块,但是还是提供了一个完整的 SVG 浏览器,以便证

实各个模块的有效性和交互性。

二、batik 的用途

通过 Batik,你可以在任何使用到java 的地方操作SVG 文档。你也可以使用各种 Batik 模块来在你的应用程序和Applet

中来生成,操作和转换你的svg 图像。

batik 使通过java 处理 SVG 内容变的简单。举个例子,通过使用batik 的SVGGernerate 模块,java 应用程序和 Applet

可以非常简单的使输出图像的格式为 SVG 。使用 batik 的SVG viewing component, 应用程序或者 Applet 可以非常容易的

整合 SVG 查看和交互功能。另外还可以使用 Batik 的模块将SVG 转换为其他格式,比如说 JPEG 等图像格式和 PD 等其

他向量格式。

Batik 工具包包含如下各项:

模块

 SVG DOM implementation

 一系列 SVG microsyntax parsers

 scripting module

 一个 generator 用来从java2D 中创建一个SVG document

 Swing SVG component

 transcoder module

工具和应用程序

 Squiggle, an SVG browser

 An SVG rasterizer

 A TTF to SVG converter

 A pretty printer for SVG source files

三、SVG DOM API

DOM API 定义了一个接口叫做 DOMimplementation,这个接口用来表现任意 DOM implementation 之间的连接。这

个类的作用是通过提供方法创建一个 document 来连接一个指定的 DOM 实例。然后具体的 Document 表现为一个 XML

Document 并且跟各种各样的 DOM 对象工厂比如 Element,Attr ,Text 那样动作。

那么怎样才能获得一个依赖于你使用的 DOM Implementation 的 DOMImplementation 实例呢?在 Batik 中 DOM

Implementation 存在于包 org.apache.batik.dom.svg 中,类名为SVGDOMImplementation 。以下例子表示怎样获取一个具

体的 DOMImplementation 对象:

import org.w3c.dom.DOMImplementation;

import org.apache.batik.dom.svg.SVGDOMImplementation;

DOMImplementation impl = SVGDOMImplementation.getDOMImplementation();

一旦你已经拥有了一个 DOMImplementation 实例,你将不能再依赖 batik 的指定代码而要准备好使用 DOM API

了。

1.创建一个 Doucument

使用 DOMImplementation,你现在将可以创建一个 Document。下面将举例说明怎么创建

java batik_Batik详解.pdf相关推荐

  1. java me基础教程 pdf_Java ME手机应用开发技术与案例详解 PDF

    资源名称:Java ME手机应用开发技术与案例详解 PDF Java ME手机应用开发技术与案例详解基于Java ME,系统描述了Java ME手机应用开发的各个方面.全书按照Java ME程序的开发 ...

  2. Java集合详解4:HashMap和HashTable

    <Java集合详解系列>是我在完成夯实Java基础篇的系列博客后准备开始写的新系列. 这些文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查 ...

  3. Apache Thrift - java开发详解

    2019独角兽企业重金招聘Python工程师标准>>> Apache Thrift - java开发详解 博客分类: java 架构 中间件 1.添加依赖 jar <depen ...

  4. Java泛型详解-史上讲解最详细的,没有之一

    目录 1. 概述 2. 一个栗子 3. 特性 4. 泛型的使用 4.1 泛型类 4.2 泛型接口 4.3 泛型通配符 4.4 泛型方法 4.4.1 泛型方法的基本用法 4.4.2 类中的泛型方法 4. ...

  5. Java虚拟机详解----JVM常见问题总结

    [正文] 声明:本文只是做一个总结,有关jvm的详细知识可以参考本人之前的系列文章,尤其是那篇:Java虚拟机详解04----GC算法和种类.那篇文章和本文是面试时的重点. 面试必问关键词:JVM垃圾 ...

  6. java 泛型详解、Java中的泛型方法、 java泛型详解

    本文参考java 泛型详解.Java中的泛型方法. java泛型详解 概述 泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用. 什么是泛型?为什么要使用泛型? 泛型,即& ...

  7. 最详细的java泛型详解

    来源:最详细的java泛型详解 对java的泛型特性的了解仅限于表面的浅浅一层,直到在学习设计模式时发现有不了解的用法,才想起详细的记录一下. 本文参考java 泛型详解.Java中的泛型方法. ja ...

  8. Java异常详解及如何处理

    来源:Java异常详解及如何处理 简介 程序运行时,发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常.异常发生时,是任程序自生自灭,立刻退出终止,还是输出错误给用户?或者用C语言 ...

  9. Java基础——Java NIO详解(一)

    一.基本概念 1.I/0简介 I/O即输入输出,是计算机与外界世界的一个借口.IO操作的实际主题是操作系统.在java编程中,一般使用流的方式来处理IO,所有的IO都被视作是单个字节的移动,通过str ...

最新文章

  1. 城市大脑的定义与理论基础综述
  2. Windows下启动各服务命令
  3. django-ORM单表操作
  4. mysql 1415 function_mysql error 1415:not allowed to return a result set from a function
  5. 软硬件版本号命名规范及原则
  6. STM32单片机中定义结构体类型指针
  7. 元胞自动机:森林火灾模拟(Python:numpy、seaborn)
  8. elasticsearch6.4.3实现搜索同义词
  9. docsify(一):新增PDF目录、封面功能
  10. verifier工具解决常见电脑故障
  11. 人体究竟需要多少蛋白质?摄入过量就是浪费钱
  12. Unity的五个窗口面板
  13. java-php-python-springboot网上摄影工作室计算机毕业设计
  14. javascript高级程序设计读书笔记2
  15. keep跑步数据修改器_一只手环就能指导运动?Keep 想做你手腕上的魔鬼教练
  16. PC版微信内置浏览器 缓存文件保存位置
  17. [电路]11-网孔电流法
  18. [ C语言 ] 结构体成员定义
  19. 扔旧被子扔掉霉运_您应该扔掉所有高科技产品盒吗?
  20. 数学物理方程 第二章 线性偏微分方程的通解

热门文章

  1. 基于深度学习的图像语义分割技术概述之4常用方法
  2. Fast R-CNN论文详解
  3. 批处理中setlocal enabledelayedexpansion的作用详细整理
  4. hystrix thread pool Metrics
  5. Wireshark的https代理抓包(whistle中间人代理)
  6. Atitit.技术管理者要不要自己做开发??
  7. Bash+R: howto pass parameters from bash script to R(转)
  8. WIF基本原理(2)基于声明的标识模型
  9. 河南彩民中奖3亿5千万
  10. sql count(1) count(*)区别_PostgreSQL的count(1)真的比count(*)快么?