Return-Path: X-Original-To: apmail-xmlgraphics-commits-archive@www.apache.org Delivered-To: apmail-xmlgraphics-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6FF7990F2 for ; Sun, 15 Apr 2012 05:46:56 +0000 (UTC) Received: (qmail 22797 invoked by uid 500); 15 Apr 2012 05:46:55 -0000 Mailing-List: contact commits-help@xmlgraphics.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: general@xmlgraphics.apache.org Delivered-To: mailing list commits@xmlgraphics.apache.org Received: (qmail 22673 invoked by uid 99); 15 Apr 2012 05:46:53 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 15 Apr 2012 05:46:53 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 15 Apr 2012 05:46:46 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id F34CE238890B for ; Sun, 15 Apr 2012 05:46:25 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: svn commit: r813020 [1/8] - in /websites/staging/xmlgraphics/trunk/content: ./ batik/ batik/demo/ batik/dev/ batik/tools/ batik/using/ batik/using/scripting/ Date: Sun, 15 Apr 2012 05:46:24 -0000 To: commits@xmlgraphics.apache.org From: buildbot@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20120415054625.F34CE238890B@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: buildbot Date: Sun Apr 15 05:46:22 2012 New Revision: 813020 Log: Staging update by buildbot for xmlgraphics Added: websites/staging/xmlgraphics/trunk/content/batik/ websites/staging/xmlgraphics/trunk/content/batik/contributors.html websites/staging/xmlgraphics/trunk/content/batik/demo/ websites/staging/xmlgraphics/trunk/content/batik/demo.html websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo$1.class (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo$2.class (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo.class (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo.java websites/staging/xmlgraphics/trunk/content/batik/demo/Makefile websites/staging/xmlgraphics/trunk/content/batik/demo/barChart.svg (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-awt-util.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-bridge.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-css.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-dom.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-ext.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-gvt.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-parser.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-script.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-svg-dom.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-swing.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-util.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/batik-xml.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/demo/demo.html websites/staging/xmlgraphics/trunk/content/batik/demo/xml-apis-dom3.jar (with props) websites/staging/xmlgraphics/trunk/content/batik/dev/ websites/staging/xmlgraphics/trunk/content/batik/dev/branches.html websites/staging/xmlgraphics/trunk/content/batik/dev/index.html websites/staging/xmlgraphics/trunk/content/batik/dev/svg12.html websites/staging/xmlgraphics/trunk/content/batik/dev/test.html websites/staging/xmlgraphics/trunk/content/batik/faq.html websites/staging/xmlgraphics/trunk/content/batik/index.html websites/staging/xmlgraphics/trunk/content/batik/install.html websites/staging/xmlgraphics/trunk/content/batik/license.html websites/staging/xmlgraphics/trunk/content/batik/mailing-lists.html websites/staging/xmlgraphics/trunk/content/batik/status.html websites/staging/xmlgraphics/trunk/content/batik/tools/ websites/staging/xmlgraphics/trunk/content/batik/tools/browser.html websites/staging/xmlgraphics/trunk/content/batik/tools/font-converter.html websites/staging/xmlgraphics/trunk/content/batik/tools/index.html websites/staging/xmlgraphics/trunk/content/batik/tools/pretty-printer.html websites/staging/xmlgraphics/trunk/content/batik/tools/rasterizer.html websites/staging/xmlgraphics/trunk/content/batik/uses.html websites/staging/xmlgraphics/trunk/content/batik/using/ websites/staging/xmlgraphics/trunk/content/batik/using/architecture.html websites/staging/xmlgraphics/trunk/content/batik/using/dom-api.html websites/staging/xmlgraphics/trunk/content/batik/using/extending.html websites/staging/xmlgraphics/trunk/content/batik/using/index.html websites/staging/xmlgraphics/trunk/content/batik/using/parsers.html websites/staging/xmlgraphics/trunk/content/batik/using/scripting/ websites/staging/xmlgraphics/trunk/content/batik/using/scripting/ecmascript.html websites/staging/xmlgraphics/trunk/content/batik/using/scripting/java.html websites/staging/xmlgraphics/trunk/content/batik/using/scripting/security.html websites/staging/xmlgraphics/trunk/content/batik/using/svg-generator.html websites/staging/xmlgraphics/trunk/content/batik/using/swing.html websites/staging/xmlgraphics/trunk/content/batik/using/transcoder.html Modified: websites/staging/xmlgraphics/trunk/content/ (props changed) Propchange: websites/staging/xmlgraphics/trunk/content/ ------------------------------------------------------------------------------ --- cms:source-revision (original) +++ cms:source-revision Sun Apr 15 05:46:22 2012 @@ -1 +1 @@ -1326256 +1326257 Added: websites/staging/xmlgraphics/trunk/content/batik/contributors.html ============================================================================== --- websites/staging/xmlgraphics/trunk/content/batik/contributors.html (added) +++ websites/staging/xmlgraphics/trunk/content/batik/contributors.html Sun Apr 15 05:46:22 2012 @@ -0,0 +1,238 @@ + + + + Batik contributors + + + + + + + + + + + + + + + + + + + +
+ The Apache XML Graphics Project +

Batik contributors

+
+

Home » Batik

+ +

This page contains information about the current Batik developers and the features they are working on at the moment.

+

Committers

+

This section lists all developers with commit access to the Batik subversion repository.

+

The following people are active Batik developers:

+
+
Thomas DeWeese (TD)
+
Thomas.DeWeese@Kodak.com
+
+

Thomas DeWeese is a Senior Software Engineer at Eastman Kodak Company, in Rochester New York where he has worked for the Image Science Division’s image application development group since 1994. Thomas has made contributions to the imaging portions of the Java2D API, and was a major contributor to the Java Advanced Image API (version 1.0). Since then he has participated in the Jini Printing Working group and has recently become a member of Kodak’s SVG Working Group team.

+
+
Cameron McCormack (CM)
+
cam@mcc.id.au
+
+

Cameron McCormack is a postgraduate student at Monash University in Melbourne, Australia, where he is undertaking his PhD. His thesis relates to adaptive layout of diagrams, and he has worked on an extension to SVG to allow expressions as attribute values. He also is an invited expert on the SVG Working Group. Cameron has been a committer since 2004, and has contributed code mostly related to SMIL animation and upcoming SVG 1.2 support.

+
+
Dieter von Holten (DH)
+
Dieter is a freelance programmer living in Hamburg, Germany. He spends his time on projects in refineries and tankfarms, chasing bits from ERP to PLC and back. Although not specifically an expert with graphics, he tries to help out “maintaining and enhancing this interesting, non-trivial piece of code”.
+
Helder Magalhães (HM)
+
helder.magalhaes@gmail.com
+
+

Helder is a software engineer at the Power Systems Automation unit of Efacec, in Maia, Portugal. He is an SVG enthusiast and has been involved with the technology since 2005. In his spare time, he tries to help out in several open-source projects, mostly SVG-related, with an emphasis in Batik. He is also an invited expert on the SVG Interest Group.

+

The following people are some of the Batik project founders and helped define and implement the initial Batik architecture:

+
+
Bill Haneman
+
bill.haneman@ireland.sun.com
+
+

Bill Haneman works for Sun Microsystems’ Desktop Enabling Middleware group in Dublin, Ireland, and implemented much of the Batik’s text support (though not SVG Fonts, thanks Bella, Dean, and David!). He is also technical lead for the GNOME Accessibility Project , an open project to provide an accessibility framework for Linux and Solaris(TM) desktops. A twenty-year veteran of scientific programming and application development, he is a US expatriate who plays traditional Irish music on the uilleann pipes.

+
+
Vincent Hardy
+
vincent.hardy@eng.sun.com
+
+

Vincent is one of the founders of the SVG Batik project at Apache. He is a Senior Staff Engineer at Sun Microsystems Inc., where he is part of the XML technology center. Vincent represented Sun in the W3C’s SVG Working Group and is currently a W3C fellow in the W3C office in Sophia Antipolis, France. Vincent is the author of papers and a book on the Java 2D API.

+
+
Stephane Hillion
+
shillion@ilog.fr
+
+

Stephane is a software engineer at the Koala project, part of ILOG’s visualization R&D team, located in Sophia-Antipolis, France. His main interests are in programming languages and web standards. He wrote the Apache Batik’s DOM, CSS and Swing modules.

+
+
Dean Jackson
+
dean.jackson@cmis.csiro.au
+
+

Dean is employed by CSIRO Australia and is currently working at the World Wide Web Consortium (W3C) full time on SVG. He is a member of the W3C’s SVG working group, and was a developer of the CSIRO SVG Toolkit, one of the first and most complete open source SVG libraries.

+
+
Christophe Jolif
+
cjolif@ilog.fr
+
+

Christophe Jolif is a Software Architect mainly working on the ILOG JViews Component Suite, the ILOG Java visualization framework. He has been working for ILOG since 1997, and is representing the company in the Scalable Vector Graphics (SVG) W3C Working Group since 1999. He has implemented SVG import and export features in ILOG JViews and is now also working on the SVG Batik project at Apache.

+
+
Thierry Kormann
+
tkormann@ilog.fr
+
+

Thierry is a software engineer, at the Koala project of ILOG located at Sophia-Antipolis, France and a member of the SVG working group. Thierry has contributed to most of Koala’s projects involving Java and XML. Since then, he co-founded the Apache Batik project. His daytime job is focused on Graphics and XML related technologies. Prior to joining ILOG, Thierry worked as a software engineer for Bull.

+
+
Nicolas Socheleau
+
nicolas.socheleau@bitflash.com
+
+

Nicolas Socheleau is a software engineer at BitFlash Inc, Ottawa, Canada where he worked on different SVG related projects. He joined the Batik team in June 2002. His interests include XML technologies and Graphics. He contributed some text functionality and SVG DOM interface implementations.

+
+
Emmanuel Tissandier
+
tissandi@ilog.fr
+
+

Emmanuel Tissandier has been working for 10 years as a software engineer in object oriented environments. He started with the development of CASE tools at Rank Xerox and joined the visualization R&D team of ILOG in 1995. Since 1997, he has been the R&D Project Manager for the ILOG JViews Component Suite, a product for delivering two-dimensional structured graphics, cartography, diagrams, and Gantt charts in Java.

+

Bella Robinson implemented the SVG font support in Batik:

+
+
Bella Robinson
+
bella.robinson@cmis.csiro.au
+
+

Bella is a Software Engineer working for CSIRO Australia. She was one of the main developers of the CSIRO SVG Toolkit and has also been working on a Pocket SVG Viewer for handheld devices. Her interests include graphics and XML programming.

+

In addition, James Davidson and Stefano Mazzochi , two Apache veterans who helped the Batik team start the project at Apache, also have commit access to the Subversion repository.

+

Batik contributors

+

The following people have contributed to Batik:

+
    +
  • +

    Ivan Andjelkovic —Google Summer of Code student who worked on enhancements to the DOM Viewer window.

    +
  • +
  • +

    Curt Arnold —Contributed many bug reports and fixes.

    +
  • +
  • +

    Robert A. DiBlasi —Contributed a lot of feedback on the Batik documentation and suggestions on how to improve it.

    +
  • +
  • +

    Archie Cobbs —Contributed a thread deadlocking fix.

    +
  • +
  • +

    Paul Evenblij —Contributed an improvement to the way images are handled by the SVGGraphics2D component. Also contributed bug fixes on the SVGGraphics2D component.

    +
  • +
  • +

    Pier Fumagalli —Helped with the Batik web site and mailing lists.

    +
  • +
  • +

    Hervé Girod —Contributed many improvements to the WMF transcoder.

    +
  • +
  • +

    Christophe Held —Contributed a math formula in SVG generated from MathML.

    +
  • +
  • +

    Tonny Kohar —Contributed a syntax highlight XML editor component for use in Squiggle.

    +
  • +
  • +

    Clay Leeds —Helped getting Batik’s new site set up.

    +
  • +
  • +

    Keiron Liddle —A FOP member who worked on an SVG to PDF transcoder that is a part of FOP but works in the Batik infrastructure.

    +
  • +
  • +

    Jeremias Märki —Another FOP member who contributed code to improve compatibility with GNU Classpath.

    +
  • +
  • +

    John Morrison —Contributed a set of XSL stylesheets to generate SVG charts, such as line graphs, bar charts or pie charts.

    +
  • +
  • +

    Andreas Neumann —Contributed two SVG maps which Bert Bos has internationalized (adding an English version to the original German text).

    +
  • +
  • +

    Luan O’Carroll —Contributed the original WMF transcoder.

    +
  • +
  • +

    Sheng Pei —Contributed to filter support and the regard tool.

    +
  • +
  • +

    Neeme Praks —Contributed patches, feedback and scripts for building charts from John Morrisson’s XSL stylesheets.

    +
  • +
  • +

    Henri Ruini —Contributed to a rewrite of the rasterizer application.

    +
  • +
  • +

    David Schweinsberg —Contributed the True Type Font to SVG Font converter.

    +
  • +
  • +

    Eric Suen —Tracked down some memory leaks.

    +
  • +
  • +

    Nicholas Talian —Contributed on gradients.

    +
  • +
  • +

    Andres Toussaint —Contributed SVGAnimatedPathData functionality.

    +
  • +
+

Areas of expertise

+

The following table summarizes the areas of expertise of each active committer. It allows better coordination of both internal and external development efforts. +

+| | TD | CM | DH | HM | +|--|----|----|----|----| +| Team Contact | X | | | | +| Bridge | | X | | | +| Browser | X | | | | +| CSS | X | X | | | +| Documentation | X | X | | X | +| SVG DOM | | X | | | +| GVT Core | X | | | | +| GVT Filters | X | | | | +| GVT Renderer | X | | | | +| GVT Text | X | | | | +| SVGGraphics2D | X | | | | +| SMIL Animation | | X | | | +| Micro Parsers | X | | | | +| Rasterizer | X | | | | +| Scripting | | X | | | +| Swing Components | X | | | | +| Test | X | | X | X | +

+
+ + + + Added: websites/staging/xmlgraphics/trunk/content/batik/demo.html ============================================================================== --- websites/staging/xmlgraphics/trunk/content/batik/demo.html (added) +++ websites/staging/xmlgraphics/trunk/content/batik/demo.html Sun Apr 15 05:46:22 2012 @@ -0,0 +1,88 @@ + + + + Batik Demo + + + + + + + + + + + + + + + + + + + +
+ The Apache XML Graphics Project +

Batik Demo

+
+

Home » Batik

+ +

This page demonstrates the use of Batik’s JSVGCanvas swing component in a Java applet.

+

| [Your browser doesn’t seem to support Java applets, which is required for this demo.] | +| Expense | Amount | +|---------|--------| + | Shoe | | + | Car | | + | Travel | | + | Computer | |

+

+ | + +The applet ( view source ) displays the barChart.svg sample from the Batik distribution using a JSVGCanvas . Script in the web page then interacts with the applet, by calling the updateBar method of the applet object when the Update chart button is pressed. This method modifies the SVG document being displayed to update the heights of the bars.

+
+ + + + Added: websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo$1.class ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo$1.class ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo$2.class ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo$2.class ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo.class ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo.class ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo.java ============================================================================== --- websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo.java (added) +++ websites/staging/xmlgraphics/trunk/content/batik/demo/AppletDemo.java Sun Apr 15 05:46:22 2012 @@ -0,0 +1,151 @@ +/* + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + */ +import java.io.IOException; +import java.net.URL; + +import javax.swing.JApplet; + +import org.apache.batik.dom.svg.SAXSVGDocumentFactory; +import org.apache.batik.swing.JSVGCanvas; +import org.apache.batik.util.XMLResourceDescriptor; +import org.w3c.dom.Document; +import org.w3c.dom.Element; +import org.w3c.dom.Node; + +/** + * A applet demonstrating the JSVGCanvas. + * + * @version $Id: AppletDemo.java 985243 2010-08-13 15:30:25Z helder $ + */ +public class AppletDemo extends JApplet { + + protected JSVGCanvas canvas; + + protected Document doc; + + protected Element svg; + + public void init() { + // Create a new JSVGCanvas. + canvas = new JSVGCanvas(); + getContentPane().add(canvas); + + try { + // Parse the barChart.svg file into a Document. + String parser = XMLResourceDescriptor.getXMLParserClassName(); + SAXSVGDocumentFactory f = new SAXSVGDocumentFactory(parser); + URL url = new URL(getCodeBase(), "barChart.svg"); + doc = f.createDocument(url.toString()); + + svg = doc.getDocumentElement(); + + // Change the document viewBox. + svg.setAttributeNS(null, "viewBox", "40 95 370 265"); + + // Make the text look nice. + svg.setAttributeNS(null, "text-rendering", "geometricPrecision"); + + // Remove the xml-stylesheet PI. + for (Node n = svg.getPreviousSibling(); + n != null; + n = n.getPreviousSibling()) { + if (n.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE) { + doc.removeChild(n); + break; + } + } + + // Remove the Batik sample mark 'use' element. + for (Node n = svg.getLastChild(); + n != null; + n = n.getPreviousSibling()) { + if (n.getNodeType() == Node.ELEMENT_NODE + && n.getLocalName().equals("use")) { + svg.removeChild(n); + break; + } + } + } catch (Exception ex) { + } + } + + public void start() { + // Display the document. + canvas.setDocumentState(JSVGCanvas.ALWAYS_DYNAMIC); + canvas.setDocument(doc); + } + + public void stop() { + // Remove the document. + canvas.setDocument(null); + } + + public void destroy() { + canvas.dispose(); + } + + public void updateBar(final String name, final float value) { + canvas.getUpdateManager().getUpdateRunnableQueue().invokeLater + (new Runnable() { + public void run() { + Element bar = doc.getElementById(name); + if (bar == null) { + return; + } + + Node n; + Element path1, path2, path3; + for (n = bar.getFirstChild(); + n.getNodeType() != Node.ELEMENT_NODE; + n = n.getNextSibling()) { + } + path1 = (Element) n; + for (n = n.getNextSibling(); + n.getNodeType() != Node.ELEMENT_NODE; + n = n.getNextSibling()) { + } + path2 = (Element) n; + for (n = n.getNextSibling(); + n.getNodeType() != Node.ELEMENT_NODE; + n = n.getNextSibling()) { + } + path3 = (Element) n; + + int offset; + if (name.equals("ShoeBar")) { + offset = 0; + } else if (name.equals("CarBar")) { + offset = 79; + } else if (name.equals("TravelBar")) { + offset = 158; + } else { + offset = 237; + } + + String d = + "M " + (offset + 86) + ",240 v -" + (3.7 * value) + " l 15,-15 v " + (3.7 * value) + " l -15,15 z"; + path1.setAttributeNS(null, "d", d); + d = "M " + (offset + 86) + "," + (240 - 3.7 * value) + " h -39 l 15,-15 h 39 l -15,15 z"; + path2.setAttributeNS(null, "d", d); + d = "M " + (offset + 47) + "," + (240 - 3.7 * value) + " v " + (3.7 * value) + " h 39 v -" + (3.7 * value) + " h -39 z"; + path3.setAttributeNS(null, "d", d); + } + }); + } +} Added: websites/staging/xmlgraphics/trunk/content/batik/demo/Makefile ============================================================================== --- websites/staging/xmlgraphics/trunk/content/batik/demo/Makefile (added) +++ websites/staging/xmlgraphics/trunk/content/batik/demo/Makefile Sun Apr 15 05:46:22 2012 @@ -0,0 +1,2 @@ +AppletDemo.class : AppletDemo.java + javac -classpath .:batik-awt-util.jar:batik-bridge.jar:batik-css.jar:batik-dom.jar:batik-ext.jar:batik-gvt.jar:batik-parser.jar:batik-script.jar:batik-svg-dom.jar:batik-swing.jar:batik-util.jar:batik-xml.jar:xml-apis-dom3.jar AppletDemo.java Added: websites/staging/xmlgraphics/trunk/content/batik/demo/barChart.svg ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/barChart.svg ------------------------------------------------------------------------------ svn:mime-type = application/xml Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-awt-util.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-awt-util.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-bridge.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-bridge.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-css.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-css.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-dom.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-dom.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-ext.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-ext.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-gvt.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-gvt.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-parser.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-parser.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-script.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-script.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-svg-dom.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-svg-dom.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-swing.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-swing.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-util.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-util.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-xml.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/batik-xml.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/demo/demo.html ============================================================================== --- websites/staging/xmlgraphics/trunk/content/batik/demo/demo.html (added) +++ websites/staging/xmlgraphics/trunk/content/batik/demo/demo.html Sun Apr 15 05:46:22 2012 @@ -0,0 +1,83 @@ + + + Batik demo + + + + + + + + + + + + Added: websites/staging/xmlgraphics/trunk/content/batik/demo/xml-apis-dom3.jar ============================================================================== Binary file - no diff available. Propchange: websites/staging/xmlgraphics/trunk/content/batik/demo/xml-apis-dom3.jar ------------------------------------------------------------------------------ svn:mime-type = application/zip Added: websites/staging/xmlgraphics/trunk/content/batik/dev/branches.html ============================================================================== --- websites/staging/xmlgraphics/trunk/content/batik/dev/branches.html (added) +++ websites/staging/xmlgraphics/trunk/content/batik/dev/branches.html Sun Apr 15 05:46:22 2012 @@ -0,0 +1,85 @@ + + + + Subversion repository branches + + + + + + + + + + + + + + + + + + + +
+ The Apache XML Graphics Project +

Subversion repository branches

+
+

Home » Batik » Dev

+ +

This page contains information on the current work that is being done in Batik’s Subversion repository. There are currently three main branches in use in the repository:

+
+
trunk
+
The trunk is the main development branch. All bug fixes and most new non-experimental features are checked in to this branch. While it is the bleeding edge of the available Batik code, it is generally stable enough to use. For more information on SVG 1.2 features that are supported by the trunk, see the SVG 1.2 support page.
+
webapi
+
The webapi branch is where some experimental support for some of the work being produced by the Web API WG (specifically, support for XMLHttpRequest and the Window object ). When the specifications and the implementation mature enough, the code will be folded back into the trunk.
+
svg11
+
The svg11 branch contains the code that was the trunk before the old svg12 branch became the trunk. Bug fixes that are made on the trunk are also ported to the svg11 branch. This branch will be deprecated at some point in the future.
+
+
+ + + + Added: websites/staging/xmlgraphics/trunk/content/batik/dev/index.html ============================================================================== --- websites/staging/xmlgraphics/trunk/content/batik/dev/index.html (added) +++ websites/staging/xmlgraphics/trunk/content/batik/dev/index.html Sun Apr 15 05:46:22 2012 @@ -0,0 +1,85 @@ + + + + Batik Development + + + + + + + + + + + + + + + + + + + +
+ The Apache XML Graphics Project +

Batik Development

+
+

Home » Batik » Dev

+ +

This section has information on the working on Batik, and on the features that are supported by the code in the Subversion repository that haven’t yet made it to a release.

+
+
Branches
+
The branches page lists the branches of development that are in the Subversion repository and their purpose.
+
SVG 1.2 support
+
Some features of SVG 1.2 Tiny and Full are supported in the trunk, and these are listed on the SVG 1.2 support page.
+
Test infrastructure
+
Finally, there is a description of Regard, the test infrastructure used to test Batik functionality and avoid regressions.
+
+
+ + + + Added: websites/staging/xmlgraphics/trunk/content/batik/dev/svg12.html ============================================================================== --- websites/staging/xmlgraphics/trunk/content/batik/dev/svg12.html (added) +++ websites/staging/xmlgraphics/trunk/content/batik/dev/svg12.html Sun Apr 15 05:46:22 2012 @@ -0,0 +1,199 @@ + + + + SVG 1.2 support + + + + + + + + + + + + + + + + + + + +
+ The Apache XML Graphics Project +

SVG 1.2 support

+
+

Home » Batik » Dev

+ +

This page details information atbout Batik’s implementation of features from SVG 1.2, Tiny and Full . Note that the information on this page is based on the code in the Subversion repository trunk.

+

DOM Level 3

+

DOM Level 3 Core , Events and XPath are all supported. These features are available regardless of whether the document has version="1.1" or version="1.2" set on the root svg element.

+

There are a few issues with the DOM Level 3 Core implementation:

+
    +
  1. +

    The Document.compareDocumentPosition method does not give the correct result when used on DTD notation or entity nodes in the document.

    +
  2. +
  3. +

    Node.renameNode always creates a new node and replaces the old node with it. This is technically allowed, but sub-optimal.

    +
  4. +
  5. +

    XML Schema information is never used. Batik does not implement XML Schema, so any methods or attributes that would utilise or expose schema information (such as the schemaTypeInfo attribute on the Attr and Element interfaces) do not do so.

    +
  6. +
  7. +

    Document.normalizeDocument ignores the "entities" parameter in the document’s DOMConfiguration .

    +
  8. +
+

Using DOM Level 3 functionality from Java

+

JREs before 1.5 include the DOM Level 2 interfaces and this can cause problems when trying to use the DOM Level 3 versions of these same interface files ( org.w3c.dom.* ). Though the concrete Batik DOM classes implement the DOM Level 3 functionality, you won’t be able to access those methods through the org.w3c.dom interfaces on these earlier JREs.

+

There are two ways to overcome this problem. The first is to install the DOM Level 3 interfaces using the Endorsed Standards Override Mechanism . Copy the file lib/xml-apis-ext.jar into the endorsed standards override directory and the DOM Level 3 interfaces will be visible. You can then write code against them (for example, call Document.renameNode directly). However, this will mean that other people cannot run or compile your code unless they have JRE 1.5 or later, or they have also installed the xml-apis-ext.jar in the same way.

+

The second method, which requires less messing about with the JRE, is to cast your DOM objects to the concrete Batik DOM objects and call your DOM Level 3 methods directly on them. The Batik DOM classes are in the org.apache.batik.dom package. The classes named Abstract* implement the DOM interfaces, and also contain the DOM Level 3 methods. The advantage of this method is that for your code to compile and run in others’ environments, they need not install any jars with the endorsed standards overrides.

+

Here is an example of using the second method to get access to DOM Level 3 specific methods: +import org.apache.batik.dom.AbstractDocument; +import org.apache.batik.dom.svg.SVGDOMImplementation;

+

import org.w3c.dom.DOMImplementation; +import org.w3c.dom.Document; +import org.w3c.dom.Element;

+

public class C { + public void f() { + // Create a new SVG document + DOMImplementation impl = SVGDOMImplementation.getDOMImplementation(); + Document doc = impl.createDocument("http://www.w3.org/2000/svg", "svg", null);

+
    // Create a 'g' element and append it to the root 'svg' element
+    Element e = doc.createElementNS("http://www.w3.org/2000/svg", "g");
+    doc.getDocumentElement().appendChild(e);
+
+    // Cast the document object to org.apache.batik.dom.AbstractDocument,
+    // so that DOM 3 methods will be guaranteed to be visible
+    AbstractDocument document = (AbstractDocument) doc;
+
+    // Now a DOM 3 method can be used
+    document.renameNode(e, "http://www.w3.org/2000/svg", "text");
+}
+
+ + +

} +For cases where the DOM Level 3 versions of these interfaces contain constants that you wish to use, the constants have been copied into the Batik DOM classes. For example: +import org.apache.batik.dom.AbstractNode; +import org.apache.batik.dom.svg.SVGDOMImplementation;

+

import org.w3c.dom.DOMImplementation; +import org.w3c.dom.Document; +import org.w3c.dom.Element;

+

public class C { + public void f() { + // Create a new SVG document + DOMImplementation impl = SVGDOMImplementation.getDOMImplementation(); + Document doc = impl.createDocument("http://www.w3.org/2000/svg", "svg", null);

+
    // Create a 'g' element and append it to the root 'svg' element
+    Element svg = doc.getDocumentElement();
+    Element e = doc.createElementNS("http://www.w3.org/2000/svg", "g");
+    svg.appendChild(e);
+
+    AbstractNode n1 = (AbstractNode) svg;
+    AbstractNode n2 = (AbstractNode) e;
+    int position = n1.compareDocumentPosition(n2);
+    if (position == AbstractNode.DOCUMENT_POSITION_PRECEDING
+                  | AbstractNode.DOCUMENT_POSITION_CONTAINS) {
+        System.out.println("The svg element contains the g element.");
+    } else {
+        System.out.println("Something is wrong!");
+    }
+}
+
+ + +

} +Note that using these org.apache.batik.dom interfaces is only needed for the DOM Level 3 Core and Events interfaces. There were no earlier versions of the DOM XPath interfaces to conflict with, so these can be used directly ( org.w3c.dom.xpath ).

+

Of course, none of this matters if you are just using the DOM 3 functionality in ECMAScript, as the matter of interfaces is hidden from the scripting environment.

+

XML Binding Language for SVG (sXBL)

+

sXBL is supported in documents with version="1.2" . However, the following issues exist:

+
    +
  1. +

    sXBL cannot be used for SVG resources or visual effects .

    +
  2. +
  3. +

    The traitDef element is not implemented.

    +
  4. +
  5. +

    The handling of CSS is probably not quite correct.

    +
  6. +
+

Two content selector languages are supported: XPath 1.0 Patterns and the drastically reduced XPath subset. XPath Patterns is the default language. To change the language used to the XPath subset, put an attribute batik:selectorLanguage="XPathSubset" on the xbl:content element or on the svg document element. (The batik extension namespace prefix should be declared with xmlns:batik="http://xml.apache.org/batik/ext" .)

+

Note that sXBL is likely to be dropped in favor of XBL 2.0 in SVG 1.2 Full .

+

Flowing text and graphics

+

The flowRoot , flowRegion , flowDiv , flowPara , flowSpan , flowRegionBreak and flowLine elements from SVG 1.2 Full ’s Flowing Text and Graphics chapter are supported in documents with version="1.2" .

+

The more recent SVG 1.2 Tiny draft specifies a different syntax for (a more restricted version of) flowing text, and the full flowing text syntax is therefore likely to change.

+

Other SVG 1.2 features

+

The following other features from SVG 1.2 are supported:

+
+
+ + + + --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscribe@xmlgraphics.apache.org For additional commands, e-mail: commits-help@xmlgraphics.apache.org
+ + Your browser doesn't seem to support Java applets, which is required + for this demo. + + + + + + + + + + + + + + + + + + +
ExpenseAmount
Shoe +
Car +
Travel +
Computer +
+

+ +

+