You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xmlgraphics.apache.org by bu...@apache.org on 2012/10/23 17:05:47 UTC

svn commit: r835892 [2/17] - in /websites/staging/xmlgraphics/trunk/content: ./ batik/ batik/dev/ batik/tools/ batik/using/ batik/using/scripting/ commons/ fop/ fop/0.95/ fop/1.0/ fop/1.1/ fop/dev/ fop/dev/design/ fop/trunk/

Modified: websites/staging/xmlgraphics/trunk/content/batik/tools/browser.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/tools/browser.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/tools/browser.html Tue Oct 23 15:05:41 2012
@@ -160,11 +160,11 @@ $(document).ready(function () {
       <div id="content" class="grid_16">
       	<!-- <div id="breadcrumb"><a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/batik/">Batik</a>&nbsp;&raquo&nbsp;<a href="/batik/tools/">Tools</a></div> -->
       	<div class="section-content"><p>This page describes the main features of Squiggle, the SVG browser that comes with Batik.</p>
-<h1 id="downloading">Downloading the browser</h1>
+<h1 id="downloading-the-browser-wzxhzdk0wzxhzdk1">Downloading the browser  <a id="#downloading"></a></h1>
 <p>Refer to the <a href="../download.cgi">download page</a> to find out how to download Batik. Refer to the <a href="../install.html">installation page</a> for instructions on how to install the Batik download on your system.</p>
-<h1 id="starting">Starting the browser</h1>
+<h1 id="starting-the-browser-wzxhzdk2wzxhzdk3">Starting the browser  <a id="#starting"></a></h1>
 <p>The method for starting the browser depends on the distribution of Batik that you chose to download. The following describes how to start the browser for each distribution (binary and source).</p>
-<h2 id="starting-binary">Starting the browser for the binary distribution</h2>
+<h2 id="starting-the-browser-for-the-binary-distribution-wzxhzdk4wzxhzdk5">Starting the browser for the binary distribution # <a id="#starting-binary"></a></h2>
 <p>If you downloaded the <a href="../install.html#distributions">binary distribution</a> of Batik, you should have a file called <code>batik-1.6.zip</code> (or similar), which, when expanded, created a <code>batik-squiggle.jar</code> file. To start the browser, type the following on the command line:
 cd installation-directory
 java -jar batik-squiggle.jar
@@ -183,7 +183,7 @@ starts the browser with a small widget t
 java -jar batik-squiggle.jar -font-size 10 samples/batikLogo.svg
 starts the browser with the <code>batikLogo.svg</code> file open and uses a small widget text font size.</p>
 <p>If you are using Mac OS X, and you have generated the Squiggle application bundle, you can use its icon to start the browser. This is the preferred way to start the browser under Mac OS X, as it ensures better integration with the operating system (a nicer looking menu and dock icon).</p>
-<h2 id="starting-source">Starting the browser for the source distribution</h2>
+<h2 id="starting-the-browser-for-the-source-distribution-wzxhzdk6wzxhzdk7">Starting the browser for the source distribution # <a id="#starting-source"></a></h2>
 <p>If you downloaded the <a href="../install.html#distributions">source distribution</a> of Batik, you should have a zip file called <code>batik-src-1.6.zip</code> (or similar) that expanded into a directory called <code>xml-batik</code> or<code>batik- <em>version</em> </code>. In that directory, you can find build scripts for the platform you are running on. For example, there is a <code>build.bat</code> script for users of the Windows platform and there is a <code>build.sh</code> script for UNIX users.</p>
 <p>To start the browser you should:</p>
 <ul>
@@ -207,11 +207,11 @@ and for Unix:
 ./build.sh squiggle [-font-sizefont-size] [URIs]
 Refer to <a href="#starting-binary">“Starting the browser for the binary distribution”</a> for an explanation of these options.</p>
 <p>Note that the number of files that can be opened on Windows from the command line is limited because batch files take at most 9 parameters.</p>
-<h2 id="screenshot">Squiggle screenshot</h2>
+<h2 id="squiggle-screenshot-wzxhzdk10wzxhzdk11">Squiggle screenshot # <a id="#screenshot"></a></h2>
 <p>The following image shows the result of starting the browser, from the binary or source distribution, with the <code>-font-size 10
             samples/batikFX.svg</code> options.
 <div class="figure"> <img alt="Screenshot of Squiggle showing the batikFX.svg sample" src="images/svgviewerDefaultRegular.png" title="" /> </div></p>
-<h1 id="viewing">Viewing SVG documents</h1>
+<h1 id="viewing-svg-documents-wzxhzdk14wzxhzdk15">Viewing SVG documents  <a id="#viewing"></a></h1>
 <p>The browser has several features to view and browse SVG documents:</p>
 <ul>
 <li>
@@ -230,16 +230,16 @@ Refer to <a href="#starting-binary">â€
 <p><a href="#viewingMultiple">Viewing multiple SVG files</a> </p>
 </li>
 </ul>
-<h2 id="localFile">Opening a local SVG file</h2>
+<h2 id="opening-a-local-svg-file-wzxhzdk16wzxhzdk17">Opening a local SVG file # <a id="#localFile"></a></h2>
 <p>In situations where you want to open SVG files locally on the machine where you are running Squiggle, you can use <strong>File→Open File</strong> menu item to open that file, or use the <strong>Ctrl-F</strong> key accelerator. Doing so brings up a file chooser that lets you select the file you want to view.
 <div class="figure"> <img alt="Screenshot of Squiggle showing the 'File→Open' menu and file chooser" src="images/svgviewerFileOpen.png" title="" /> </div></p>
-<h2 id="urlFile">Opening an SVG file from the web</h2>
+<h2 id="opening-an-svg-file-from-the-web-wzxhzdk20wzxhzdk21">Opening an SVG file from the web # <a id="#urlFile"></a></h2>
 <p>There are many situations where the SVG content you want to view is not local to the machine where Squiggle is running. In that case, you can use the <strong>File→Open Location</strong> menu item, or use the <strong>Ctrl-A</strong> key accelerator to open that page. Doing so brings up a dialog box where you can type in the URL for the file you want to view.
 <div class="figure"> <img alt="Screenshot of Squiggle showing the 'File→Open Location' menu and window" src="images/svgviewerOpenPage.png" title="" /> </div></p>
-<h2 id="locationBar">Using the location bar text field to view an SVG file</h2>
+<h2 id="using-the-location-bar-text-field-to-view-an-svg-file-wzxhzdk24wzxhzdk25">Using the location bar text field to view an SVG file # <a id="#locationBar"></a></h2>
 <p>When you know the URL of the document you want to view, you can enter it directly in the location bar text field at the top of Squiggle, the same way you can enter a URL in an HTML browser.
 <div class="figure"> <img alt="Screenshot of Squiggle showing the location bar" src="images/svgviewerLocationBar.png" title="" /> </div></p>
-<h2 id="browsing">Browsing SVG files</h2>
+<h2 id="browsing-svg-files-wzxhzdk28wzxhzdk29">Browsing SVG files # <a id="#browsing"></a></h2>
 <p>As with HTML content, it is common to navigate back and forth between SVG files (remember that SVG files contain hyperlinks, just like HTML does) and, as described later in this document, it is possible to <a href="#zoomInOut">zoom</a> into SVG documents, <a href="#panning">pan</a> and <a href="#rotating">rotate</a> .
 <div class="figure"> <img alt="Screnshot of Squiggle showing the 'Go' menu" src="images/svgviewerBrowsing.png" title="" /> </div>
 Squiggle offers multiple features to help you browse SVG files:</p>
@@ -251,23 +251,23 @@ Squiggle offers multiple features to hel
 <dt>Navigating between views</dt>
 <dd>The <strong>View→Previous Transform</strong> menu item ( <strong>Ctrl-K</strong> ) and the <strong>View→Next Transform</strong> menu item ( <strong>Ctrl-L</strong> ) let you go to the previous or next view of the document. This is useful when, for example, you <a href="#panning">pan</a> or <a href="#rotating">rotate</a> the document and want to go back to the previous view you had of the document (i.e., before you panned or rotated it).</dd>
 </dl>
-<h2 id="viewingMultiple">Viewing multiple SVG files</h2>
+<h2 id="viewing-multiple-svg-files-wzxhzdk32wzxhzdk33">Viewing multiple SVG files # <a id="#viewingMultiple"></a></h2>
 <p><div class="figure"> <img alt="Screenshot of Squiggle with two windows open" src="images/svgviewerMultipleFiles.png" title="" /> </div>
 Squiggle can display multiple files simultaneously in different windows. To view a new file in a separate window, simply select the <strong>File→New Window</strong> menu item or use the <strong>Ctrl-N</strong> keyboard accelerator.</p>
-<h2 id="reloading">Reloading an SVG document</h2>
+<h2 id="reloading-an-svg-document-wzxhzdk36wzxhzdk37">Reloading an SVG document # <a id="#reloading"></a></h2>
 <p>When working on an SVG document, you may want the browser to reprocess a document that you have modified. The <strong>File→Reload Document</strong> menu item or the <strong>Ctrl-R</strong> keyboard accelerator will cause the document to be reprocessed by the browser.</p>
-<h1 id="exportAndPrint">Exporting and printing SVG documents</h1>
+<h1 id="exporting-and-printing-svg-documents-wzxhzdk38wzxhzdk39">Exporting and printing SVG documents  <a id="#exportAndPrint"></a></h1>
 <p>The <strong>File→Print</strong> menu item or <strong>Ctrl-P</strong> will print the currently displayed SVG document.</p>
 <p>The <strong>File→Export As</strong> menu item offers the option to export the currently displayed SVG document to various raster formats. Currently, the browser supports the<abbr title="Portable Network Graphics">PNG</abbr>,<abbr title="Joint Photographic Expert Group">JPEG</abbr>and<abbr title="Tagged Image File Format">TIFF</abbr>formats.</p>
-<h1 id="inspecting">Inspecting the SVG source</h1>
+<h1 id="inspecting-the-svg-source-wzxhzdk46wzxhzdk47">Inspecting the SVG source  <a id="#inspecting"></a></h1>
 <p>The browser offers two ways to inspect the source of an SVG document: <a href="#viewingSource">viewing the plain source</a> or <a href="#viewingTree">viewing the document tree</a> . Both are explained below.</p>
-<h2 id="viewingSource">Viewing the source</h2>
+<h2 id="viewing-the-source-wzxhzdk48wzxhzdk49">Viewing the source # <a id="#viewingSource"></a></h2>
 <p><div class="figure"> <img alt="Screenshot of Squiggle showing the 'View→View Source' menu item and the source window" src="images/svgviewerViewSource.png" title="" /> </div>
 When the browser displays an SVG file, you can select the <strong>View→View Source...</strong> menu item or use the <strong>Ctrl-U</strong> keyboard accelerator to view the source code.</p>
-<h2 id="viewingTree">Viewing the document tree</h2>
+<h2 id="viewing-the-document-tree-wzxhzdk52wzxhzdk53">Viewing the document tree # <a id="#viewingTree"></a></h2>
 <p><div class="figure"> <img alt="Screenshot of Squiggle showing the 'View→DOM Viewer...' menu item and the DOM viewer window" src="images/svgviewerViewTree.png" title="" /> </div>
 When the browser displays an SVG file, you can select the <strong>View→DOM Viewer...</strong> menu item or use the <strong>Ctrl-D</strong> keyboard accelerator to open a window that shows the SVG document in the form of a tree. The window lets you navigate the tree, select individual elements, such as a path elements, and view the attributes and CSS values that apply to these elements. While the View Source window shows the SVG source as it was when it was loaded, the DOM Viewer window reflects the current state of the document, including any modifications that have occurred due to script.</p>
-<h1 id="configuring">Configuring Squiggle</h1>
+<h1 id="configuring-squiggle-wzxhzdk56wzxhzdk57">Configuring Squiggle  <a id="#configuring"></a></h1>
 <p>The <strong>Edit→Preferences</strong> menu item or <strong>Ctrl-G</strong> brings up the dialog box shown in the following figure.
 <div class="figure"> <img alt="Screenshot of Squiggle with the Preferences window open" src="images/svgviewerPreferences.png" title="" /> </div>
 This dialog contains several types of options, which can be selected with the left-hand side list. For each type of option, a panel lets you configure various browser parameters:</p>
@@ -295,7 +295,7 @@ This dialog contains several types of op
 <dt>Network panel</dt>
 <dd>This panel lets you configure the proxy server to use if you are working from behind a firewall.</dd>
 </dl>
-<h1 id="zooming">Navigating SVG documents: zooming, panning, rotating, transform and thumbnail</h1>
+<h1 id="navigating-svg-documents-zooming-panning-rotating-transform-and-thumbnail-wzxhzdk60wzxhzdk61">Navigating SVG documents: zooming, panning, rotating, transform and thumbnail  <a id="#zooming"></a></h1>
 <p>The Batik browser offers multiple way to navigate SVG documents:</p>
 <ul>
 <li>
@@ -314,7 +314,7 @@ This dialog contains several types of op
 <p><a href="#thumbnail">Thumbnail</a> </p>
 </li>
 </ul>
-<h2 id="zoomInOut">Zooming in and out</h2>
+<h2 id="zooming-in-and-out-wzxhzdk62wzxhzdk63">Zooming in and out # <a id="#zoomInOut"></a></h2>
 <p>There are several methods to zoom in or out an SVG document:</p>
 <ul>
 <li>
@@ -334,7 +334,7 @@ This dialog contains several types of op
 <div class="figure"> <img alt="Screenshot of Squiggle showing the Zoom In and Zoom Out menu items and tool bar buttons" src="images/svgviewerZoomin.png" title="" /> </div><div class="figure"> <img alt="Screenshot of Squiggle zooming to an area of interest" src="images/svgviewerAOI.png" title="" /> </div><anchor id="panning"></anchor></p>
 </li>
 </ul>
-<h2 id="panning">Panning a document</h2>
+<h2 id="panning-a-document-wzxhzdk64wzxhzdk65">Panning a document # <a id="#panning"></a></h2>
 <p>Some documents are too big to fit into the browser, especially when you <a href="#zoomInOut">zoom</a> in with a large zoom factor. In these circumstances, it is useful to be able to move around the document and pan to view different parts of the documents. Again, there are multiple ways to do this:</p>
 <ul>
 <li>
@@ -345,11 +345,11 @@ This dialog contains several types of op
 <div class="figure"> <img alt="Screenshot of Squiggle illustrating the panning gesture" src="images/svgviewerPan.png" title="" /> </div></p>
 </li>
 </ul>
-<h2 id="rotating">Rotating a document</h2>
+<h2 id="rotating-a-document-wzxhzdk66wzxhzdk67">Rotating a document # <a id="#rotating"></a></h2>
 <p>It is sometimes useful to be able to rotate a document (maps for example). You can do this in the Batik browser by first pressing the <strong>Ctrl key</strong> and then <strong>clicking and dragging the right mouse button</strong> to a new location. The browser will dynamically rotate the image as you move your cursor. When you are satisfied with that angle, you can release the mouse button and the document will be displayed with that new angle.</p>
-<h2 id="transform">Using the Transform dialog</h2>
+<h2 id="using-the-transform-dialog-wzxhzdk68wzxhzdk69">Using the Transform dialog # <a id="#transform"></a></h2>
 <p>While the mouse and keyboard interactions give interactive way to navigate an SVG document, it is sometimes desirable to be able to define precisely the amount of <a href="#zoomInOut">zoom</a> , <a href="#panning">pan</a> or <a href="#rotating">rotation</a> desired. The Transform dialog, available through the <strong>View→Transform</strong> menu ( <strong>Ctrl-E</strong> ) offers that feature.</p>
-<h2 id="thumbnail">Thumbnail</h2>
+<h2 id="thumbnail-wzxhzdk70wzxhzdk71">Thumbnail # <a id="#thumbnail"></a></h2>
 <p>Panning in the document window can be difficult after you have zoomed into a document because you cannot see the whole document. Panning on large documents (or with a large zoom factor) is made easy by the thumbnail that you can bring up through the <strong>View→Thumbnail</strong> menu item or the <strong>Ctrl-Y</strong> keyboard accelerator. The thumbnail shows a rectangular marker that represents the “Area of Interest”, i.e., the region currently displayed in the window (the visible portion of the document). You can <strong>drag out a rectangular marker with the left mouse button pushed down</strong> to select a new area of interest which will then be shown in the main window.
 <div class="figure"> <img alt="Screenshot of Squiggle showing the Thumbnail window" src="images/svgviewerThumbnail.png" title="" /> </div></p></div>
       </div>

Modified: websites/staging/xmlgraphics/trunk/content/batik/tools/font-converter.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/tools/font-converter.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/tools/font-converter.html Tue Oct 23 15:05:41 2012
@@ -160,7 +160,7 @@ $(document).ready(function () {
       <div id="content" class="grid_16">
       	<!-- <div id="breadcrumb"><a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/batik/">Batik</a>&nbsp;&raquo&nbsp;<a href="/batik/tools/">Tools</a></div> -->
       	<div class="section-content"><p>The TrueType Font to SVG ( <code>ttf2svg</code> ) application lets you convert a range of characters from a TrueType Font into the SVG font format.</p>
-<h1 id="running">Running the font converter</h1>
+<h1 id="running-the-font-converter-wzxhzdk0wzxhzdk1">Running the font converter  <a id="#running"></a></h1>
 <p>If you are using the Batik binary distribution, type the following at the command line:
 java -jar batik-ttf2svg.jar OPTIONS
 If you are using the Batik source distribution, type the following at the command line:
@@ -188,7 +188,7 @@ where:</p>
 java -jar batik-ttf2svg.jar /usr/home/myFont.ttf -l 48 -h 57 -id MySVGFont -o mySVGFont.svg -testcard
 will convert characters 48 to 57, i.e., <code>'0'</code> to <code>'9'</code> , in the <code>myFont.ttf</code> file into their SVG equivalent in the <code>mySVGFont.svg</code> file, appending a test card so that the font can be visualized.
 <anchor id="useCases"></anchor></p>
-<h1 id="use-cases">Use cases</h1>
+<h1 id="use-cases-wzxhzdk4wzxhzdk5">Use cases  <a id="#use-cases"></a></h1>
 <p>The TrueType Font converter application is helpful to be able to embed font definitions in SVG files. This will ensure that the SVG document will look exactly the same on all platform by not relying on system fonts.</p>
 <p>Note that users of the tool should make sure that they have the right to embed the font before embedding it in an SVG file and should refer to the font license for information. Note that TrueType Font files contain a flag that defines the “embeddability” of a font and there are tools for checking that flag.</p></div>
       </div>

Modified: websites/staging/xmlgraphics/trunk/content/batik/tools/pretty-printer.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/tools/pretty-printer.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/tools/pretty-printer.html Tue Oct 23 15:05:41 2012
@@ -160,11 +160,11 @@ $(document).ready(function () {
       <div id="content" class="grid_16">
       	<!-- <div id="breadcrumb"><a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/batik/">Batik</a>&nbsp;&raquo&nbsp;<a href="/batik/tools/">Tools</a></div> -->
       	<div class="section-content"><p>This page describes the features of the SVG pretty printer utility that comes with the Batik distribution. The SVG pretty printer is a utility that can format SVG files. The tool formats an SVG document according to the arguments passed on the command line.</p>
-<h1 id="downloading">Downloading the pretty printer</h1>
+<h1 id="downloading-the-pretty-printer-wzxhzdk0wzxhzdk1">Downloading the pretty printer  <a id="#downloading"></a></h1>
 <p>Refer to the <a href="../install.html">install page</a> and the <a href="../download.cgi">download page</a> to find out what to download and how to download it. Remember that you can get either the source or binary distribution.</p>
-<h1 id="using">Pretty printing an SVG file</h1>
+<h1 id="pretty-printing-an-svg-file-wzxhzdk2wzxhzdk3">Pretty printing an SVG file  <a id="#using"></a></h1>
 <p>The method for starting the pretty-printer depends on the distribution of Batik that you chose to download. The following describes how to run the pretty printer for each distribution.</p>
-<h2 id="using-binary">Using the binary distribution</h2>
+<h2 id="using-the-binary-distribution-wzxhzdk4wzxhzdk5">Using the binary distribution # <a id="#using-binary"></a></h2>
 <p>If you downloaded the binary distribution of Batik, you should have a file called <code>batik-1.6.zip</code> (or similar), and, after expanding that file, a jar file called <code>batik-svgpp.jar</code> . To start the pretty printer, open a console, change to the directory where you expanded the distribution (and where <code>batik-svgpp.jar</code> is located) and simply type the following at the command prompt:
 java -jar batik-svgpp.jar [OPTIONS] FILES
 For example, if you type:</p>
@@ -195,7 +195,7 @@ will format <code>src.svg</code> and wri
 java -jar batik-svgpp.jar -no-format -doctype change -public-id "-//W3C//DTD SVG 1.1//EN" \
      -system-id "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" src.svg dest.svg
 will format <code>src.svg</code> and write it to <code>dest.svg</code> unchanged, except for the doctype public and system IDs, which will be replaced by those specified.</p>
-<h2 id="using-source">Using the source distribution</h2>
+<h2 id="using-the-source-distribution-wzxhzdk6wzxhzdk7">Using the source distribution # <a id="#using-source"></a></h2>
 <p>If you downloaded the source distribution of Batik, you will have a zip or tar file that expanded into a directory called <code>xml-batik</code> or<code>batik- <em>version</em> </code>. In that directory, you can find build scripts for the platform you are running on. For example, there is a <code>build.bat</code> script for users of the Windows platform and there is a <code>build.sh</code> script for UNIX users.</p>
 <p>To start the pretty printer you should:</p>
 <ul>

Modified: websites/staging/xmlgraphics/trunk/content/batik/tools/rasterizer.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/tools/rasterizer.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/tools/rasterizer.html Tue Oct 23 15:05:41 2012
@@ -160,11 +160,11 @@ $(document).ready(function () {
       <div id="content" class="grid_16">
       	<!-- <div id="breadcrumb"><a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/batik/">Batik</a>&nbsp;&raquo&nbsp;<a href="/batik/tools/">Tools</a></div> -->
       	<div class="section-content"><p>This page describes the features of the SVG Rasterizer utility that comes with the Batik distribution. The SVG Rasterizer is a utility that can convert SVG files to a raster format. The tool can convert individual files or sets of files, making it easy to convert entire directories of SVG files. The provided formats are<abbr title="Joint Photography Expert Group">JPEG</abbr>,<abbr title="Portable Network Graphics">PNG</abbr>and<abbr title="Tagged Image File Format">TIFF</abbr>, however the design allows new formats to be added easily. In addition, the rasterizer can (despite its name) transcode to<abbr title="Portable Document Format">PDF</abbr>.</p>
-<h1 id="downloading">Downloading the rasterizer</h1>
+<h1 id="downloading-the-rasterizer-wzxhzdk9wzxhzdk10">Downloading the rasterizer  <a id="#downloading"></a></h1>
 <p>Refer to the <a href="../install.html">install page</a> and the <a href="../download.cgi">download area</a> to find out what to download and how to install it. Remember that you can get either the source or binary distribution.</p>
-<h1 id="using">Rasterizing one or several SVG files</h1>
+<h1 id="rasterizing-one-or-several-svg-files-wzxhzdk11wzxhzdk12">Rasterizing one or several SVG files  <a id="#using"></a></h1>
 <p>The method for starting the rasterizer depends on the distribution of Batik that you chose to download. The following describes how to start the viewer for each distribution.</p>
-<h2 id="using-binary">Using the binary distribution</h2>
+<h2 id="using-the-binary-distribution-wzxhzdk13wzxhzdk14">Using the binary distribution # <a id="#using-binary"></a></h2>
 <p>If you downloaded the binary distribution of Batik, you should have a file called <code>batik-1.6.zip</code> (or similar), and, after expanding that file, a jar file called <code>batik-rasterizer.jar</code> . To start the rasterizer, open a console, go to the directory where you expanded the distribution (and where <code>batik-rasterizer.jar</code> is located) and simply type the following at the command prompt:
 java -jar batik-rasterizer.jar FILES
 For example, if you type:
@@ -224,7 +224,7 @@ where, as options:</p>
 <p>For example:
 java -jar batik-rasterizer.jar -d myDir -m image/jpeg samples/*.svg
 will generate JPEG images for all the SVG files found in the samples directory.</p>
-<h2 id="usingSource">Using the source distribution</h2>
+<h2 id="using-the-source-distribution-wzxhzdk15wzxhzdk16">Using the source distribution # <a id="#usingSource"></a></h2>
 <p>If you downloaded the source distribution of Batik, you got a zip or tar file that expanded into a directory called <code>xml-batik</code> or<code>batik- <em>version</em> </code>. In that directory, you can find build scripts for the platform you are running on. For example, there is a <code>build.bat</code> script for users of the Windows platform and there is a <code>build.sh</code> script for UNIX users.</p>
 <p>To start the rasterizer you should:</p>
 <ul>
@@ -247,17 +247,17 @@ build svgrasterizer [OPTIONS] FILES
 and for Unix:
 ./build.sh svgrasterizer [OPTIONS] FILES
 Refer to <a href="#using-binary">“Using the binary distribution”</a> for an explanation of the options.</p>
-<h1 id="task">Rasterizer Ant task</h1>
+<h1 id="rasterizer-ant-task-wzxhzdk19wzxhzdk20">Rasterizer Ant task  <a id="#task"></a></h1>
 <p>The Rasterizer task is an <a href="http://ant.apache.org/">Ant</a> version of the rasterizer utility. It fulfills the same basic purpose as the utility but has a different syntax and a slightly different set of features.</p>
 <p>The task is able to produce four raster formats:<abbr title="Portable Network Graphics">PNG</abbr>,<abbr title="Joint Photographic Expert Group">JPEG</abbr>,<abbr title="Tagged Image File Format">TIFF</abbr>and<abbr title="Portable Document Format">PDF</abbr>.</p>
-<h2 id="initTask">Using the rasterizer task</h2>
+<h2 id="using-the-rasterizer-task-wzxhzdk29wzxhzdk30">Using the rasterizer task # <a id="#initTask"></a></h2>
 <p>The first thing to do is to compile rasterizer task classes. Download the source distribution of Batik and see the <code>README</code> file in the <code>contrib/rasterizertask</code> directory for more instructions. The build procedure works the same way as when building Batik itself.</p>
 <p>After building, ensure that the generated <code>batik-rasterizer.jar</code> and the classes (or jar file) of the rasterizer task are in your <code>CLASSPATH</code> .</p>
 <p>Next you have to define the task in your Ant project. To do this, add the following line either after the <code>project</code> start tag or after the <code>target</code> start tag in the target you are using the rasterizer task:
   <taskdef name="rasterize" 
            classname="org.apache.tools.ant.taskdefs.optional.RasterizerTask"/>
 Now you can use the rasterizer task in your project. See the <a href="#taskParameters">parameters section</a> for an explanation of the available parameters or the <a href="#taskExamples">examples section</a> to see few usage examples.</p>
-<h2 id="taskParameters">Parameters of the Ant task</h2>
+<h2 id="parameters-of-the-ant-task-wzxhzdk32wzxhzdk33">Parameters of the Ant task # <a id="#taskParameters"></a></h2>
 <p>The following table lists the attributes that may be specified on the <code>rasterize</code> task element.</p>
 <table>
 <thead>
@@ -351,7 +351,7 @@ Now you can use the rasterizer task in y
 </tbody>
 </table>
 <p>You can use <code>fileset</code> elements to select input files and directories. See the <a href="http://ant.apache.org/">Ant</a> documentation to learn how to use <a href="http://ant.apache.org/manual/CoreTypes/fileset.html">filesets</a> .</p>
-<h2 id="taskExamples">Examples of using the rasterizer task</h2>
+<h2 id="examples-of-using-the-rasterizer-task-wzxhzdk34wzxhzdk35">Examples of using the rasterizer task # <a id="#taskExamples"></a></h2>
 <p>The following example is the complete Ant project that converts an SVG image (called <code>input.svg</code> ) to a PNG image (called <code>output.png</code> ):
 &lt;?xml version="1.0"?&gt;</p>
 <project name="RasterizerExample" default="main" basedir=".">

Modified: websites/staging/xmlgraphics/trunk/content/batik/uses.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/uses.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/uses.html Tue Oct 23 15:05:41 2012
@@ -161,10 +161,10 @@ $(document).ready(function () {
       	<!-- <div id="breadcrumb"><a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/batik/">Batik</a></div> -->
       	<div class="section-content"><div class="toc">
 <ul>
-<li><a href="#examples-of-projects-and-products-using-batik-examplesofprojectsandproductsusingbatik">Examples of projects and products using Batik # {#Examples+of+projects+and+products+using+Batik}</a></li>
+<li><a href="#examples-of-projects-and-products-using-batik-wzxhzdk0wzxhzdk1">Examples of projects and products using Batik  <a id="#Examples+of+projects+and+products+using+Batik"></a></a></li>
 </ul>
 </div>
-<h1 id="examples-of-projects-and-products-using-batik-examplesofprojectsandproductsusingbatik">Examples of projects and products using Batik # {#Examples+of+projects+and+products+using+Batik}</h1>
+<h1 id="examples-of-projects-and-products-using-batik-wzxhzdk0wzxhzdk1">Examples of projects and products using Batik  <a id="#Examples+of+projects+and+products+using+Batik"></a></h1>
 <p>While it is hard to track projects and products which are using Batik, here are a few that are known of:</p>
 <ul>
 <li>

Modified: websites/staging/xmlgraphics/trunk/content/batik/using/architecture.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/using/architecture.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/using/architecture.html Tue Oct 23 15:05:41 2012
@@ -165,14 +165,14 @@ $(document).ready(function () {
  <a href="#applicationComponents">Application modules</a> illustrate how to use the core modules and let users evaluate the Batik software by experimenting with its features.</p>
 <p>The <a href="#coreComponents">Core modules</a> are the heart of Batik and the primary deliverables for the projects. These are the modules developers use to manipulate, generate, create, convert, render and view SVG content.</p>
 <p>Finally, the <a href="#lowLevelComponents">Low level modules</a> are used internally by the core modules to accomplish their work. These modules are not typically used by developers directly.</p>
-<h1 id="applicationComponents">Application modules</h1>
+<h1 id="application-modules-wzxhzdk2wzxhzdk3">Application modules  <a id="#applicationComponents"></a></h1>
 <p>As mentioned earlier, the application modules illustrate the functionality that Batik offers.</p>
 <p>For example, the <a href="../tools/browser.html">SVG browser</a> is built using several Batik core modules (such as the <code>JSVGCanvas</code> GUI component and the <code>ImageTranscoder</code> s) and illustrates how Batik lets you not only view, zoom, pan and rotate SVG documents, but also search them and convert them to other formats (such as JPEG, TIFF or PNG).</p>
 <p>The <a href="../tools/pretty-printer.html">SVG pretty printer</a> is another example that shows how Batik lets you manipulate and transform SVG content, here for the purposed of tidying up potentially disorganized SVG files.</p>
 <p>The <a href="../tools/font-converter.html">SVG font converter</a> illustrates how Batik can help you embed SVG font definitions in an SVG file by providing an application that converts ranges of characters from a TrueType Font format to the SVG font format.</p>
 <p>Finally, the <a href="../tools/rasterizer.html">SVG rasterizer</a> shows how to leverage the <a href="../using/transcoder.html">transcoder API</a> to convert to and from SVG content.</p>
 <p>Note that even though the application modules are meant to be useful and fun to use, they are not the primary deliverables of the Batik project. Instead, they are illustrations of how the Batik core modules might be used and combined.</p>
-<h1 id="coreComponents">Core modules</h1>
+<h1 id="core-modules-wzxhzdk4wzxhzdk5">Core modules  <a id="#coreComponents"></a></h1>
 <p>The Batik core modules are the heart of the Batik architecture. They can be used individually or in combination for various purposes, and the <a href="#applicationComponents">application modules</a> offer some usage examples.</p>
 <ul>
 <li>
@@ -191,7 +191,7 @@ $(document).ready(function () {
 <p>The <a href="../using/transcoder.html">transcoder</a> is a module that provides a generic API for transcoding an input to an output. This module transcodes an input stream or a document into a particular ouput format, used for converting SVG documents to other types.</p>
 </li>
 </ul>
-<h1 id="lowLevelComponents">Low level modules</h1>
+<h1 id="low-level-modules-wzxhzdk6wzxhzdk7">Low level modules  <a id="#lowLevelComponents"></a></h1>
 <p>The low level modules are not expected to be used directly by developers using the Batik API. Rather, they support the operation of the core modules. The low level modules include:</p>
 <ul>
 <li>

Modified: websites/staging/xmlgraphics/trunk/content/batik/using/dom-api.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/using/dom-api.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/using/dom-api.html Tue Oct 23 15:05:41 2012
@@ -160,14 +160,14 @@ $(document).ready(function () {
       <div id="content" class="grid_16">
       	<!-- <div id="breadcrumb"><a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/batik/">Batik</a>&nbsp;&raquo&nbsp;<a href="/batik/using/">Using</a></div> -->
       	<div class="section-content"><p>The <a href="http://www.w3.org/dom/">Document Object Model</a> (DOM) is an API for XML documents. It defines the logical structure of documents and the way a document is accessed and manipulated. This page shows how to create an SVG document using the DOM API.</p>
-<h1 id="gettingStarted">Getting started</h1>
+<h1 id="getting-started-wzxhzdk0wzxhzdk1">Getting started  <a id="#gettingStarted"></a></h1>
 <p>The DOM API defines an interface called <a href="http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/DOMImplementation.html">DOMImplementation</a> , which represents the bootstrap of any DOM implementation. The role of this class is to bootstrap a particular implementation of the DOM by providing a method to create a <a href="http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/Document.html">Document</a> . Then, the concrete <code>Document</code> represents an XML document and also acts like a factory for the various DOM objects such as <a href="http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/Element.html">Element</a> , <a href="http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/Attr.html">Attr</a> and <a href="http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/Text.html">Text</a> .</p>
 <p>How to get an instance of the <code>DOMImplementation</code> interface depends on the DOM implementation you are using. In Batik, the DOM implementation is located in the package <code>org.apache.batik.dom.svg</code> and the class is named <a href="http://xmlgraphics.apache.org/batik/javadoc/org/apache/batik/dom/svg/SVGDOMImplementation.html">SVGDOMImplementation</a> . The following example shows how to get a concrete <code>DOMImplementation</code> object.
 import org.w3c.dom.DOMImplementation;
 import org.apache.batik.dom.svg.SVGDOMImplementation;</p>
 <p>DOMImplementation impl = SVGDOMImplementation.getDOMImplementation();
 Once you have an instance of a <code>DOMImplementation</code> , you are not relying on Batik-specific code any more and ready to use the DOM API.</p>
-<h1 id="creating">Creating a Document</h1>
+<h1 id="creating-a-document-wzxhzdk2wzxhzdk3">Creating a Document  <a id="#creating"></a></h1>
 <p>Using the <code>DOMImplementation</code> , you are now able to create a <code>Document</code> . The following example illustrates how to create an SVG document. Note that the Batik’s DOM implementation can be used to represent either an SVG document fragment or any kind of XML document. Note that by choosing the namespace URI and the local name of the root element of SVG, we are creating an SVG document.
 import org.apache.batik.dom.svg.SVGDOMImplementation;
 import org.w3c.dom.Document;</p>
@@ -177,7 +177,7 @@ String svgNS = SVGDOMImplementation.SVG_
 DOMImplementation impl = SVGDOMImplementation.getDOMImplementation();
 Document doc = impl.createDocument(svgNS, "svg", null);
 As we have created an SVG <code>Document</code> , we can cast this document to an <a href="../javadoc/org/w3c/dom/svg/SVGDocument.html">SVGDocument</a> (defined in the <code>org.w3c.dom.svg</code> package) if needed.</p>
-<h1 id="buildsvgdoc">Building an SVG Document</h1>
+<h1 id="building-an-svg-document-wzxhzdk4wzxhzdk5">Building an SVG Document  <a id="#buildsvgdoc"></a></h1>
 <p>Finally, using the <code>Document</code> object, we are now able to construct SVG content. Note that the document created before supports both generic XML and SVG. Though the DOM implementation of Batik is an SVG DOM implementation, the SVG-specific methods that rely on the document having been rendered (particularly geometry related methods, such as <a href="../javadoc/org/w3c/dom/svg/SVGLocatable.html#getBBox()">SVGLocatable.getBBox</a> ) cannot be used at this point.</p>
 <p>The document can be built using DOM Level 2 Core methods. The following example shows how to create a red rectangle located at (10, 20), with a size of (100, 50) placed in a (400, 450) SVG canvas:</p>
 <p>import org.apache.batik.dom.svg.SVGDOMImplementation;
@@ -204,7 +204,7 @@ The example given constructs a document 
 <svg xmlns="http://www.w3.org/2000/svg" width="400" height="450">
   <rect x="10" y="20" width="100" height="50" fill="red"/>
 </svg></p>
-<h1 id="createdocfromsvgfile">Creating a Document from an SVG file</h1>
+<h1 id="creating-a-document-from-an-svg-file-wzxhzdk9wzxhzdk10">Creating a Document from an SVG file  <a id="#createdocfromsvgfile"></a></h1>
 <p>With Batik, you can also create an SVG DOM tree from a URI, an <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/InputStream.html">InputStream</a> , or a <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/Reader.html">Reader</a> , using the <a href="../javadoc/org/apache/batik/dom/util/SAXDocumentFactory.html">SAXSVGDocumentFactory</a> . The following example illustrates how to create an SVG document from a URI using the <code>SAXSVGDocumentFactory</code> class.
 import java.io.IOException;</p>
 <p>import org.apache.batik.dom.svg.SAXSVGDocumentFactory;
@@ -219,7 +219,7 @@ import org.apache.batik.util.XMLResource
     // ...
 }</p>
 <p>As we have created an SVG <code>Document</code> , we can cast this document to an <code>SVGDocument</code> (defined in the <code>org.w3c.dom.svg</code> package) if needed.</p>
-<h1 id="rendering">Rendering an SVG Document</h1>
+<h1 id="rendering-an-svg-document-wzxhzdk11wzxhzdk12">Rendering an SVG Document  <a id="#rendering"></a></h1>
 <p>Batik provides several ways to use an SVG DOM tree. Two modules can be immediately used to render your SVG document.</p>
 <dl>
 <dt>JSVGCanvas</dt>

Modified: websites/staging/xmlgraphics/trunk/content/batik/using/extending.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/using/extending.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/using/extending.html Tue Oct 23 15:05:41 2012
@@ -162,7 +162,7 @@ $(document).ready(function () {
       	<div class="section-content"><p>This page provides an overview of the built in extension mechanisms of Batik. As an open source project, people can of course make any extension they feel is interesting, however Batik has been designed with several forms of extension in mind.</p>
 <p>In general, extensions are added through the Service Provider Interface mechanism as described in the <a href="http://java.sun.com/j2se/1.4/docs/guide/jar/jar.html#Service Provider">jar file documentation</a> . This allows for the extension of Batik simply by adding a new jar file(s) to the class path, and thus no modification of the Batik source is required!
 If you feel that the Batik team has overlooked an important area for extension please let your feelings be known on the mailing lists.</p>
-<h1 id="customXMLTags">Custom XML elements</h1>
+<h1 id="custom-xml-elements-wzxhzdk0wzxhzdk1">Custom XML elements  <a id="#customXMLTags"></a></h1>
 <p>First one must ask what it means to support custom XML elements? There are three basic options Batik considers:</p>
 <dl>
 <dt>Having your elements appear in the DOM tree</dt>
@@ -179,7 +179,7 @@ If you feel that the Batik team has over
 <dd>Probably the most common reason to develop custom elements is to add new rendering primitives to the SVG language. In this case you must provide an <a href="#bridgeExtension">extension to the Batik bridge</a> . The bridge extension is resposible for constructing the class(es) that will handle the rendering of the new primitive in Batik.</dd>
 </dl>
 <p>In most cases it will also be necessary to write a DOM extension to make the element behave like other SVG elements (most notably for support of styling).</p>
-<h2 id="domExtension">Writing a Batik DOM extension</h2>
+<h2 id="writing-a-batik-dom-extension-wzxhzdk2wzxhzdk3">Writing a Batik DOM extension # <a id="#domExtension"></a></h2>
 <p>The ability to extend the elements used in the SVG DOM tree allows users to provide implementations for nodes that can be used in place of Batik’s default implementation of a node. This may be done for a variety of reasons, but is most commonly done to extend the behavior of standard node calls (such as to include styling in attribute lookup), or to implement the DOM interface for an element.</p>
 <p>The key class for building the DOM tree is <a href="../javadoc/org/apache/batik/dom/ExtensibleSVGDOMImplementation.html">org.apache.batik.dom.ExtensibleSVGDOMImplementation</a> . When an instance of this class is constructed it searches for instances of the <a href="../javadoc/org/apache/batik/dom/svg/DomExtension.html">org.apache.batik.dom.svg.DomExtension</a> Service Provider Interface. It then calls the <code>registerTags</code> method, passing itself as the only parameter. This method typically would typically call <code>registerCustomElementFactory</code> for each element that it wishes to handle.</p>
 <p>With Batik the most likely reason to extend a node is to provide proper CSS styling of the node attributes. To this end Batik provides a class you can extend: <a href="../javadoc/org/apache/batik/extension/PrefixableStylableExtensionElement.html">org.apache.batik.extension.PrefixableStylableExtensionElement</a> . If you derive a new DOM class from this class you are only required to implement three methods: <code>getLocalName</code> , <code>getNamespaceURI</code> , and <code>newNode</code> (plus constructors). If all you want is proper style support (commonly the case) then you are done implementing your element at this point.</p>
@@ -203,7 +203,7 @@ If you feel that the Batik team has over
 </ul>
 <p>Included with these examples is <code>org.apache.batik.extension.svg.BatikDomExtension</code> , which is the required instance of <code>DomExtension</code> used to register the elements with the <code>ExtensibleSVGDOMImplementation</code> .</p>
 <p>If your new element requires new “presentation attributes” (XML attributes that can be modified through CSS, or, depending on your viewpoint, the other way around—CSS properties that can be specified using XML attributes), you will also need to extend the CSS engine. This can be done by registering a custom CSS value factory. Both of the color examples do this (see <code>BatikDomExtension</code> ).</p>
-<h2 id="bridgeExtension">Writing a Batik bridge extension</h2>
+<h2 id="writing-a-batik-bridge-extension-wzxhzdk4wzxhzdk5">Writing a Batik bridge extension # <a id="#bridgeExtension"></a></h2>
 <p>Before you write a bridge extension it may be useful to understand what role the bridge package plays in Batik. The bridge package is responsible for creating and maintaining elements in the Graphics Vector Toolkit (GVT) tree based on the corresponding element in the SVG DOM. This is done because, for a variety of reasons, the SVG DOM is not well suited for rendering, thus the GVT tree is used for all rendering and transcoding operations.</p>
 <p>The key class for managing this link is the <a href="../javadoc/org/apache/batik/bridge/BridgeContext.html">BridgeContext</a> . This class maintains an association between a element name with namespace and a particular bridge instance that will handle it. The work of constructing the proper entity or entities in the GVT tree is then deferred to the <a href="../javadoc/org/apache/batik/bridge/Bridge.html">Bridge</a> registered for a particular element. If no bridge is regiestered nothing is done.</p>
 <p>New associations can be added by implementors of the <a href="../javadoc/org/apache/batik/bridge/BridgeExtension.html">BridgeExtension</a> Service Provider Interface. This interface has a number of methods that provide information about the particular extension being registered (including contact information, and the list of implemented extensions). It also has a <code>registerTags</code> method which is responsible for registering the bridge instances with a <code>BridgeContext</code> . All the built-in bridges are bundled together with a <code>BridgeExtension</code> (the <a href="../javadoc/org/apache/batik/bridge/SVGBridgeExtension.html">org.apache.batik.bridge.SVGBridgeExtension</a> class), as are the example extensions ( <a href="../javadoc/org/apache/batik/extension/svg/BatikBridgeExtension.html">org.apache.batik.extension.svg</a> ), so these are both good places to start.</p>
@@ -248,7 +248,7 @@ If you feel that the Batik team has over
 <p><em>Example SVG element:</em>  <code>mask</code> .</p>
 <p>Extension writers are free to work with any of the above bridges, however the three most common are likely to be the <code>GraphicsNodeBridge</code> , the <code>FilterPrimitiveBridge</code> , and the <code>PaintBridge</code> (each of which has example extensions available for inspection). Each of these interfaces has several very useful subclasses that handle much of the common behavior among elements.</p>
 <p>In some simple cases it is possible to provide only an extension to the bridge and achieve your desired effect, however in most cases you will find that for your element to behave like a normal SVG element (for example, to support styling) you will need to provide a DOM extension as well.</p>
-<h3 id="graphicsNodeBridge">GraphicsNodeBridge</h3>
+<h3 id="graphicsnodebridge-wzxhzdk6wzxhzdk7">GraphicsNodeBridge ## <a id="#graphicsNodeBridge"></a></h3>
 <p>The graphics node bridge is oriented around constructing a new <a href="../javadoc/org/apache/batik/gvt/GraphicsNode.html">GraphicsNode</a> in the GVT tree. The <code>GraphicsNode</code> is the basic object that makes up the GVT tree. Each <code>GraphicsNode</code> has a <code>paint</code> method that is responsible for painting the object (including considering clipping, masking, filtering, and opacity for the node).</p>
 <p>If you want to you can implement the <a href="../javadoc/org/apache/batik/bridge/GraphicsNodeBridge.html">GraphicsNodeBridge</a> interface directly, or you can subclass the <a href="../javadoc/org/apache/batik/bridge/AbstractGraphicsNodeBridge.html">AbstractGraphicsNodeBridge</a> class. This gives you the most flexibility since you can construct your new subclass of <code>GraphicsNode</code> , where you can implement the paint method to do essentially anything you want. This is quite involved, however, and the steps necessary to create a full <code>GraphicsNodeBridge</code> are not detailed here.</p>
 <p>However, if you just want to generate a custom filled or stroked shape the easiest way is to subclass one of the following two classes. In this case you are essentially only responsible for constructing a standard Java <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/awt/Shape.html">Shape</a> object to describe the desired area to operate on:</p>
@@ -259,7 +259,7 @@ If you feel that the Batik team has over
 <dd>This is very similar to <code>SVGShapeElementBridge</code> , except that it also handles the standard marker properties. Markers will be placed at the end of each segment of the path that describes the shape.</dd>
 </dl>
 <p>If you decide that you need to implement a new subclass of <code>GraphicsNode</code> it is strongly suggested that you extend <a href="../javadoc/org/apache/batik/gvt/AbstractGraphicsNode.html">AbstractGraphicsNode</a> , as this class does much of the work to behave like other rendered elements in SVG (like clipping, filtering and masking). In this case you implement the <code>primitivePaint</code> method instead of the <code>paint</code> method.</p>
-<h3 id="filterPrimitiveBridge">FilterPrimitiveBridge</h3>
+<h3 id="filterprimitivebridge-wzxhzdk8wzxhzdk9">FilterPrimitiveBridge ## <a id="#filterPrimitiveBridge"></a></h3>
 <p>The <a href="../javadoc/org/apache/batik/bridge/FilterPrimitiveBridge.html">FilterPrimitiveBridge</a> is concerned with the construction of individual elements of the filter chain. Unlike graphics nodes, which generally just draw new objects on top of the destination, filters take existing image data and modify it to apply effects.</p>
 <p>This part of GVT rendering is based on the Java2D <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/awt/image/renderable/RenderableImage.html">java.awt.image.renderable.RenderableImage</a> and <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/awt/image/renderable/RenderedImage.html">java.awt.image.RenderedImage</a> interfaces. These provide a convenient framework to handle image processing (an inherently resolution dependent operation) in the resolution independent system defined by SVG.</p>
 <p>The <code>org.apache.batik.ext.awt.image</code> package hierarchy contains a large set of generally useful extensions to the core JDK classes and methods, that help to implement SVG-related graphics operations.</p>
@@ -268,16 +268,16 @@ If you feel that the Batik team has over
 <p>The <code>FilterPrimitiveBridge</code> has only one method, <code>createFilter</code> , that must construct an instance of <code>Filter</code> to perform the required operation. This is still a fairly complex task given the general need to support accessing the various standard sources of image data. To this end there is a provided subclass, <a href="../javadoc/org/apache/batik/bridge/AbstractSVGFilterPrimitiveElementBridge.html">AbstractSVGFilterPrimitiveElementBridge</a> , that provides convenience methods to handle many common tasks.</p>
 <p>Generally the bulk of the work in writing a filter extension is the writing of the concrete <code>Filter</code> class, not tying it into the GVT tree. Batik does contain several base classes that make this processes a bit easier: <a href="../javadoc/org/apache/batik/ext/awt/image/renderable/AbstractRable.html">org.apache.batik.ext.awt.image.renderable.AbstractRable</a> , <a href="../javadoc/org/apache/batik/ext/awt/image/rendered/AbstractRed.html">org.apache.batik.ext.awt.image.rendered.AbstractRed</a> , and <a href="../javadoc/org/apache/batik/ext/awt/image/rendered/AbstractTiledRed.html">org.apache.batik.ext.awt.image.rendered.AbstractTiledRed</a> , <a href="../javadoc/org/apache/batik/ext/awt/image/rendered/TiledRed.html">TiledRed</a> ties into the Batik tile cache (use this with caution as it is a complex area of the Batik code).</p>
 <p>The <code>org.apache.batik.ext.awt.image.rendered</code> and <code>org.apache.batik.ext.awt.image.renderable</code> packages contain quite a number of fairly general examples covering most common cases, please refer to them for more detail.</p>
-<h3 id="paintBridge">PaintBridge</h3>
+<h3 id="paintbridge-wzxhzdk10wzxhzdk11">PaintBridge ## <a id="#paintBridge"></a></h3>
 <p>The <a href="../javadoc/org/apache/batik/bridge/PaintBridge.html">PaintBridge</a> constructs an instance of <code>java.awt.Paint</code> to be used to fill or stroke shapes/text (part of the paint server architecture of SVG).</p>
 <p>Like the filter primitive bridge, the <code>PaintBridge</code> is invoked for each reference to the paint. This makes it possible to customize the <code>Paint</code> returned for the particular element to be painted.</p>
 <p>This is how gradients and patterns are implemented in Batik, so it is possible to construct rather complex paint effects through this mechanism.</p>
 <p>For paints you are mostly on your own, because unlike the other cases there aren’t any really generally useful base classes to derive off, the closest is the <a href="../javadoc/org/apache/batik/bridge/AbstractSVGGradientElementBridge.html">AbstractSVGGradientElementBridge</a> , which is used to handle most of the radial and linear gradient attributes.</p>
 <p>The existing gradient paint implementations are in the <code>org.apache.batik.ext.awt</code> , and the pattern implementation is in <code>org.apache.batik.gvt</code> since it requires access to GVT internals.</p>
-<h1 id="imageTagFormats">New image file formats</h1>
+<h1 id="new-image-file-formats-wzxhzdk12wzxhzdk13">New image file formats  <a id="#imageTagFormats"></a></h1>
 <p>When Batik encounters an <code>image</code> element and it determines the element does not reference an SVG file, it defers the loading of the referenced image to <a href="../javadoc/org/apache/batik/ext/awt/image/spi/ImageTagRegistry.html">org.apache.batik.ext.awt.image.spi.ImageTagRegistry</a> . This class maintains a list of <a href="../javadoc/org/apache/batik/ext/awt/image/spi/RegistryEntry.html">RegistryEntry</a> s, generally one for each format.</p>
 <p>Since the formats supported natively by Batik are also implemented through this mechanism. The <a href="../javadoc/org/apache/batik/ext/awt/image/codec/jpeg/JPEGRegistryEntry.html">JPEGRegistryEntry</a> and <a href="../javadoc/org/apache/batik/ext/awt/image/codec/png/PNGRegistryEntry.html">PNGRegistryEntry</a> classes should be used as good references for extensions.</p>
-<h2 id="RegistryEntry">RegistryEntry</h2>
+<h2 id="registryentry-wzxhzdk14wzxhzdk15">RegistryEntry # <a id="#RegistryEntry"></a></h2>
 <p>There are currently two flavors of <code>RegistryEntry</code> :</p>
 <dl>
 <dt>URLRegistryEntry</dt>
@@ -285,7 +285,7 @@ If you feel that the Batik team has over
 <dt>StreamRegistryEntry</dt>
 <dd>A <a href="../javadoc/org/apache/batik/ext/awt/image/spi/StreamRegistryEntry.html">StreamRegistryEntry</a> works with a markable <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/InputStream.html">InputStream</a> . This is the preferred form of registry entry as it generally avoids opening a potentially expensive connection multiple times, instead it opens the stream once and relies on mark and reset to allow entries to check the stream.</dd>
 </dl>
-<h2 id="helper-classes-helperclasses">Helper classes ## {#Helper+classes}</h2>
+<h2 id="helper-classes-wzxhzdk16wzxhzdk17">Helper classes # <a id="#Helper+classes"></a></h2>
 <p>There exists quite a number of classes to assist in implementing a <code>RegistryEntry</code> . It is strongly recommended that you review these classes and make use of them where appropriate. They will likely save you time and improve the integration with Batik.</p>
 <dl>
 <dt>MagicNumberRegistryEntry</dt>
@@ -299,12 +299,12 @@ If you feel that the Batik team has over
 <dt>AbstractRed</dt>
 <dd><a href="../javadoc/org/apache/batik/ext/awt/image/rendered/AbstractRed.html">AbstractRed</a> is an abstract base class that makes it relatively easy to implement the <a href="../javadoc/org/apache/batik/ext/awt/image/rendered/CacheableRed.html">CacheableRed</a> interface (Batik's subclass of <code>RenderedImage</code> ).</dd>
 </dl>
-<h1 id="urlProtocols">New URL protocols</h1>
+<h1 id="new-url-protocols-wzxhzdk18wzxhzdk19">New URL protocols  <a id="#urlProtocols"></a></h1>
 <p>For a variety of reasons (not the least of which is the heavy use of the <code>data:</code> URL protocol in SVG), several parts of Batik use a <a href="../javadoc/org/apache/batik/util/ParsedURL.html">ParsedURL</a> instead of the JDK’s <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/net/URL.html">java.net.URL</a> class.</p>
 <p><code>ParsedURL</code> offers a few advantages over the JDK’s <code>URL</code> class. First, it is designed to make minimal use of exceptions, so it is possible to use it to parse a malformed URL and get “the good parts”. Second, it is extensible, so support for new URL protocols can be added, even those that change the normal parsing rules for URLs (such as our friend the <code>data:</code> protocol). Third, it can automatically check a when a stream can be opened for common compression types and decode them for you (this behavior can also be bypassed if needed).</p>
 <p>The service class is <a href="../javadoc/org/apache/batik/util/ParsedURLProtocolHandler.html">org.apache.batik.util.ParsedURLProtocolHandler</a> . This interface consists of three methods: one returns the protocol to be handled, one is for parsing an absolute URL string and one is for parsing relative URL strings. Both the parsing methods return an object of type <a href="../javadoc/org/apache/batik/util/ParsedURLData.html">ParsedURLData</a> (the instance may of course be a subclass of <code>ParsedURLData</code> ).</p>
 <p>The <code>ParsedURLData</code> class holds all the data and implements all the stream handling commands for the <code>ParsedURL</code> class. This allows <code>ParsedURLProtocolHandler</code> s to return custom subclasses for particular protocols.</p>
-<h1 id="interpreters">Additional script interpreters</h1>
+<h1 id="additional-script-interpreters-wzxhzdk20wzxhzdk21">Additional script interpreters  <a id="#interpreters"></a></h1>
 <p>While conforming SVG browsers need support only ECMAScript as a scripting language, Batik can support any scripting language given the right glue to connect it to the rest of the system.</p>
 <p>Script interpreters are also handled via the Service Provider Interface, The interface that needs to be implemented to expose a new interpreter to Batik is <a href="../javadoc/org/apache/batik/script/InterpreterFactory.html">InterpreterFactory</a> . This class has two methods: <code>getMimeType</code> , which returns a string that specifies what script type this intepreter handles (specifically, what the <code>type</code> attribute of <code>script</code> elements must be for them to be handled by this intepreter), and <code>createInterpreter</code> , which creates an instance of the <a href="../javadoc/org/apache/batik/script/Interpreter.html">Interpreter</a> interface.</p>
 <p>Batik comes with implementations of <code>Interpreter</code> and <code>IntepreterFactory</code> to support TCL and Python script in SVG documents, if the Jacl and Jython distributions are installed, respectively. See the classes in the <code>org.apache.batik.script.jacl</code> and <code>org.apache.batik.script.jython</code> packages to guidance on how to implement the interpreter interfaces, and the <a href="../install.html">installation notes</a> on what jar files are needed for TCL and Python support.</p></div>

Modified: websites/staging/xmlgraphics/trunk/content/batik/using/parsers.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/using/parsers.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/using/parsers.html Tue Oct 23 15:05:41 2012
@@ -160,7 +160,7 @@ $(document).ready(function () {
       <div id="content" class="grid_16">
       	<!-- <div id="breadcrumb"><a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/batik/">Batik</a>&nbsp;&raquo&nbsp;<a href="/batik/using/">Using</a></div> -->
       	<div class="section-content"><p>SVG has a number of microsyntaxes that are used within attribute values, such as the <code>transform</code> attribute on <code>SVGTransformable</code> elements, and the path data <code>d</code> attribute on <code>path</code> elements. Since these are not trivial to parse, this functionality has been factored out into a separate package that can be used by other SVG-processing applications if needed.</p>
-<h1 id="parsersHandlersAndProducers">Parsers, handlers and producers</h1>
+<h1 id="parsers-handlers-and-producers-wzxhzdk2wzxhzdk3">Parsers, handlers and producers  <a id="#parsersHandlersAndProducers"></a></h1>
 <p>In the parser module, each microsyntax is supported by a pair of classes: a parser and a handler. The parser is a class that implements the <a href="../javadoc/org/apache/batik/parser/Parser.html">Parser</a> interface, which has methods to parse values from a <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/Reader.html">Reader</a> or a <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html">String</a> . The handler is an interface specific to the microsyntax that will have its methods called whenever the corresponding element in the input is parsed. For those handler interfaces that have more than one method, adapter classes are provided (named <code>Default</code> *).</p>
 <p>Parsers can also have an error handler associated with them, whose single method <code>error</code> will be called when there is a problem parsing the input. If an error handler is not associated with a parser, a <a href="../javadoc/org/apache/batik/parser/ParseException.html">ParseException</a> will be thrown if an error occurs.</p>
 <p>The microsyntaxes supported by the parser module are:</p>
@@ -189,7 +189,7 @@ $(document).ready(function () {
 <dd>Implemented by <a href="../javadoc/org/apache/batik/parser/TransformListParser.html">TransformListParser</a> , handled with <a href="../javadoc/org/apache/batik/parser/TransformListHandler.html">TransformListHandler</a> . This parser is used for parsing transform lists, as found in the <code>transform</code> attribute of any transformable element.</dd>
 </dl>
 <p>Some microsyntaxes also have a corresponding producer class, which is an implementation of the handler interface that generates an object while parsing.</p>
-<h1 id="examples">Examples</h1>
+<h1 id="examples-wzxhzdk4wzxhzdk5">Examples  <a id="#examples"></a></h1>
 <p>The following example code demonstrates how to use the parser classes to parse a list of points:
 import java.awt.geom.Point2D;
 import java.util.LinkedList;

Modified: websites/staging/xmlgraphics/trunk/content/batik/using/scripting/ecmascript.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/using/scripting/ecmascript.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/using/scripting/ecmascript.html Tue Oct 23 15:05:41 2012
@@ -160,7 +160,7 @@ $(document).ready(function () {
       <div id="content" class="grid_16">
       	<!-- <div id="breadcrumb"><a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/batik/">Batik</a>&nbsp;&raquo&nbsp;<a href="/batik/using/">Using</a>&nbsp;&raquo&nbsp;<a href="/batik/using/scripting/">Scripting</a></div> -->
       	<div class="section-content"><p>This page is a brief introduction to scripting SVG documents with ECMAScript, and how Batik’s ECMAScript environment can be extended.</p>
-<h1 id="scriptingBasics">Scripting basics</h1>
+<h1 id="scripting-basics-wzxhzdk3wzxhzdk4">Scripting basics  <a id="#scriptingBasics"></a></h1>
 <p>As the ECMAScript language (the standardised version of JavaScript) is one of the most popular scripting languages, and as the SVG specification states that an SVG conforming implementation must support it, SVG documents processed by Batik support scripting with ECMAScript using Mozilla’s ECMAScript interpreter, <a href="http://www.mozilla.org/rhino/">Rhino</a> .</p>
 <p>There are two places in an SVG file where you can put scripts.</p>
 <p>The first one is in the <code>script</code> element, where you can place any code, including function definitions, to be executed just before the document <code>SVGLoad</code> event is fired.
@@ -186,7 +186,7 @@ Note that inside the event attribute scr
 <p>the <a href="http://www.ecma.ch/ecma1/stand/ecma-262.htm">ECMAScript specification</a> , for advanced information on the ECMAScript language.</p>
 </li>
 </ul>
-<h1 id="rhinoFeatures">Using Rhino features</h1>
+<h1 id="using-rhino-features-wzxhzdk13wzxhzdk14">Using Rhino features  <a id="#rhinoFeatures"></a></h1>
 <p>Rhino has a number of features beyond those supported by standard ECMAScript interpreters, and these can be used with Batik. One useful feature is that ECMAScript code can use Java classes and objects, and not just the standard ECMAScript primitive types and host objects exposed by Batik.</p>
 <p>To create an instance of a Java class from ECMAScript, you first need to import the package in which it resides. This is done using the <code>importPackage</code> global function that Rhino provides. For example, to import the <code>javax.swing.JFrame</code> class, you use:
 importPackage(Packages.javax.swing);
@@ -213,7 +213,7 @@ Note how an ECMAScript string value is p
 <p></script>
 </svg>
 For more information on scripting Java classes from ECMAScript code, see Rhino's <a href="http://www.mozilla.org/rhino/ScriptingJava.html">Scripting Java</a> document.</p>
-<h1 id="customizingRhino">Customizing the Rhino interpreter</h1>
+<h1 id="customizing-the-rhino-interpreter-wzxhzdk20wzxhzdk21">Customizing the Rhino interpreter  <a id="#customizingRhino"></a></h1>
 <p>A useful example of customization of the Rhino interpreter comes from the fact that the ECMAScript specification doesn’t provide any predefined I/O facilities to interact with the console. However, it is very common for ECMAScript compatible languages to provide a function named <code>print</code> to output messages to the console. We will describe here an example of cutomization of the Batik Rhino interpreter to add such functionality to it.</p>
 <p>You should first subclass the default Batik ECMAScript interpreter to add the functionality to it as below.
 import org.apache.batik.script.rhino.RhinoInterpreter;</p>

Modified: websites/staging/xmlgraphics/trunk/content/batik/using/scripting/java.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/using/scripting/java.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/using/scripting/java.html Tue Oct 23 15:05:41 2012
@@ -160,7 +160,7 @@ $(document).ready(function () {
       <div id="content" class="grid_16">
       	<!-- <div id="breadcrumb"><a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/batik/">Batik</a>&nbsp;&raquo&nbsp;<a href="/batik/using/">Using</a>&nbsp;&raquo&nbsp;<a href="/batik/using/scripting/">Scripting</a></div> -->
       	<div class="section-content"><p>This page explains how to manipulate the DOM tree of an SVG document from a Java program.</p>
-<h1 id="Swing">How to manipulate a document in a JSVGCanvas</h1>
+<h1 id="how-to-manipulate-a-document-in-a-jsvgcanvas-wzxhzdk1wzxhzdk2">How to manipulate a document in a JSVGCanvas  <a id="#Swing"></a></h1>
 <p>The follow code template demonstrates how to manipulate an SVG document displayed in a <a href="../../javadoc/org/apache/batik/swing/JSVGCanvas.html">JSVGCanvas</a> directly from a Java program.
 You don’t have to worry about graphics updates; after each event listener invocation the canvas is updated if needed.import java.awt.event.WindowAdapter;
 import java.awt.event.WindowEvent;</p>
@@ -269,7 +269,7 @@ import org.w3c.dom.events.EventTarget;</
 
 
 <p>}</p>
-<h1 id="Threads">Writing thread-safe code</h1>
+<h1 id="writing-thread-safe-code-wzxhzdk3wzxhzdk4">Writing thread-safe code  <a id="#Threads"></a></h1>
 <p>The DOM listeners registered on the SVG document are called from the canvas update thread. To avoid race conditions, do not manipulate the DOM tree from another thread.</p>
 <p>The way to switch from an external thread to the canvas update thread is to use the following code:
 // Returns immediately
@@ -289,7 +289,7 @@ canvas.getUpdateManager().getUpdateRunna
     });
 Like with event listeners, when a <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Runnable.html">Runnable</a> is invoked from the update thread, the graphics are updated.
 It is very dangerous to call <code>invokeAndWait</code> from the Swing event thread. This is the only thread that can be used to interact with Swing components. In some cases DOM calls may need to query the canvas for information (such as actual Swing component size, etc). If this happens you will get a thread deadlock. You should only make invokeAndWait calls from “third party” threads.</p>
-<h1 id="SVGDOM">Using the SVG DOM</h1>
+<h1 id="using-the-svg-dom-wzxhzdk5wzxhzdk6">Using the SVG DOM  <a id="#SVGDOM"></a></h1>
 <p>Batik provides a fairly complete implementation of the SVG DOM. The SVG DOM provides all the functionality most applications require. In particular, the DOM implements DOM Events, including mutation and UI Events. As an example, DOM events allow you to get notified when the cursor moves over elements of interest:
 // Element of Interest.
 Element theElem = ...;
@@ -312,7 +312,7 @@ SVGPoint  cPt  = document.getRootElement
 cPt.setX(uiEvt.getClientX());
 cPt.setY(uiEvt.getClientY());
 cPt = cPt.matrixTransform(imat);</p>
-<h1 id="javaInDocument">Referencing Java code from a document</h1>
+<h1 id="referencing-java-code-from-a-document-wzxhzdk7wzxhzdk8">Referencing Java code from a document  <a id="#javaInDocument"></a></h1>
 <p>Batik implements the Java bindings for SVG, and thus allows Java code to be referenced from <code>script</code> elements. This feature is available to any application of Batik that uses the bridge module (for example the Swing component and the transcoders).</p>
 <p>In order to use this extension, the <code>type</code> attribute of a <code>script</code> element must be set to <code>application/java-archive</code> . In addition, the <code>xlink:href</code> attribute must be the URI of a jar file that contains the code to run.</p>
 <p>The manifest of this jar file must contains an entry of the form:

Modified: websites/staging/xmlgraphics/trunk/content/batik/using/scripting/security.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/using/scripting/security.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/using/scripting/security.html Tue Oct 23 15:05:41 2012
@@ -161,13 +161,13 @@ $(document).ready(function () {
       	<!-- <div id="breadcrumb"><a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/batik/">Batik</a>&nbsp;&raquo&nbsp;<a href="/batik/using/">Using</a>&nbsp;&raquo&nbsp;<a href="/batik/using/scripting/">Scripting</a></div> -->
       	<div class="section-content"><p>With the addition of scripting support in Batik 1.5, security features have also been added to enable users of the Batik toolkit to run scripts in a secure manner.</p>
 <p>If you are using script, please make sure you have reviewed the <a href="../../index.html#SecurityWarning">Script Security Warning</a> with regards to the Batik 1.5 release.</p>
-<h1 id="sandbox">Running scripts securely</h1>
+<h1 id="running-scripts-securely-wzxhzdk0wzxhzdk1">Running scripts securely  <a id="#sandbox"></a></h1>
 <p>The Java platform offers a lot of options for running applications securely. Running an application securely requires that it runs in a so-called security sand-box which controls all the access the application makes to restricted resources (such as the file system).</p>
 <p>The concept of Java security is an application-wide concept. As such, it has to be applied at the application level (and not at the framework level). In the Batik distribution, the sample applications (such as the <a href="../../tools/browser.html">Squiggle Browser</a> and the <a href="../../tools/rasterizer.html">SVG rasterizer</a> ) apply security (or disable it) but the framework does not apply it: it is security-aware (meaning that it is able to handle security exceptions).</p>
-<h2 id="enforcing">Enforcing security in a Batik application</h2>
+<h2 id="enforcing-security-in-a-batik-application-wzxhzdk2wzxhzdk3">Enforcing security in a Batik application # <a id="#enforcing"></a></h2>
 <p>Enforcing security in a Batik application is done by setting a <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/SecurityManager.html">java.lang.SecurityManager</a> . This security manager will apply the security settings of the Java platform (as defined by the <em>jre-dir</em>  <code>/lib/security/java.policy</code> and, optionally, by the policy file whose URL is defined in the <code>java.security.policy</code> system property).</p>
 <p>The <a href="../../javadoc/org/apache/batik/util/ApplicationSecurityEnforcer.html">org.apache.batik.util.ApplicationSecurityEnforcer</a> helper class makes it easier for Batik application developers to add security support in their applications. That helper class is used by the sample Batik applications.</p>
-<h2 id="squiggle">Squiggle security</h2>
+<h2 id="squiggle-security-wzxhzdk4wzxhzdk5">Squiggle security # <a id="#squiggle"></a></h2>
 <p>The Squiggle browser lets the user decide whether or not scripts should be run securely (see the “Browser Options” in the preference dialog box). When scripts are run securely, Squiggle will enforce the security settings as follows:</p>
 <ul>
 <li>
@@ -190,7 +190,7 @@ grant codeBase "${app.dev.base}/lib/myXM
 };
 in the <code>resources/org/apache/batik/apps/svgbrowser/resources/svgbrowser.policy</code> file (for the source distribution) and do the same in <code>resources/org/apache/batik/apps/svgbrowser/resources/svgbrowser.bin.policy</code> (for the binary distribution which will then need to be rebuilt with the <code>build dist-zip</code> command.</p>
 <p>Alternatively, you can write your own policy file and specify its URL through the <code>java.security.policy</code> system property (which you can specify through the <code>-Djava.security.policy=</code>  <em>url</em> command line option).</p>
-<h1 id="externalResources">Controlling access to external resources</h1>
+<h1 id="controlling-access-to-external-resources-wzxhzdk6wzxhzdk7">Controlling access to external resources  <a id="#externalResources"></a></h1>
 <p>SVG makes a very powerful use of external resources in many elements such as <code>image</code> , <code>use</code> , <code>font</code> , <code>script</code> and <code>radialGradient</code> . There are over fifteen SVG elements that may reference external resources that way.</p>
 <p>In some environments, and typically for security reasons, it is important to control the resources referenced by an SVG document and be able to accept or reject these resources.</p>
 <p>In the Batik toolkit, this flexibility is provided by the <a href="../../javadoc/org/apache/batik/bridge/UserAgent.html">org.apache.batik.bridge.UserAgent</a> interface which can define various strategies with regards to external resources. By providing a new implementation of the <code>UserAgent</code> interface, it is possible to apply the desired security strategy for scripts and external resources.</p>

Modified: websites/staging/xmlgraphics/trunk/content/batik/using/svg-generator.html
==============================================================================
--- websites/staging/xmlgraphics/trunk/content/batik/using/svg-generator.html (original)
+++ websites/staging/xmlgraphics/trunk/content/batik/using/svg-generator.html Tue Oct 23 15:05:41 2012
@@ -162,7 +162,7 @@ $(document).ready(function () {
       	<div class="section-content"><div class="figure"> ![Flow diagram illustrating that Java programs can have their graphics converted to SVG and then viewed in any SVG viewer](images/svggen.jpg "") </div>
 
 <p>As SVG is emerging as a promising graphics format for a wide range of domains and applications, bridging it with Java becomes important. This page explains how Batik’s <a href="../javadoc/org/apache/batik/svggen/SVGGraphics2D.html">SVGGraphics2D</a> , referred to as the SVG Generator, makes this possible.</p>
-<h1 id="whatIsIt">The SVGGraphics2D class</h1>
+<h1 id="the-svggraphics2d-class-wzxhzdk7wzxhzdk8">The SVGGraphics2D class  <a id="#whatIsIt"></a></h1>
 <p>On the Java platform, all rendering goes through the <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/awt/Graphics2D.html">Graphics2D</a> abstract class, which offers methods such as <code>drawRect</code> , <code>fillRect</code> , and <code>drawString</code> . There are specialized implementations of this abstract class for each type of output, such as a screen or a printer. <code>SVGGraphics2D</code> is a new implementation of that interface that generates SVG content instead of drawing to a screen or a printer.</p>
 <p><code>SVGGraphics2D</code> has the following features:</p>
 <ul>
@@ -180,7 +180,7 @@ The above figure shows how the generator
 </ul>
 <p>The generator manages a tree of DOM objects that represent the SVG content corresponding to the rendering calls made on the <code>SVGGraphics2D</code> instance. In other words, every time a program invokes a rendering method, such as <code>fillRect</code> , on a <code>SVGGraphics2D</code> instance, a new DOM object, representing the SVG equivalent, is appended to the DOM tree. For example, a <code>rect</code> element will be appended after the <code>fillRect</code> method has been invoked).</p>
 <p>The programmer, using this generator, can then access the DOM tree to further manipulate it or can directly write the content to an output stream, as we see in the following section.</p>
-<h1 id="howToUse">How to use SVGGraphics2D</h1>
+<h1 id="how-to-use-svggraphics2d-wzxhzdk9wzxhzdk10">How to use SVGGraphics2D  <a id="#howToUse"></a></h1>
 <p>From the figure in the previous section we can see that in order for an instance of <code>SVGGraphics2D</code> to build the SVG content (the DOM tree), an instance of a <code>Document</code> class is needed. The DOM tree is an in-memory representation of the SVG document, which can be further manipulated by the user using DOM API or be streamed out by a <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/Writer.html">Writer</a> object.</p>
 <p>The following example program demonstrates how to generate SVG content from Java graphics.
 import java.awt.Rectangle;
@@ -259,10 +259,10 @@ We can see that generating SVG content f
 </li>
 </ol>
 <p>SVG has <a href="http://www.w3.org/TR/SVG11/styling.html#AlternativesForStyling">two ways to specify styling properties</a> , such as the fill color: presentation attributes (one XML attribute per property) or the CSS <code>style</code> attribute (any number of properties in one CSS inline stylesheet). The <code>useCss</code> parameter allows the user to control that option.</p>
-<h1 id="custom">SVG Generator customization</h1>
+<h1 id="svg-generator-customization-wzxhzdk11wzxhzdk12">SVG Generator customization  <a id="#custom"></a></h1>
 <p>In the previous section, we have just seen that the SVG generation process can be customized to output SVG styling properties as presentation attributes or CSS inline stylesheets. In this section we will talk about some examples of more advanced customizations.</p>
 <p>Instead of creating the <code>SVGGraphics2D</code> just by using the <code>Document</code> that will be used as a factory for creating the SVG elements, we can use the constructor that uses an <a href="../javadoc/org/apache/batik/svggen/SVGGeneratorContext.html">SVGGeneratorContext</a> instance. By providing your own <code>SVGGeneratorContext</code> instance, you will be able to do advanced customization. You will find below several examples of possible customizations.</p>
-<h2 id="have-your-own-comment-in-the-generated-svg-file-haveyourowncommentinthegeneratedsvgfile">Have your own comment in the generated SVG file ## {#Have+your+own+comment+in+the+generated+SVG+file}</h2>
+<h2 id="have-your-own-comment-in-the-generated-svg-file-wzxhzdk13wzxhzdk14">Have your own comment in the generated SVG file # <a id="#Have+your+own+comment+in+the+generated+SVG+file"></a></h2>
 <p>We begin with the simplest possible example. If you integrate the Batik SVG generator in your own Java application, you may want to specialize the comment generated in the XML code.
 DOMImplementation impl =
     GenericDOMImplementation.getDOMImplementation();
@@ -271,7 +271,7 @@ Document myFactory = impl.createDocument
 <p>SVGGeneratorContext ctx = SVGGeneratorContext.createDefault(myFactory);
 ctx.setComment("Generated by FooApplication with Batik SVG Generator");
 SVGGraphics2D g2d = new SVGGraphics2D(ctx, false);</p>
-<h2 id="use-embedded-svg-fonts-in-the-generated-svg-file-useembeddedsvgfontsinthegeneratedsvgfile">Use embedded SVG Fonts in the generated SVG file ## {#Use+embedded+SVG+Fonts+in+the+generated+SVG+file}</h2>
+<h2 id="use-embedded-svg-fonts-in-the-generated-svg-file-wzxhzdk15wzxhzdk16">Use embedded SVG Fonts in the generated SVG file # <a id="#Use+embedded+SVG+Fonts+in+the+generated+SVG+file"></a></h2>
 <p>In order to have a self-contained SVG file that doesn't have to use system fonts to be displayed, you can embed the fonts you used for drawing strings in the SVG file through the SVG fonts facility.
 DOMImplementation impl =
     GenericDOMImplementation.getDOMImplementation();
@@ -280,7 +280,7 @@ Document myFactory = impl.createDocument
 <p>SVGGeneratorContext ctx = SVGGeneratorContext.createDefault(myFactory);
 ctx.setEmbeddedFontsOn(true);
 SVGGraphics2D g2d = new SVGGraphics2D(ctx, true);</p>
-<h2 id="customizing-the-way-images-are-stored-customizingthewayimagesarestored">Customizing the way images are stored ## {#Customizing+the+way+images+are+stored}</h2>
+<h2 id="customizing-the-way-images-are-stored-wzxhzdk17wzxhzdk18">Customizing the way images are stored # <a id="#Customizing+the+way+images+are+stored"></a></h2>
 <p>Every time you call one of the <code>drawImage</code> methods provided by the <code>Graphics2D</code> interface, a default representation of your image is created in a location and put in a default file. For instance, a base64 encoding is created and embedded in the SVG file by default. Alternatively, you can choose to have your images written to separate files in a predefined directory, in one of the two raster formats required by the SVG specification: JPEG or PNG.</p>
 <p>You can change the default behavior by explicitly providing the image handler to be used by the SVG generator. Once again, you use the <code>SVGGeneratorContext</code> for this. In the example below, all images are converted to PNG format and written to directory <code>res/images</code> .
 DOMImplementation impl =
@@ -327,7 +327,7 @@ class MySVGGenerator {</p>
 
 
 <p>}</p>
-<h2 id="customizing-the-generated-svg-style-customizingthegeneratedsvgstyle">Customizing the generated SVG style ## {#Customizing+the+generated+SVG+style}</h2>
+<h2 id="customizing-the-generated-svg-style-wzxhzdk19wzxhzdk20">Customizing the generated SVG style # <a id="#Customizing+the+generated+SVG+style"></a></h2>
 <p>Your needs in matter of styling may be different from the two provided options (XML presentation attributes or CSS inline stylesheets). For example, you may want to put the CSS properties in a SVG <code>style</code> element section and reference them through the class attribute. In this case you will need to define a new <a href="../javadoc/org/apache/batik/svggen/StyleHandler.html">StyleHandler</a> as below.
 public class StyleSheetStyleHandler implements StyleHandler {</p>
 <div class="codehilite"><pre><span class="sr">//</span> <span class="n">The</span> <span class="n">CDATA</span> <span class="n">section</span> <span class="n">that</span> <span class="n">holds</span> <span class="n">the</span> <span class="n">CSS</span> <span class="n">stylesheet</span><span class="o">.</span>
@@ -379,7 +379,7 @@ style.appendChild(styleSheet);
 defs.appendChild(style);</p>
 <p>// Dump the root content to a given Writer myWriter.
 g2d.stream(root, myWriter);</p>
-<h2 id="extending-paint-object-to-svg-element-translation-extendingpaintobjecttosvgelementtranslation">Extending Paint object to SVG element translation ## {#Extending+Paint+object+to+SVG+element+translation}</h2>
+<h2 id="extending-paint-object-to-svg-element-translation-wzxhzdk21wzxhzdk22">Extending Paint object to SVG element translation # <a id="#Extending+Paint+object+to+SVG+element+translation"></a></h2>
 <p>The <code>SVGGraphics2D</code> is able to generate SVG elements for generic Java 2D objects, but you sometimes have your own classes such as implementations of the Java 2D <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Paint.html">Paint</a> interface. In this case, you will need to write an <a href="../javadoc/org/apache/batik/svggen/ExtensionHandler.html">ExtensionHandler</a> that you will set on your <code>SVGGeneratorContext</code> .</p>
 <p>In the following example we define the first draft of an <code>ExtensionHandler</code> allowing to translate a Batik implementation of the <code>Paint</code> interface named <a href="../javadoc/org/apache/batik/ext/awt/LinearGradientPaint.html">LinearGradientPaint</a> .
 class MyExtensionHandler extends DefaultExtensionHandler {</p>
@@ -442,7 +442,7 @@ You should then set it on the <code>SVGG
 SVGGeneratorContext ctx = SVGGeneratorContext.createDefault(myFactory);
 ctx.setExtensionHandler(new MyExtensionHandler());
 SVGGraphics2D g2d = new SVGGraphics2D(ctx, false);</p>
-<h1 id="view">How to view the generated SVG document</h1>
+<h1 id="how-to-view-the-generated-svg-document-wzxhzdk23wzxhzdk24">How to view the generated SVG document  <a id="#view"></a></h1>
 <p>The following code example illustrates how to view the SVG content generated by an <code>SVGGraphics2D</code> object.
 import java.awt.<em>;
 import java.awt.geom.</em>;</p>



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: commits-help@xmlgraphics.apache.org