The Apache Software Foundation > Apache XML Graphics Project
Font size:      

Apache™ XML Graphics

Welcome to the Apache™ XML Graphics Project

The Apache™ XML Graphics Project is responsible for software licensed to the Apache™ Software Foundation intended for the creation & maintenance of:

  • the conversion of XML formats to graphical output
  • related software components

Apache™ XML Graphics Project - Current Projects

The Apache™ XML Graphics Project currently consists of the following sub-projects, each focused on a different aspect of XML Graphics:

  • Apache™ Batik - A toolkit for Scalable Vector Graphics (SVG), based in Java
  • Apache™ FOP - A print formatter & renderer for XSL-FO (FO=formatting objects), based in Java
  • Apache™ XML Graphics Commons - A library with various components used by Apache Batik and Apache FOP, written in Java

Apache™ Batik: a Java-based SVG toolkit

Batik is a Java(tm) technology based toolkit for applications or applets that want to use images in the Scalable Vector Graphics (SVG) format for various purposes, such as viewing, generation or manipulation.

The project's ambition is to give developers a set of core modules which can be used together or individually to support specific SVG solutions. Examples of modules include:

Another ambition for the Apache™ Batik project is to make it highly extensible (for example, Batik allows the developer to handle custom SVG tags). Even though the goal of the project is to provide a set of core modules, one of the deliverables is a full fledged SVG Browser implementation, which validates the various modules and their inter-operability.

Find out more about Apache Batik.

Apache™ FOP: a Java-based XSL-FO (Formatting Objects) processor

FOP (Formatting Objects Processor) is the world's first print formatter driven by XSL formatting objects (XSL-FO) and the world's first output independent formatter. It is a Java application that reads a formatting object (FO) tree and renders the resulting pages to a specified output. The primary output target is PDF but other output formats currently supported include:

  • PDF (Portable Document Format)
  • PS (Adobe Postscript)
  • PCL (Printer Control Language)
  • AFP (MO:DCA)
  • SVG (Scalable Vector Graphics)
  • XML (area tree representation)
  • Print
  • AWT/Java2D
  • MIF
  • RTF (Rich Text Format)
  • TXT (text)

Find out more about Apache FOP.

Apache™ XML Graphics Commons

Apache™ XML Graphics Commons is a library that consists of several reusable components used by Apache Batik and Apache FOP. Many of these components can easily be used separately outside the domains of SVG and XSL-FO. You'll find components such as a PDF library, an RTF library, Graphics2D implementations that let you generate PDF and PostScript files and much more.

Apache™ XML Graphics Commons has only just started. It's in the process of being populated with components coming from Apache Batik and Apache FOP. Stay tuned for exciting treasures made available.

In the Wiki, we have a plan for building Apache XML Graphics Commons. The plan will give you an idea of what you can expect to find here when we're finished migrating components.

Find out more about Apache™ XML Graphics Commons.