Title: Apache(tm) XML Graphics Project - for the creation and maintenance of software for the conversion of XML formats to graphical output #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](/batik/) - A toolkit for Scalable Vector Graphics (SVG), based in Java - [Apache FOP](/fop/) - A print formatter & renderer for XSL-FO (FO=formatting objects), based in Java - [Apache XML Graphics Commons](/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)](http://www.w3.org/TR/SVG/) format for various purposes, such as viewing, generation or manipulation. The project's ambition is to give developers a set of [core modules](http://xmlgraphics.apache.org/batik/using/architecture.html#coreComponents) which can be used together or individually to support specific SVG solutions. Here are some examples of [modules](http://xmlgraphics.apache.org/batik/architecture.html). ## Apache™ Batik Modules - the [SVG Parser](/batik/architecture.html#lowLevelComponents) - the [SVG Generator](/batik/svggen.html) - the [SVG DOM](/batik/domapi.html) Another ambition for the Batik project is to make it highly [extensible](/batik/extendingBatik.html) (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](http://xmlgraphics.apache.org/batik/tools/browser.html) implementation, which validates the various modules and their inter-operability. Find out more about [Apache Batik](/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](http://www.w3.org/TR/xsl/) (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 there are other [output formats](/fop/output.html) currently supported. ##Apache™ FOP Output Formats - 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](/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](https://cwiki.apache.org/confluence/display/XMLGRAPHICS/XmlGraphicsCommonComponents). 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](/commons/). (CMS)