You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xmlgraphics.apache.org by vh...@apache.org on 2007/08/23 21:00:51 UTC
svn commit: r569118 [47/49] - in /xmlgraphics/site/deploy/fop: ./ 0.93/
0.94/ 0.94/images/ dev/ dev/design/ skin/ trunk/
Added: xmlgraphics/site/deploy/fop/trunk/output.xml
URL: http://svn.apache.org/viewvc/xmlgraphics/site/deploy/fop/trunk/output.xml?rev=569118&view=auto
==============================================================================
--- xmlgraphics/site/deploy/fop/trunk/output.xml (added)
+++ xmlgraphics/site/deploy/fop/trunk/output.xml Thu Aug 23 12:00:37 2007
@@ -0,0 +1,816 @@
+<?xml version="1.0" encoding="ISO-8859-1"?><!--
+ 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.
+--><!-- $Id$ --><!-- Output Formats: Renderers --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "document-v13.dtd">
+<document>
+ <header>
+ <title>Apache FOP Output Formats</title>
+ <version>$Revision: 569104 $</version>
+ <authors>
+ <person name="Keiron Liddle" email="keiron@aftexsw.com"/>
+ <person name="Art Welch" email=""/>
+ </authors>
+ </header>
+
+ <body>
+ <p>
+ FOP supports multiple output formats by using a different renderer for each format.
+ The renderers do not all have the same set of capabilities, sometimes because of
+ the output format itself, sometimes because some renderers get more development
+ attention than others.
+ </p>
+ <section id="general">
+ <title>General Information</title>
+ <section id="general-fonts">
+ <title>Fonts</title>
+ <p>
+ Most FOP renderers use a FOP-specific system for font registration.
+ However, the Java2D/AWT and print renderers use the Java AWT package, which gets its
+ font information from the operating system registration.
+ This can result in several differences, including actually using different fonts,
+ and having different font metrics for the same font.
+ The net effect is that the layout of a given FO document can be quite different between
+ renderers that do not use the same font information.
+ </p>
+ </section>
+ <section id="general-direct-output">
+ <title>Output to a Printer or Other Device</title>
+ <p>
+ The most obvious way to print your document is to use the FOP
+ <link href="#print">print renderer</link>, which uses the Java2D API (AWT).
+ However, you can also send output from the Postscript renderer directly to a Postscript
+ device, or output from the PCL renderer directly to a PCL device.
+ </p>
+ <p>
+ Here are Windows command-line examples for Postscript and PCL:
+ </p>
+ <source xml:space="preserve"><![CDATA[fop ... -ps \\computername\printer]]></source>
+ <source xml:space="preserve"><![CDATA[fop ... -pcl \\computername\printer]]></source>
+ <p>
+ Here is some Java code to accomplish the task in UNIX:
+ </p>
+ <source xml:space="preserve"><![CDATA[proc = Runtime.getRuntime().exec("lp -d" + print_queue + " -o -dp -");
+out = proc.getOutputStream();]]></source>
+ <p>
+ Set the output MIME type to "application/x-pcl" (MimeConstants.MIME_PCL) and
+ it happily sends the PCL to the UNIX printer queue.
+ </p>
+ </section>
+ </section>
+ <section id="pdf">
+ <title>PDF</title>
+ <p>
+ PDF is the best supported output format. It is also the most accurate
+ with text and layout. This creates a PDF document that is streamed out
+ as each page is rendered. This means that the internal page index
+ information is stored near the end of the document.
+ The PDF version supported is 1.4. PDF versions are forwards/backwards
+ compatible.
+ </p>
+ <p>
+ Note that FOP does not currently support "tagged PDF" or PDF/A-1a.
+ Support for <link href="pdfa.html">PDF/A-1b</link> and <link href="pdfx.html">PDF/X</link> has recently been added, however.
+ </p>
+ <section id="pdf-fonts">
+ <title>Fonts</title>
+ <p>
+ PDF has a set of fonts that are always available to all PDF viewers;
+ to quote from the PDF Specification:
+
+ <em>"PDF prescribes a set of 14 standard fonts that can be used without prior
+ definition.
+ These include four faces each of three Latin text typefaces (Courier,
+ Helvetica, and Times), as well as two symbolic fonts (Symbol and ITC Zapf
+ Dingbats). These fonts, or suitable substitute fonts with the same metrics, are
+ guaranteed to be available in all PDF viewer applications."</em>
+ </p>
+ </section>
+ <section id="pdf-postprocess">
+ <title>Post-processing</title>
+ <p>
+ FOP does not currently support several desirable PDF features: XMP metadata and watermarks.
+ One workaround is to use Adobe Acrobat (the full version, not the Reader) to process
+ the file manually or with scripting that it supports.
+ </p>
+ <p>
+ Another popular post-processing tool is <link href="http://www.lowagie.com/iText">iText</link>,
+ which has tools for adding security features, document properties, watermarks, and many
+ other features to PDF files.
+ </p>
+ <warning>
+ Caveat: iText may swallow PDF bookmarks. But
+ <link href="http://issues.apache.org/bugzilla/show_bug.cgi?id=37589">Jens Stavnstrup tells us</link>
+ that this doesn't happen if you use iText's PDFStamper.
+ </warning>
+ <p>
+ Here is some sample code that uses iText to encrypt a FOP-generated PDF. (Note that FOP now
+ supports <link href="pdfencryption.html">PDF encryption</link>. However the principles for using
+ iText for other PDF features are similar.)
+ </p>
+ <source xml:space="preserve"><![CDATA[public static void main(String args[]) {
+ try {
+ ByteArrayOutputStream fopout = new ByteArrayOutputStream();
+ FileOutputStream outfile = new FileOutputStream(args[2]);
+ FopFactory fopFactory = FopFactory.newInstance();
+ Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, fopout);
+
+ Transformer transformer = TransformerFactory.newInstance().newTransformer(
+ new StreamSource(new File(args[1])));
+ transformer.transform(new StreamSource(new File(args[0])),
+ new SAXResult(fop.getDefaultHandler()));
+ PdfReader reader = new PdfReader(fopout.toByteArray());
+ int n = reader.getNumberOfPages();
+ Document document = new Document(reader.getPageSizeWithRotation(1));
+ PdfWriter writer = PdfWriter.getInstance(document, outfile);
+ writer.setEncryption(PdfWriter.STRENGTH40BITS, "pdf", null,
+ PdfWriter.AllowCopy);
+ document.open();
+ PdfContentByte cb = writer.getDirectContent();
+ PdfImportedPage page;
+ int rotation;
+ int i = 0;
+ while (i < n) {
+ i++;
+ document.setPageSize(reader.getPageSizeWithRotation(i));
+ document.newPage();
+ page = writer.getImportedPage(reader, i);
+ rotation = reader.getPageRotation(i);
+ if (rotation == 90 || rotation == 270) {
+ cb.addTemplate(page, 0, -1f, 1f, 0, 0,
+ reader.getPageSizeWithRotation(i).height());
+ } else {
+ cb.addTemplate(page, 1f, 0, 0, 1f, 0, 0);
+ }
+ System.out.println("Processed page " + i);
+ }
+ document.close();
+ } catch( Exception e) {
+ e.printStackTrace();
+ }
+}]]></source>
+ <p>
+ Check the iText tutorial and documentation for setting access flags, password,
+ encryption strength and other parameters.
+ </p>
+ </section>
+ <section id="pdf-watermark">
+ <title>Watermarks</title>
+ <p>
+ In addition to the <link href="#pdf-postprocess">PDF Post-processing</link> options, consider the following workarounds:
+ </p>
+ <ul>
+ <li>
+ Use a background image for the body region.
+ </li>
+ <li>
+ (submitted by Trevor Campbell) Place an image in a
+ region that overlaps the flowing text. For example, make
+ region-before large enough to contain your image. Then include a
+ block (if necessary, use an absolutely positioned block-container)
+ containing the watermark image in the static-content for the
+ region-before. Note that the image will be drawn on top of the
+ normal content.
+ </li>
+ </ul>
+ </section>
+</section>
+<section id="ps">
+ <title>PostScript</title>
+ <p>
+ The PostScript renderer has been brought up to a similar quality as the
+ PDF renderer, but may still be missing certain features. It provides good
+ support for most text and layout.
+ Images and SVG are not fully supported, yet. Currently, the PostScript
+ renderer generates PostScript Level 3 with most DSC comments. Actually,
+ the only Level 3 features used are the FlateDecode and DCTDecode
+ filter (the latter is used for 1:1 embedding of JPEG images), everything
+ else is Level 2.
+ </p>
+ <section id="ps-configuration">
+ <title>Configuration</title>
+ <p>
+ The PostScript renderer configuration currently allows the following settings:
+ </p>
+<source xml:space="preserve"><![CDATA[<renderer mime="application/postscript">
+ <auto-rotate-landscape>false</auto-rotate-landscape>
+ <language-level>3</language-level>
+ <optimize-resources>false</optimize-resources>
+</renderer>]]></source>
+ <p>
+ The default value for the "auto-rotate-landscape" setting is "false". Setting it
+ to "true" will automatically rotate landscape pages and will mark them as landscape.
+ </p>
+ <p>
+ The default value for the "language-level" setting is "3". This setting specifies
+ the PostScript language level which should be used by FOP. Set this to "2"
+ only if you don't have a Level 3 capable interpreter.
+ </p>
+ <p>
+ The default value for the "optimize-resources" setting is "false". Setting it
+ to "true" will produce the PostScript file in two steps. A temporary file will be
+ written first which will then be processed to add only the fonts which were really
+ used and images are added to the stream only once as PostScript forms. This will
+ reduce file size but can potentially increase the memory needed in the interpreter
+ to process.
+ </p>
+ </section>
+ <section id="ps-limitations">
+ <title>Limitations</title>
+ <ul>
+ <li>Images and SVG may not be displayed correctly. SVG support is far from being complete. No image transparency is available.</li>
+ <li>Only Type 1 fonts are supported.</li>
+ <li>Multibyte characters are not supported.</li>
+ <li>PPD support is still missing.</li>
+ </ul>
+ </section>
+</section>
+ <section id="pcl">
+ <title>PCL</title>
+ <p>
+ This format is for the Hewlett-Packard PCL printers and other printers
+ supporting PCL. It should produce output as close to identical as possible
+ to the printed output of the PDFRenderer within the limitations of the
+ renderer, and output device.
+ </p>
+ <p>
+ The output created by the PCLRenderer is generic PCL 5, HP GL/2 and PJL.
+ This should allow any device fully supporting PCL 5 to be able to
+ print the output generated by the PCLRenderer. PJL is used to control the
+ print job and switch to the PCL language. PCL 5 is used for text, raster
+ graphics and rectangular fill graphics. HP GL/2 is used for more complex
+ painting operations. Certain painting operations are done off-screen and
+ rendered to PCL as bitmaps because of limitations in PCL 5.
+ </p>
+ <section id="pcl-references">
+ <title>References</title>
+ <ul>
+ <li><link href="http://en.wikipedia.org/wiki/Printer_Control_Language">WikiPedia entry on PCL</link></li>
+ <li><link href="http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?objectID=bpl04568">Technical reference documents on PCL from Hewlett-Packard</link></li>
+ </ul>
+ </section>
+ <section id="pcl-limitations">
+ <title>Limitations</title>
+ <ul>
+ <li>
+ Text or graphics outside the left or top of the printable area are not
+ rendered properly. This is a limitation of PCL, not FOP. In general,
+ things that should print to the left of the printable area are shifted
+ to the right so that they start at the left edge of the printable area.
+ </li>
+ <li>
+ The Helvetica and Times fonts are not well supported among PCL printers
+ so Helvetica is mapped to Arial and Times is mapped to Times New. This
+ is done in the PCLRenderer, no changes are required in the FO's. The
+ metrics and appearance for Helvetica/Arial and Times/Times New are
+ nearly identical, so this has not been a problem so far.
+ </li>
+ <li>For the non-symbol fonts, the ISO 8859-1 symbol set is used (PCL set "0N").</li>
+ <li>
+ All fonts available to the Java2D subsystem are usable. The texts are
+ painted as bitmap much like the Windows PCL drivers do.
+ </li>
+ <li>Multibyte characters are not supported.</li>
+ <li>
+ At the moment, only monochrome output is supported. PCL5c color extensions
+ will only be implemented on demand. Color and grayscale images are converted
+ to monochrome bitmaps (1-bit). Dithering only occurs if the JAI image library
+ is available.
+ </li>
+ <li>
+ Images are scaled up to the next resolution level supported by PCL (75,
+ 100, 150, 200, 300, 600 dpi). For color and grayscale images an even
+ higher PCL resolution is selected to give the dithering algorithm a chance
+ to improve the bitmap quality.
+ </li>
+ <li>
+ Currently, there's no support for clipping and image transparency, largely
+ because PCL 5 has certain limitations.
+ </li>
+ </ul>
+ </section>
+ <section id="pcl-configuration">
+ <title>Configuration</title>
+ <p>
+ The PCL renderer configuration currently allows the following settings:
+ </p>
+<source xml:space="preserve"><![CDATA[<renderer mime="application/vnd.hp-PCL">
+ <rendering>quality</rendering>
+ <text-rendering>bitmap</text-rendering>
+</renderer>]]></source>
+ <p>
+ The default value for the "rendering" setting is "speed" which causes borders
+ to be painted as plain rectangles. In this mode, no special borders (dotted,
+ dashed etc.) are available. If you want support for all border modes, set the
+ value to "quality" as indicated above. This will cause the borders to be painted
+ as bitmaps.
+ </p>
+ <p>
+ The default value for the "text-rendering" setting is "auto" which paints the
+ base fonts using PCL fonts. Non-base fonts are painted as bitmaps through Java2D.
+ If the mix of painting methods results in unwelcome output, you can set this
+ to "bitmap" which causes all text to be rendered as bitmaps.
+ </p>
+ <p>
+ You can control the output resolution for the PCL using the "target resolution"
+ setting on the FOUserAgent. The actual value will be rounded up to the next
+ supported PCL resolution. Currently, only 300 and 600 dpi are supported which
+ should be enough for most use cases. Note that this setting directly affects
+ the size of the output file and the print quality.
+ </p>
+ </section>
+ <section id="pcl-extensions">
+ <title>Extensions</title>
+ <p>The PCL Renderer supports some PCL specific extensions which can be embedded
+ into the input FO document. To use the extensions the appropriate namespace must
+ be declared in the fo:root element like this:</p>
+ <source xml:space="preserve"><![CDATA[
+ <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:pcl="http://xmlgraphics.apache.org/fop/extensions/pcl">
+]]></source>
+ <section id="pcl-page-source">
+ <title>Page Source (Tray selection)</title>
+ <p>
+ The page-source extension attribute on fo:simple-page-master allows to
+ select the paper tray the sheet for a particular simple-page-master is
+ to be taken from. Example:
+ </p>
+ <source xml:space="preserve"><![CDATA[
+ <fo:layout-master-set>
+ <fo:simple-page-master master-name="simple" pcl:paper-source="2">
+ ...
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+]]></source>
+ <p>
+ Note: the tray number is a positive integer and the value depends on
+ the target printer. Not all PCL printers support the same paper trays.
+ Usually,
+ "1" is the default tray,
+ "2" is the manual paper feed,
+ "3" is the manual envelope feed,
+ "4" is the "lower" tray and
+ "7" is "auto-select".
+ Consult the technical reference for your printer for all available values.
+ </p>
+ </section>
+ </section>
+ </section>
+ <section id="afp">
+ <title>AFP</title>
+ <warning>The AFP Renderer is a new addition (27-Apr-2006) to the sandbox and as such not yet fully tested or feature complete.</warning>
+ <p>
+ The FOP AFP Renderer deals with creating documents conforming to the IBM AFP document architecture
+ also refered to as MO:DCA (Mixed Object Document Content Architecture).
+ </p>
+ <section id="afp-references">
+ <title>References</title>
+ <ul>
+ <li><link href="http://en.wikipedia.org/wiki/Advanced_Function_Presentation">AFP (Advanced Function Presentation)</link></li>
+ <li><link href="http://wiki.apache.org/xmlgraphics-fop/AFPResources">AFP Resources on the FOP WIKI</link></li>
+ </ul>
+ </section>
+ <section id="afp-limitations">
+ <title>Limitations</title>
+ <p>This list is most likely badly incomplete.</p>
+ <ul>
+ <li>
+ Clipping of text and graphics is not supported.
+ </li>
+ <li>
+ Only IBM outline and raster fonts and to a limited extend the original fonts built into FOP are supported.
+ Support for TrueType fonts may be added later.
+ </li>
+ </ul>
+ </section>
+ <section id="afp-configuration">
+ <title>Configuration</title>
+ <section id="afp-font-config">
+ <title>Fonts</title>
+ <p>The AFP Renderer requires special configuration particularly related to fonts.
+ AFP Render configuration is done through the normal FOP configuration file. The MIME type
+ for the AFP Renderer is application/x-afp which means the AFP Renderer section in the FOP configuration file
+ looks like:</p>
+ <source xml:space="preserve"><![CDATA[<renderer mime="application/x-afp">
+ <!-- AFP Renderer -->
+ ...
+</renderer>]]></source>
+ <p>There are 3 font configuration variants supported:</p>
+ <ol>
+ <li>IBM Raster fonts</li>
+ <li>IBM Outline fonts</li>
+ <li>FOP built-in Base14 fonts</li>
+ </ol>
+ <p>A typical raster font configuration looks like:</p>
+<source xml:space="preserve"><![CDATA[ <!-- This is an example of mapping actual IBM raster fonts / code pages to a FOP font -->
+ <font>
+ <!-- The afp-font element defines the IBM code page, the matching Java encoding and the
+ path to the font -->
+ <afp-font type="raster" codepage="T1V10500" encoding="Cp500" path="fonts/ibm">
+ <!-- For a raster font a separate element for each font size is required providing
+ the font size and the corresponding IBM Character set name -->
+ <afp-raster-font size="7" characterset="C0N20070"/>
+ <afp-raster-font size="8" characterset="C0N20080"/>
+ <afp-raster-font size="10" characterset="C0N20000"/>
+ <afp-raster-font size="11" characterset="C0N200A0"/>
+ <afp-raster-font size="12" characterset="C0N200B0"/>
+ <afp-raster-font size="14" characterset="C0N200D0"/>
+ <afp-raster-font size="16" characterset="C0N200F0"/>
+ <afp-raster-font size="18" characterset="C0N200H0"/>
+ <afp-raster-font size="20" characterset="C0N200J0"/>
+ <afp-raster-font size="24" characterset="C0N200N0"/>
+ <afp-raster-font size="30" characterset="C0N200T0"/>
+ <afp-raster-font size="36" characterset="C0N200Z0"/>
+ </afp-font>
+ <!-- These are the usual FOP font triplets as they apply to this font -->
+ <font-triplet name="serif" style="normal" weight="normal"/>
+ <font-triplet name="Times" style="normal" weight="normal"/>
+ <font-triplet name="Times-Roman" style="normal" weight="normal"/>
+ <font-triplet name="TimesNewRoman" style="normal" weight="normal"/>
+ </font>]]></source>
+ <p>An outline font configuration is simpler as the individual font size entries are not required.
+ However, the characterset definition is now required within the afp-font element.</p>
+<source xml:space="preserve"><![CDATA[ <font>
+ <afp-font type="outline" codepage="T1V10500" encoding="Cp500" characterset="CZH200 "
+ path="fonts/ibm" />
+ <font-triplet name="sans-serif" style="normal" weight="normal"/>
+ <font-triplet name="Helvetica" style="normal" weight="normal"/>
+ <font-triplet name="any" style="normal" weight="normal"/>
+ </font>
+]]></source>
+ <p>Experimentation has shown that the font metrics for the FOP built-in Base14 fonts are actually
+ very similar to some of the IBM outline and raster fonts. In cases were the IBM font files are not
+ available the path attribute in the afp-font element can be replaced by a base14-font attribute
+ giving the name of the matching Base14 font. In this case the AFP Renderer will take the
+ font metrics from the built-in font.</p>
+<source xml:space="preserve"><![CDATA[ <!-- The following are examples of defining outline fonts based on FOP built-in
+ font metrics for the Adobe Base14 fonts -->
+ <!-- sans-serif fonts based on Helvetica -->
+ <font>
+ <afp-font type="outline" codepage="T1V10500" encoding="Cp500" characterset="CZH200 "
+ base14-font="Helvetica" />
+ <font-triplet name="sans-serif" style="normal" weight="normal"/>
+ <font-triplet name="Helvetica" style="normal" weight="normal"/>
+ <font-triplet name="any" style="normal" weight="normal"/>
+ </font>
+ <font>
+ <afp-font type="outline" codepage="T1V10500" encoding="Cp500" characterset="CZH300 "
+ base14-font="HelveticaOblique" />
+ <font-triplet name="sans-serif" style="italic" weight="normal"/>
+ <font-triplet name="Helvetica" style="italic" weight="normal"/>
+ <font-triplet name="any" style="italic" weight="normal"/>
+ </font>
+ <font>
+ <afp-font type="outline" codepage="T1V10500" encoding="Cp500" characterset="CZH400 "
+ base14-font="HelveticaBold" />
+ <font-triplet name="sans-serif" style="normal" weight="bold"/>
+ <font-triplet name="Helvetica" style="normal" weight="bold"/>
+ <font-triplet name="any" style="normal" weight="bold"/>
+ </font>
+ <font>
+ <afp-font type="outline" codepage="T1V10500" encoding="Cp500" characterset="CZH500 "
+ base14-font="HelveticaBoldOblique" />
+ <font-triplet name="sans-serif" style="italic" weight="bold"/>
+ <font-triplet name="Helvetica" style="italic" weight="bold"/>
+ <font-triplet name="any" style="italic" weight="bold"/>
+ </font>
+
+ <!-- serif fonts based on Times Roman -->
+ <font>
+ <afp-font type="outline" codepage="T1V10500" encoding="Cp500" characterset="CZN200 "
+ base14-font="TimesRoman" />
+ <font-triplet name="serif" style="normal" weight="normal"/>
+ <font-triplet name="Times" style="normal" weight="normal"/>
+ <font-triplet name="Times-Roman" style="normal" weight="normal"/>
+ </font>
+
+ <!-- The following are examples of defining raster fonts based on FOP built-in
+ font metrics for the Adobe Base14 fonts -->
+ <!-- monospaced fonts based on Courier -->
+ <font>
+ <afp-font type="raster" codepage="T1V10500" encoding="Cp500">
+ <afp-raster-font size="7" characterset="C0420070" base14-font="Courier"/>
+ <afp-raster-font size="8" characterset="C0420080" base14-font="Courier"/>
+ <afp-raster-font size="10" characterset="C0420000" base14-font="Courier"/>
+ <afp-raster-font size="12" characterset="C04200B0" base14-font="Courier"/>
+ <afp-raster-font size="14" characterset="C04200D0" base14-font="Courier"/>
+ <afp-raster-font size="20" characterset="C04200J0" base14-font="Courier"/>
+ </afp-font>
+ <font-triplet name="monospace" style="normal" weight="normal"/>
+ <font-triplet name="Courier" style="normal" weight="normal"/>
+ </font>
+ <font>
+ <afp-font type="raster" codepage="T1V10500" encoding="Cp500">
+ <afp-raster-font size="7" characterset="C0440070" base14-font="CourierBold"/>
+ <afp-raster-font size="8" characterset="C0440080" base14-font="CourierBold"/>
+ <afp-raster-font size="10" characterset="C0440000" base14-font="CourierBold"/>
+ <afp-raster-font size="12" characterset="C04400B0" base14-font="CourierBold"/>
+ <afp-raster-font size="14" characterset="C04400D0" base14-font="CourierBold"/>
+ <afp-raster-font size="20" characterset="C04400J0" base14-font="CourierBold"/>
+ </afp-font>
+ <font-triplet name="monospace" style="normal" weight="bold"/>
+ <font-triplet name="Courier" style="normal" weight="bold"/>
+ </font>]]></source>
+ </section>
+ <section id="afp-image-config">
+ <title>Images</title>
+ <p>By default the AFP Renderer converts all images to 8 bit grey level.
+ This can be overridden by the <images> configuration element. Example:</p>
+ <source xml:space="preserve"><![CDATA[
+ <images mode="color" />
+]]></source>
+ <p>This will put images as RGB images into the AFP output stream. The default setting is:</p>
+ <source xml:space="preserve"><![CDATA[
+ <images mode="b+w" bits-per-pixel="8" />
+]]></source>
+ <p>Only the values "color" and "b+w" are allowed for the mode attribute. The bits-per-pixel
+ attribute is ignored if mode is "color". For "b+w" mode is must be 1, 4, or 8.</p>
+ </section>
+ </section>
+ <section id="afp-extensions">
+ <title>Extensions</title>
+ <p>The AFP Renderer supports some AFP specific extensions which can be embedded into the input
+ fo document. To use the extensions the appropriate namespace must be declared in the fo:root element like this:</p>
+ <source xml:space="preserve"><![CDATA[
+ <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:afp="http://xmlgraphics.apache.org/fop/extensions/afp">
+]]></source>
+ <section id="afp-page-overlay">
+ <title>Page Overlay Extension</title>
+ <p>The include-page-overlay extension element allows to define on a per simple-page-master basis a page overlay resource. Example:</p>
+ <source xml:space="preserve"><![CDATA[
+ <fo:layout-master-set>
+ <fo:simple-page-master master-name="simple">
+ <afp:include-page-overlay name="O1SAMP1 " />
+ ...
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+]]></source>
+ <p>The mandatory name attribute must refer to an 8 character (space padded) resource name that
+ must be known in the AFP processing environment.</p>
+ </section>
+ <section id="afp-page-segment">
+ <title>Page Segment Extension</title>
+ <p>The include-page-segment extension element allows to define resource substitution for fo:external-graphics elements.
+ Example:</p>
+ <source xml:space="preserve"><![CDATA[
+ <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:afp="http://xmlgraphics.apache.org/fop/extensions/afp">
+ <fo:layout-master-set>
+ <fo:simple-page-master master-name="simple">
+ <afp:include-page-segment name="S1ISLOGO" src="../../resources/images/bgimg300dpi.jpg" />
+ <fo:region-body/>
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+]]></source>
+ <p>The include-page-segment extension element can only occur within a simple-page-master.
+ Multiple include-page-segment extension elements within a simple-page-master are allowed.
+ The mandatory name attribute must refer to an 8 character
+ (space padded) resource name that must be known in the AFP processing environment.
+ The value of the mandatory src attribute is compared against the value of the src attribute in
+ fo:external-graphic elements and if it is identical (string matching is used) in the generated
+ AFP the external graphic is replaced by a reference to the given resource.
+ </p>
+ </section>
+ <section id="afp-tag-logical-element">
+ <title>Tag Logical Element Extension</title>
+ <p>The tag-logical-element extension element allows to injects TLEs into the AFP output stream. Example:</p>
+ <source xml:space="preserve"><![CDATA[
+ <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:afp="http://xmlgraphics.apache.org/fop/extensions/afp">
+ <fo:layout-master-set>
+ <fo:simple-page-master master-name="simple">
+ <afp:tag-logical-element name="The TLE Name" value="The TLE Value" />
+ <fo:region-body/>
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+]]></source>
+ <p>The tag-logical-element extension element can only occur within a simple-page-master.
+ Multiple tag-logical-element extension elements within a simple-page-master are allowed.
+ The name and value attributes are mandatory.
+ </p>
+ </section>
+ <section id="afp-no-operation">
+ <title>No Operation Extension</title>
+ <p>The no-operation extension provides the ability to carry up to 32K of comments or any other type
+ of unarchitected data into the AFP output stream. Example:</p>
+ <source xml:space="preserve"><![CDATA[
+ <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:afp="http://xmlgraphics.apache.org/fop/extensions/afp">
+ <fo:layout-master-set>
+ <fo:simple-page-master master-name="simple">
+ <afp:no-operation name="My NOP">insert up to 32k of character data here!</afp:no-operation>
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+]]></source>
+ <p>The no-operation extension element can only occur within a simple-page-master.
+ Multiple no-operation extension elements within a simple-page-master are allowed.
+ The name attribute is mandatory.
+ </p>
+ </section>
+ </section>
+ </section>
+<section id="rtf">
+ <title>RTF</title>
+ <p>
+ JFOR, an open source XSL-FO to RTF converter has been integrated into Apache FOP.
+ This will create an RTF (rich text format) document that will
+ attempt to contain as much information from the fo document as
+ possible. The RTF output follows Microsoft's RTF specifications
+ and produces best results on Microsoft Word.
+ </p>
+ <note>RTF output is currently unmaintained and lacks many features compared to other output
+ formats. Using other editable formats like Open Document Format, instead of producing XSL-FO
+ then RTF through FOP, might give better results.</note>
+</section>
+<section id="xml">
+ <title>XML (Area Tree XML)</title>
+ <p>
+ This is primarily for testing and verification. The XML created is simply
+ a representation of the internal area tree put into XML. We use that to verify
+ the functionality of FOP's layout engine.
+ </p>
+ <p>
+ The other use case of the Area Tree XML is as FOP's "intermediate format". More information
+ on that can be found on the page dedicated to the <link href="intermediate.html">Intermediate Format</link>.
+ </p>
+</section>
+<section id="awt">
+ <title>Java2D/AWT</title>
+ <p>
+ The Java2DRenderer provides the basic functionality for all
+ Java2D-based output formats (AWT viewer, direct print, PNG, TIFF).
+ </p>
+ <p>
+ The AWT viewer shows a window with the pages displayed inside a
+ Java graphic. It displays one page at a time.
+ The fonts used for the formatting and viewing depend on the fonts
+ available to your JRE.
+ </p>
+</section>
+<section id="print">
+ <title>Print</title>
+ <p>
+ It is possible to directly print the document from the command line.
+ This is done with the same code that renders to the Java2D/AWT renderer.
+ </p>
+</section>
+<section id="bitmap">
+ <title>Bitmap (TIFF/PNG)</title>
+ <p>
+ It is possible to directly create bitmap images from the individual
+ pages generated by the layout engine.
+ This is done with the same code that renders to the Java2D/AWT renderer.
+ </p>
+ <p>
+ Currently, two output formats are supported: PNG and TIFF. TIFF produces
+ one file with multiple pages, while PNG output produces one file per
+ page. The quality of the bitmap depends on the target resolution setting
+ on the FOUserAgent.
+ </p>
+ <section id="bitmap-configuration">
+ <title>Configuration</title>
+ <p>
+ The TIFF and PNG renderer configuration currently allows the following settings:
+ </p>
+<source xml:space="preserve"><![CDATA[<renderer mime="image/png">
+ <transparent-page-background>true</transparent-page-background>
+ <fonts><!-- described elsewhere --></fonts>
+</renderer>]]></source>
+ <p>
+ The default value for the "transparent-page-background" setting is "false" which
+ paints an opaque, white background for the whole image. If you set this to true,
+ no such background will be painted and you will get a transparent image if
+ an alpha channel is available in the output format.
+ </p>
+ </section>
+ <section id="tiff-configuration">
+ <title>TIFF-specific Configuration</title>
+ <p>
+ In addition to the above values the TIFF renderer configuration allows some additional
+ settings:
+ </p>
+<source xml:space="preserve"><![CDATA[<renderer mime="image/tiff">
+ <transparent-page-background>true</transparent-page-background>
+ <compression>CCITT T.6</compression>
+ <fonts><!-- described elsewhere --></fonts>
+</renderer>]]></source>
+ <p>
+ The default value for the "compression" setting is "PackBits" which
+ which is a widely supported RLE compression scheme for TIFF. The set of compression
+ names to be used here matches the set that the Image I/O API uses. Note that
+ not all compression schemes may be available during runtime. This depends on the
+ actual codecs being available. Here is a list of possible values:
+ </p>
+ <ul>
+ <li>NONE (no compression)</li>
+ <li>PackBits (RLE, run-length encoding)</li>
+ <li>JPEG</li>
+ <li>Deflate</li>
+ <li>LZW</li>
+ <li>ZLib</li>
+ <li>CCITT T.4 (Fax Group 3)</li>
+ <li>CCITT T.6 (Fax Group 4)</li>
+ </ul>
+ <note>
+ If you want to use CCITT compression, please make sure you've got a J2SE 1.4 or later and
+ <link href="http://java.sun.com/products/java-media/jai/current.html">
+ Java Advanced Imaging Image I/O Tools
+ </link>
+ in your classpath. The Sun JRE doesn't come with a TIFF codec built in, so it has to be
+ added separately. The internal TIFF codec from XML Graphics Commons only supports PackBits,
+ Deflate and JPEG compression for writing.
+ </note>
+ </section>
+</section>
+<section id="txt">
+ <title>TXT</title>
+ <p>
+ The text renderer produces plain ASCII text output
+ that attempts to match the output of the PDFRenderer as closely as
+ possible. This was originally developed to accommodate an archive system
+ that could only accept plain text files, and is primarily useful for getting
+ a quick-and-dirty view of the document text. The renderer is very limited,
+ so do not be surprised if it gives unsatisfactory results.
+ </p>
+ <p>
+ The Text renderer works with a fixed size page buffer. The size of this
+ buffer is controlled with the textCPI and textLPI public variables.
+ The textCPI is the effective horizontal characters per inch to use.
+ The textLPI is the vertical lines per inch to use. From these values
+ and the page width and height the size of the buffer is calculated.
+ The formatting objects to be rendered are then mapped to this grid.
+ Graphic elements (lines, borders, etc) are assigned a lower priority
+ than text, so text will overwrite any graphic element representations.
+ </p>
+ <p>
+ Because FOP lays the text onto a grid during layout, there are frequently
+ extra or missing spaces between characters and lines, which is generally
+ unsatisfactory.
+ Users have reported that the optimal settings to avoid such spacing problems are:
+ </p>
+ <ul>
+ <li>font-family="Courier"</li>
+ <li>font-size="7.3pt"</li>
+ <li>line-height="10.5pt"</li>
+ </ul>
+</section>
+<section id="sandbox">
+ <title>Output Formats in the Sandbox</title>
+ <p>
+ Due to the state of certain renderers we moved some of them to a "sandbox" area until
+ they are ready for more serious use. The renderers and FOEventHandlers in the sandbox
+ can be found under src/sandbox and are compiled into build/fop-sandbox.jar during the
+ main build. The output formats in the sandbox are marked as such below.
+ </p>
+ <section id="mif">
+ <title>MIF</title>
+ <warning>The MIF handler is in the sandbox and not yet functional in FOP Trunk!!! Please help us ressurrect this feature.</warning>
+ <p>
+ This format is the Maker Interchange Format which is used by
+ Adobe Framemaker.
+ </p>
+ </section>
+ <section id="svg">
+ <title>SVG</title>
+ <warning>The SVG renderer is in the sandbox and may not work as expected in FOP Trunk!!! Please help us improve this feature.</warning>
+ <p>
+ This format creates an SVG document that has links between the pages.
+ This is primarily for slides and creating svg images of pages.
+ Large documents will create SVG files that are far too large for
+ an SVG viewer to handle. Since FO documents usually have text the
+ SVG document will have a large number of text elements.
+ The font information for the text is obtained from the JVM in the
+ same way as for the AWT viewer. If the SVG is viewed on a
+ system where the fonts are different, such as another platform,
+ then the page may look wrong.
+ </p>
+ </section>
+</section>
+<section id="wishlist">
+ <title>Wish list</title>
+ <p>
+ Apache FOP is easily extensible and allows you to add new output formats to enhance FOP's functionality. There's a number of output formats
+ which are on our wish list. We're looking for volunteers to help us implement them.
+ </p>
+ <ul>
+ <li>
+ <link href="http://en.wikipedia.org/wiki/OpenDocument">ODF (Open Document Format)</link>:
+ The standardized successor to OpenOffice's file format.
+ </li>
+ </ul>
+</section>
+
+ </body>
+</document>
\ No newline at end of file
Propchange: xmlgraphics/site/deploy/fop/trunk/output.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xmlgraphics/site/deploy/fop/trunk/output.xml
------------------------------------------------------------------------------
svn:keywords = Id
Modified: xmlgraphics/site/deploy/fop/trunk/pdfa.html
URL: http://svn.apache.org/viewvc/xmlgraphics/site/deploy/fop/trunk/pdfa.html?rev=569118&r1=569117&r2=569118&view=diff
==============================================================================
--- xmlgraphics/site/deploy/fop/trunk/pdfa.html (original)
+++ xmlgraphics/site/deploy/fop/trunk/pdfa.html Thu Aug 23 12:00:37 2007
@@ -58,10 +58,10 @@
<a class="base-not-selected" href="../index.html">Home</a>
</li>
<li>
-<a class="base-not-selected" href="../0.20.5/index.html">Version 0.20.5</a>
+<a class="base-not-selected" href="../0.93/index.html">Version 0.93</a>
</li>
<li>
-<a class="base-not-selected" href="../0.93/index.html">Version 0.93</a>
+<a class="base-not-selected" href="../0.94/index.html">Version 0.94</a>
</li>
<li class="current">
<a class="base-selected" href="../trunk/index.html">FOP Trunk</a>
@@ -178,10 +178,20 @@
|start content
+-->
<div id="content">
+<div title="raw XML" class="xmllink">
+<a class="dida" href="pdfa.xml"><img alt="XML - icon" src="../skin/images/xmldoc.gif" class="skin"><br>
+ XML</a>
+</div>
<div title="Portable Document Format" class="pdflink">
<a class="dida" href="pdfa.pdf"><img alt="PDF -icon" src="../skin/images/pdfdoc.gif" class="skin"><br>
PDF</a>
</div>
+<div class="trail">
+<text>Font size:</text>
+ <input value="Reset" class="resetfont" title="Reset text" onclick="ndeSetTextSize('reset'); return false;" type="button">
+ <input value="-a" class="smallerfont" title="Shrink text" onclick="ndeSetTextSize('decr'); return false;" type="button">
+ <input value="+a" class="biggerfont" title="Enlarge text" onclick="ndeSetTextSize('incr'); return false;" type="button">
+</div>
<h1>PDF/A (ISO 19005)</h1>
<div id="minitoc-area">
<ul class="minitoc">
@@ -222,13 +232,13 @@
PDF/A is a standard which turns PDF into an "electronic document file
format for long-term preservation". PDF/A-1 is the first part of the
standard and is documented in
- <a href="http://www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=38920&ICS1=37&ICS2=100&ICS3=99">ISO 19005-1:2005(E)</a>.
+ <a class="external" href="http://www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=38920&ICS1=37&ICS2=100&ICS3=99">ISO 19005-1:2005(E)</a>.
Work on PDF/A-2 is in progress at
- <a href="http://www.aiim.org/standards.asp?ID=25013">AIIM</a>.
+ <a class="external" href="http://www.aiim.org/standards.asp?ID=25013">AIIM</a>.
</p>
<p>
Design documentation on PDF/A can be found on FOP's Wiki on the
- <a href="http://wiki.apache.org/xmlgraphics-fop/PDFA1ConformanceNotes">PDFA1ConformanceNotes</a> page.
+ <a class="external" href="http://wiki.apache.org/xmlgraphics-fop/PDFA1ConformanceNotes">PDFA1ConformanceNotes</a> page.
</p>
</div>
Modified: xmlgraphics/site/deploy/fop/trunk/pdfa.pdf
URL: http://svn.apache.org/viewvc/xmlgraphics/site/deploy/fop/trunk/pdfa.pdf?rev=569118&r1=569117&r2=569118&view=diff
==============================================================================
--- xmlgraphics/site/deploy/fop/trunk/pdfa.pdf (original)
+++ xmlgraphics/site/deploy/fop/trunk/pdfa.pdf Thu Aug 23 12:00:37 2007
@@ -362,8 +362,8 @@
51 0 obj
<< /Type /Font
/Subtype /Type1
-/Name /F3
-/BaseFont /Helvetica-Bold
+/Name /F1
+/BaseFont /Helvetica
/Encoding /WinAnsiEncoding >>
endobj
52 0 obj
@@ -376,22 +376,22 @@
53 0 obj
<< /Type /Font
/Subtype /Type1
-/Name /F1
-/BaseFont /Helvetica
+/Name /F3
+/BaseFont /Helvetica-Bold
/Encoding /WinAnsiEncoding >>
endobj
54 0 obj
<< /Type /Font
/Subtype /Type1
-/Name /F9
-/BaseFont /Courier
+/Name /F2
+/BaseFont /Helvetica-Oblique
/Encoding /WinAnsiEncoding >>
endobj
55 0 obj
<< /Type /Font
/Subtype /Type1
-/Name /F2
-/BaseFont /Helvetica-Oblique
+/Name /F9
+/BaseFont /Courier
/Encoding /WinAnsiEncoding >>
endobj
56 0 obj
@@ -415,7 +415,7 @@
endobj
3 0 obj
<<
-/Font << /F3 51 0 R /F5 52 0 R /F1 53 0 R /F9 54 0 R /F2 55 0 R /F7 56 0 R >>
+/Font << /F1 51 0 R /F5 52 0 R /F3 53 0 R /F2 54 0 R /F9 55 0 R /F7 56 0 R >>
/ProcSet [ /PDF /ImageC /Text ] >>
endobj
9 0 obj
@@ -519,10 +519,10 @@
0000011622 00000 n
0000011876 00000 n
0000012064 00000 n
-0000012177 00000 n
-0000012287 00000 n
+0000012172 00000 n
+0000012282 00000 n
0000012395 00000 n
-0000012501 00000 n
+0000012511 00000 n
0000012617 00000 n
trailer
<<
Added: xmlgraphics/site/deploy/fop/trunk/pdfa.xml
URL: http://svn.apache.org/viewvc/xmlgraphics/site/deploy/fop/trunk/pdfa.xml?rev=569118&view=auto
==============================================================================
--- xmlgraphics/site/deploy/fop/trunk/pdfa.xml (added)
+++ xmlgraphics/site/deploy/fop/trunk/pdfa.xml Thu Aug 23 12:00:37 2007
@@ -0,0 +1,156 @@
+<?xml version="1.0" encoding="ISO-8859-1"?><!--
+ 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.
+--><!-- $Id$ --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "document-v13.dtd">
+<document>
+ <header>
+ <title>PDF/A (ISO 19005)</title>
+ <version>$Revision: 389563 $</version>
+ <authors>
+ <person name="Jeremias Märki" email="jeremias@apache.org"/>
+ </authors>
+ </header>
+ <body>
+ <section id="overview">
+ <title>Overview</title>
+ <warning>
+ Support for PDF/A is available beginning with version 0.92.
+ </warning>
+ <p>
+ PDF/A is a standard which turns PDF into an "electronic document file
+ format for long-term preservation". PDF/A-1 is the first part of the
+ standard and is documented in
+ <link href="http://www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=38920&ICS1=37&ICS2=100&ICS3=99">ISO 19005-1:2005(E)</link>.
+ Work on PDF/A-2 is in progress at
+ <link href="http://www.aiim.org/standards.asp?ID=25013">AIIM</link>.
+ </p>
+ <p>
+ Design documentation on PDF/A can be found on FOP's Wiki on the
+ <link href="http://wiki.apache.org/xmlgraphics-fop/PDFA1ConformanceNotes">PDFA1ConformanceNotes</link> page.
+ </p>
+ </section>
+ <section id="status">
+ <title>Implementation Status</title>
+ <p>
+ <strong>PDF/A-1b</strong> is implemented to the degree that FOP supports
+ the creation of the elements described in ISO 19005-1.
+ </p>
+ <p>
+ Tests have been performed against jHove and Adobe Acrobat 7.0.7 (Preflight function).
+ FOP does not validate completely against Apago's PDF Appraiser. Reasons unknown due to
+ lack of a full license to get a detailed error protocol.
+ </p>
+ <p>
+ <strong>PDF/A-1a</strong> is not implemented, yet. This is mostly because of the requirement
+ for tagged PDF which is not available in FOP, yet.
+ </p>
+ </section>
+ <section id="command-line">
+ <title>Usage (command line)</title>
+ <p>
+ To activate PDF/A-1b from the command-line, specify "-pdfprofile PDF/A-1b"
+ as a parameter. If there is a violation of one of the validation rules for
+ PDF/A, an error message is presented and the processing stops.
+ </p>
+ </section>
+ <section id="embedded">
+ <title>Usage (embedded)</title>
+ <p>
+ When FOP is embedded in another Java application you can set a special option
+ on the renderer options in the user agent to activate the PDF/A-1b profile.
+ Here's an example:
+ </p>
+ <source xml:space="preserve"><![CDATA[
+userAgent.getRendererOptions().put("pdf-a-mode", "PDF/A-1b");
+Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, userAgent);
+[..]]]></source>
+ <p>
+ If one of the validation rules of PDF/A is violated, an PDFConformanceException
+ (descendant of RuntimeException) is thrown.
+ </p>
+ </section>
+ <section id="rules">
+ <title>PDF/A in Action</title>
+ <p>
+ There are a number of things that must be looked after if you activate a PDF/A
+ profile. If you receive a PDFConformanceException, have a look at the following
+ list (not necessarily comprehensive):
+ </p>
+ <ul>
+ <li>
+ Make sure all (!) fonts are embedded. If you use base 14 fonts (like Helvetica)
+ you need to obtain a license for them and embed them like any other font.
+ </li>
+ <li>
+ Don't use PDF encryption. PDF/A doesn't allow it.
+ </li>
+ <li>
+ Don't use CMYK images without an ICC color profile. PDF/A doesn't allow mixing
+ color spaces and FOP currently only properly supports the sRGB color space. Please
+ note that FOP embeds a standard sRGB ICC profile (sRGB IEC61966-2.1) as the
+ primary output intent for the PDF if no other output intent has been specified
+ in the configuration.
+ </li>
+ <li>
+ Don't use non-RGB colors in SVG images. Same issue as with CMYK images.
+ </li>
+ <li>
+ Don't use EPS graphics with fo:external-graphic. Embedding EPS graphics in PDF
+ is deprecated since PDF 1.4 and prohibited by PDF/A.
+ </li>
+ <li>
+ PDF is forced to version 1.4 if PDF/A-1 is activated.
+ </li>
+ <li>
+ No filter must be specified explicitely for metadata objects. Metadata must be
+ embedded in clear text so non-PDF-aware applications can extract the XMP metadata.
+ </li>
+ </ul>
+ </section>
+ <section id="profile-compatibility">
+ <title>PDF profile compatibility</title>
+ <p>
+ The PDF profiles "PDF/X-3:2003" and "PDF/A-1b" are compatible and can both be
+ activated at the same time.
+ </p>
+ </section>
+ <section id="interoperability">
+ <title>Interoperability</title>
+ <p>
+ There has been some confusion about the namespace for the PDF/A indicator in the XMP
+ metadata. At least three variants have been seen in the wild:
+ </p>
+ <table>
+ <tr>
+ <td colspan="1" rowspan="1">http://www.aiim.org/pdfa/ns/id.html</td>
+ <td colspan="1" rowspan="1"><strong>obsolete</strong>, from an early draft of ISO-19005-1, used by Adobe Acrobat 7.x</td>
+ </tr>
+ <tr>
+ <td colspan="1" rowspan="1">http://www.aiim.org/pdfa/ns/id</td>
+ <td colspan="1" rowspan="1"><strong>obsolete</strong>, found in the original ISO 19005-1:2005 document</td>
+ </tr>
+ <tr>
+ <td colspan="1" rowspan="1">http://www.aiim.org/pdfa/ns/id/</td>
+ <td colspan="1" rowspan="1"><strong>correct</strong>, found in the technical corrigendum 1 of ISO 19005-1:2005</td>
+ </tr>
+ </table>
+ <p>
+ If you get an error validating a PDF/A file in Adobe Acrobat 7.x it doesn't mean that
+ FOP did something wrong. It's Acrobat that is at fault. This is fixed in Adobe Acrobat 8.x
+ which uses the correct namespace as described in the technical corrigendum 1.
+ </p>
+ </section>
+ </body>
+</document>
\ No newline at end of file
Propchange: xmlgraphics/site/deploy/fop/trunk/pdfa.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xmlgraphics/site/deploy/fop/trunk/pdfa.xml
------------------------------------------------------------------------------
svn:keywords = Id
Modified: xmlgraphics/site/deploy/fop/trunk/pdfencryption.html
URL: http://svn.apache.org/viewvc/xmlgraphics/site/deploy/fop/trunk/pdfencryption.html?rev=569118&r1=569117&r2=569118&view=diff
==============================================================================
--- xmlgraphics/site/deploy/fop/trunk/pdfencryption.html (original)
+++ xmlgraphics/site/deploy/fop/trunk/pdfencryption.html Thu Aug 23 12:00:37 2007
@@ -58,10 +58,10 @@
<a class="base-not-selected" href="../index.html">Home</a>
</li>
<li>
-<a class="base-not-selected" href="../0.20.5/index.html">Version 0.20.5</a>
+<a class="base-not-selected" href="../0.93/index.html">Version 0.93</a>
</li>
<li>
-<a class="base-not-selected" href="../0.93/index.html">Version 0.93</a>
+<a class="base-not-selected" href="../0.94/index.html">Version 0.94</a>
</li>
<li class="current">
<a class="base-selected" href="../trunk/index.html">FOP Trunk</a>
@@ -178,10 +178,20 @@
|start content
+-->
<div id="content">
+<div title="raw XML" class="xmllink">
+<a class="dida" href="pdfencryption.xml"><img alt="XML - icon" src="../skin/images/xmldoc.gif" class="skin"><br>
+ XML</a>
+</div>
<div title="Portable Document Format" class="pdflink">
<a class="dida" href="pdfencryption.pdf"><img alt="PDF -icon" src="../skin/images/pdfdoc.gif" class="skin"><br>
PDF</a>
</div>
+<div class="trail">
+<text>Font size:</text>
+ <input value="Reset" class="resetfont" title="Reset text" onclick="ndeSetTextSize('reset'); return false;" type="button">
+ <input value="-a" class="smallerfont" title="Shrink text" onclick="ndeSetTextSize('decr'); return false;" type="button">
+ <input value="+a" class="biggerfont" title="Enlarge text" onclick="ndeSetTextSize('incr'); return false;" type="button">
+</div>
<h1>PDF encryption.</h1>
<div id="minitoc-area">
<ul class="minitoc">
@@ -206,13 +216,6 @@
<a name="N1001C"></a><a name="Overview"></a>
<h2 class="underlined_10">Overview</h2>
<div class="section">
-<div class="warning">
-<div class="label">Warning</div>
-<div class="content">
- PDF Encryption is available in Release 0.20.5 and later. The comments on this page do
- not apply to releases earlier than 0.20.5.
- </div>
-</div>
<p>
FOP supports encryption of PDF output, thanks to Patrick
C. Lankswert. This feature is commonly used to prevent
@@ -230,7 +233,7 @@
</p>
</div>
-<a name="N1002C"></a><a name="Usage+%28command+line%29"></a>
+<a name="N10029"></a><a name="Usage+%28command+line%29"></a>
<h2 class="underlined_10">Usage (command line)</h2>
<div class="section">
<p>
@@ -262,7 +265,7 @@
</p>
</div>
-<a name="N10054"></a><a name="Usage+%28embedded%29"></a>
+<a name="N10051"></a><a name="Usage+%28embedded%29"></a>
<h2 class="underlined_10">Usage (embedded)</h2>
<div class="section">
<p>
@@ -393,12 +396,12 @@
</ol>
</div>
-<a name="N1013A"></a><a name="Environment"></a>
+<a name="N10137"></a><a name="Environment"></a>
<h2 class="underlined_10">Environment</h2>
<div class="section">
<p>
In order to use PDF encryption, FOP has to be compiled with
- cryptography support. Currently, only <a href="http://java.sun.com/j2se/1.4/docs/guide/security/jce/JCERefGuide.html">JCE</a>
+ cryptography support. Currently, only <a class="external" href="http://java.sun.com/j2se/1.4/docs/guide/security/jce/JCERefGuide.html">JCE</a>
is supported. JCE is part of JDK 1.4. For earlier JDKs, it can
be installed separately. The build process automatically
detects JCE presence and installs PDF encryption support if
@@ -416,17 +419,17 @@
</p>
<p>
There are several commercial and a few Open Source packages which
- provide RC4. A pure Java implementation is produced by <a href="http://www.bouncycastle.org/">The Legion of the Bouncy
- Castle</a>. <a href="http://www.mozilla.org/projects/security/pki/jss/">Mozilla
+ provide RC4. A pure Java implementation is produced by <a class="external" href="http://www.bouncycastle.org/">The Legion of the Bouncy
+ Castle</a>. <a class="external" href="http://www.mozilla.org/projects/security/pki/jss/">Mozilla
JSS</a> is an interface to a native implementation.
</p>
</div>
-<a name="N10160"></a><a name="install_crypto"></a>
+<a name="N1015D"></a><a name="install_crypto"></a>
<h2 class="underlined_10">Installing a crypto provider</h2>
<div class="section">
<p>
- The pure Java implementation from <a href="http://www.bouncycastle.org/">Bouncy Castle</a> is easy to
+ The pure Java implementation from <a class="external" href="http://www.bouncycastle.org/">Bouncy Castle</a> is easy to
install.
</p>
<ol>
@@ -449,7 +452,7 @@
<span class="codefrag">security.provider.6=org.bouncycastle.jce.provider.BouncyCastleProvider</span>,<br>
preferably at the end of the block defining the other crypto
- providers. For JDK 1.4 this is detailed on <a href="http://java.sun.com/j2se/1.4/docs/guide/security/jce/JCERefGuide.html#InstallProvider">Sun's web site</a>.
+ providers. For JDK 1.4 this is detailed on <a class="external" href="http://java.sun.com/j2se/1.4/docs/guide/security/jce/JCERefGuide.html#InstallProvider">Sun's web site</a>.
</li>
</ol>
Modified: xmlgraphics/site/deploy/fop/trunk/pdfencryption.pdf
URL: http://svn.apache.org/viewvc/xmlgraphics/site/deploy/fop/trunk/pdfencryption.pdf?rev=569118&r1=569117&r2=569118&view=diff
==============================================================================
--- xmlgraphics/site/deploy/fop/trunk/pdfencryption.pdf (original)
+++ xmlgraphics/site/deploy/fop/trunk/pdfencryption.pdf Thu Aug 23 12:00:37 2007
@@ -8,7 +8,7 @@
<< /Length 645 /Filter [ /ASCII85Decode /FlateDecode ]
>>
stream
-Gb!$D9okbt&;KZOME1#HO]pd@E;%j_2c<_W2Qc2Bl%+@P:kPGGdI+cQJINs<Ok<T2EZcEXf7%&mRCgQ3f*j&t(o"^!]3F9'a?0OVrWn2,`WD/4$RA+DHs^\RY*\XLL=/7f.%Qa'Wl[nnQLG!N#HL@Fcp@+o6qDocjFbOu=4QH@II5U"nJ)F'kf,QV,(nDl6%KVVc`>b_\JH@7-<Ep4*/[kaGE]NlWlX5S76YW-kN6D@c4g?=Q_n3p#ssBGU3Ll]SVHA+>*OC.5:L`MFAn6H!XM!APF]G'+d-(=H=WKC_RUD0RJkbfe)ori')EKneLsR6R94[LK$KL"\O+,hL!GgQAUgc@CuY?C\m<rAS@['%f4qq1L,3u^,`o\Ir%0OS"S!-ARrr/.rQ5:Dlr9FRoK(ojT+65+D7`%e6r-3uQ@G?OYM7is]!06AIlIKF>_mqnJ9-s5i(P8@64pQ^e*KlADW7GIigK]?nYGf!FguPRb*6b7.e?G1lAbn=YO&c[]O-(gl&.!qjX_+]K<>>e6j4D2Hgcl:f6&<!)MaHNTqutXLbd\\Y8@o2Kk?Pd'fRUbJSA'X:rUOB\afN9o=VY3SIuW-!R_%r62o4feZJ<?.?9gQX$`K...24SBek0F<k]gV$hL-K49~>
+Gb!$D9okbt&;KZOME1#HO]pd@E;%j_2c<_W2Qc2Bl%+@P:kPGGdI+cQJINs<Ok<T2EZcEXf7%&mRCgQ3f*j&t(o"^!]3F9'a?0OVrWn2,`WD/4$RA+DHs^\RY*\XLL=/7f.%Qa'Wl[nnQLG!N#HL@Fcp@+o6qDocjFbOu=4QH@II5U"M-rb+GN5/iOhp=GTYQAfk>go@gku\VPH1QU%RmJl]1H6F<TJ/e,+l?'F7V10B*s4Z92dQs"<kZ^;7nuj:.',P/]td(T9Qoa\uA1_!<f%\a\H4$&4nJY4Yk92iS9=)b^OAnBliro$2ohHlBe?V9WYj660H>">bU)o6KcG9ZG4q02Xu32h(J%1:0m(NCUIGS_\p&j'$/o5rY?;:K(t1\c+5URIcZ/2Ft-3dH6$tF:PV+&[Tt!mU*h-Kb<O7cf55Ct?.`Z\59'\30#U!r^cBP+E$c,[Tnlk@C%`o[2t>:5n]ZF[GZ&k!3aB79A]co,Q2.=)FiT$Z=*E@hhQOYooYm'IEY]#?6!&XmU&p:*^%]LXladZKNPe<8d*fO<6lGC?<t'rT68M5mMAqhl^pGP<W8cm2gj&e-H!]=*:'h9'!,2Jt+Fe'nlIP_0'Z\G9eKI_''_aYe1mu*3/)Ls<"j9>i2?~>
endstream
endobj
6 0 obj
@@ -104,10 +104,10 @@
>>
endobj
20 0 obj
-<< /Length 2192 /Filter [ /ASCII85Decode /FlateDecode ]
+<< /Length 2412 /Filter [ /ASCII85Decode /FlateDecode ]
>>
stream
-Gatm=997gc&AJ$Cka2@^Z:MZMgU(s^TP`+bM]A0,BUcGaPspt$f5Z:gLO*&Y11bBS,X?0E)U@Z<iA]!8a4YhP4"P>6kA`<LSF)7q*rKSEb[E(1I$aYko=0#DI`:*oc92\$=F^#.=mG0D*a_#/30,.omiH-Ac9+$o/<1_FN-H>XB?J\R3KDrWdgs4+G@ms05CdC/'1<0)\n;HNe^@UGrg^ZMCc/H:^A$I\gaDP<gkG\r&tU%fn>GfUZNDcrh5Tol@_CO?kKR>Qg7);L,WhJSf>Nj%LjAK9(c;BQBrgX$=NL:I\L*MHRn8>ig"P\E0(ZYJIMKH8MX;@Q4_@S)5`X-^NEXNr&@KfN5&-1oRmCi&&!P)r]bb*-o`F<+=KJd5Qa119^'L:j')SYHjAPEc.;pI)q:ERcrcc=RT?92n`NYY._ftW%Z<Sr%M&rEn^W9Z;$9e#dm^XL(0@n%%>guZHb'Vnead(TKAPj].fVWtMXX_:*8ZpV5]hgRa?C(Bnm=F-CXl3qh.<M.QNE(jFm$QPDbQOF**hTCSKTW7-2UI@XT*P2W:mO^`pS9,-C,:5bGuBF/4OeT)\u3^=gh0LMD"TV9r.9P"Ruod)?'@\7k\d2p%pDjr1i?5nK@GlA=&&6bJV/BLjP"KWWT>o])SK=16bQDZq[\UPQ4/IqLBY#YVFts#NE0)[4M_A&/\`N9)m/fnLskRV+1X]#fikKfHX\UYoNDi<U&Y0#PLBkmpHqYbH%%iYE*Q@BAYdane3rsdZ5Z4NTm!3X%tRBNWfB[rdr?DG!s3m^%1A\(]F.AZ?s;r#WM2;)MurL(Wj,bi;%m)k23DZ'ed+h;HWH9\1[ILYFH'Tb'q_V^":V?O?+/H1"*%VMAQ+:BKi[*UC"2t8'eT\@WRYJ_BKi(@jT`"GKclN@C+>GLjJ5'`pk.+r;X2iT]29]1^r0i#\^_>k2SJ8$d3+Fo%BS'@\(1-0OD"G!_VeVlM8OCY=C=g?%bb$
BE<o&&"]Ze5,_B;pW[;0\:JAeJV-V9HctcOO,Ypc07T%Bp6A7<!Wmsu1pu>s@EX'*"Z,-KOq":jl99b`tPu^PZ=6YQp6>grMTKU?_aD(]<8`cc9UKgu.KMLD@IK^T2:;ML";ZW2o@F$klC'9#djQ-<k*#t1fA;0sTqBp=R!%QU`r5Dpr:K.0T#D!-e9V202&q]O(9"/K!/.AFCDD+j#1K5M^NQr:2*0UMg9cKi-U*FF,48S"%1=:Ob\8guT!s[,W^a3bV9TX=\XJ`9deBiT*?Gqs2O=J8L)>ED'kMfq:`aakV_b#/qh0?3)&($IeR>eYli1B#O*nl^d@;k,n,bMJB3Mp/ni(:h<I_:h/&dU6H0A+WXESYES0%O1UG0:35Ta$Fl[KjrATJ^UCQ8&(?<**Uu7/GJGNuj3ber+rApb1,-J96R1\!.MngXKIt.MA@<KZYD,2A#m;U,s8X.^bVoLuLcA0fBJhd?%@$1d$8$2:pf'^l+WEj@H[&@pCq.=Olt&;hk^leY&SXVO=Ig>P@Y,'@I('Q_&78K?n[X.u1!fX:XAg3Y^KSM3%ltGLrMX@m/(\UEH8qmgn#r=p.@F=@/!mat_(\S@q9I`VX>6AQ>-+K$$f9'`,dILF'051mG?jmuueQXc@L5,3ckW@.ni]@>Xj*\N2&UM]F":L0t=H\T'b'V@H%=e.2mmM_"K^,hF#a2,,cEcIpPr(1[&T01@W?@>9$So9\O6]Q@el0ROE+&hl7RhL2)d.K<"cplY$"A%B3eMG,$n'UbGB.s_8_?J9Tt:Vc?-R6-:AH=Gg%A$Lb$:MOXnl6V63'ae50>g^Q#F4j)p4$naM$_<WXB@%S_b=.B_g?%n"`a7u?-D2M#,Q]M+LBb:*:K'2,G6I<0R:r4(I_%PY0HcWPR'cbff;9Cq?cr%FY(,`p_P")e8b1lWK`rWF5Bciqjqd*#Qh@]=f,Z2,K_:GsV=W<1:'$J)4m&Ma7_Ar]d0tp\F[4
bW:/NJr>2UIPJTt;LMt.W<SM.L:\A>Zlj!8YSAm0CNBPJNVo&c>5]-Q3oN&ICO$mf>K#LDKT\YWqKSK[4f'Al@^D/lbb"5$a(7lL,A0`o]&jFla&T0k4s>nV\XN#J<F<=6cf2[m,&D>.q_5EoX-*^K,]-MsV(9T+dkd,67-]DZqr?+u`Q^[Lcr(*tetaq`/jY0u)#7[<Qg7fNRas+cO~>
+Gatm=968iG&AII3nCYt;'EPphF.+M@9\ZAFg)c\(+:=8kV?dq_Xf0"KbEo`35[(TQR>E5OfYtS=r>'^gSBVka5oe?/QCF:RChL\ji#a\$$>Z5CS&G#Zjkfe0#@bD%m\t!<q@...@E>Q*rp[CX`iRR!47LHM*%uh\pOp?^OrLITYHrGr7K]X9pT].=g<0<CG-k\lE",,Q]2Y8UANG9Mdc/I%hPRs01*MRg?f>]EO'*'QZsOK9rq"b9$hU)CZEh"+(Q'5++-EosTUi0GEV.m:r.pm?;ml)0AV&Eu],6CYE)r3dpC#Nh3YI=LDWmRs2)Q$D]h">s^Sf<O>(=+WngC"Ekgbo_`D4ML5J3gbJ2lBAiJhh\W(VLY%osm:*FT,Nk22<(N>-a+7'<pKJ<Xn&>DoH8/&u3M3osNnb#k*iJlOPMOaB;-W\7.d-TUmYaRaYAE4sk*r\ukro!Cdh$M9#qkq(-k6DC6q3:GoH$`OhUgu:\L[;K^$;gY*,U]i^d45^oP@'b$X;"imR@u98_N=q(tO)sFU(`SSl=eM*aQ6gP#"JB*bm,D]6%`janCL1'c%\_Hsf/LCop9np[Z7<8.L`r6\,a*'g.Us@7P!k8>P/0=gAKTQWeVT7.`lPcC,HD7u_Ua)b3Vm&jNQ+f83<<5/+`<F":cNrgGTVPW9W]97cjh'33%$Y]XA4ZE&.ZBdWZ&<D4P2tu52nqS;Bam>m#l:T>V#KH`2NuLjMaLm<+pnPeJ\dN56Qmq0n>;,.B3O8^HJ[;$AIRbP%'.<@co0@L"P`iaS#bSOnJeMZQ`kOqnQ8o':mK3'n-W)mfJN]]=PiM9PVse#=UoI8'\P6hm^1:.%s>oP^e%$_p7^9jb>\,\FVeBLYo#6_7QN7419";*Llktl0Yb(q\^M>14+^?XJ-'DER7e6F%d42B^-Fgj9[>9m-*/e-I?.gh:_:J'BkP
;P1;B&A6dE<Z!...@o>'=9$'mUlA8"N)DB-rf0o*)J@"jI\=c)E`nJ46(S"$ehi$k9<[[(7g";sdDF=(@-%%UmLBYGMmY:;*l%MoCd+lUt(mOYB-b_u,eJ.F66V/I^Bc:&rL43So06l7%4W4DYOQeo9O&PbRG3NM>^8?p]oA_Xm@nl#EZYT^%PH8rk'_p2F51M+9E\@<F_$P#?k6*[\6+h_bLYDbC?j[]&dQ?j9QV?#pUQ]llENW6s5nEt_C=%FkRUrc$1)a)5ASP\e[GM=ucRa(M:e$I48QTTO.g9eh%1ip/I/hfNh2Q=H(3\9Ms9ToIt(*Ab?=DBY*k5rYkC[DSe2@6Md.db:`4-Nh[F)"X.Y+^TfhB_o]C-kX&\0hS:$()Wh#,jlKB/:.s`,quWNSJrhMU&/f.bRbb<=>kKMdU)Q\7]s48Ed3U_\I`tWfKQG:qQSBoa2l.V3?XQ(?r@7gJ[BA>3C8q@_sEaiTombMf]HWTod4'W'jDi(_6g,M=9PU@>-F1<=ON&Q=>F4`mTEi\pHLtU!hG!2m<^0'D4,lfa15CWMSQ<'>otMdR$WQm(4N-SGCt.Pp`(2V:+VdBVXM$0FPcUOP48uK6ppti`M=1=dLb6O]oEia+O'
g@olMBY[VpoW+@L^bUu_>gU>sa'HZaFP@U9tD>Bn_qf)oW#b6?:5*8n#2=?da*-3]D>U(G5@^UgI>SF4h.!jf'P?J/>]P0mC[M9oA!r1%&Z0(An6UPneNeCW0FGj]Jj'#)(?>ikK[\>r'%/&UN/F%kXQ$0l9D%UV+6bR[Bp'A.]W-K:\N]@V7WX5\(++1=.OAM!dmEke7*aY<7704[5$SU4NF?*?ciX#te<0=>JB?*kMS-9OFu:a7ZbiIuh)GQu5F#n<0#FPj:)+=R5'_Gkh9`1e,n/C<XiZ_F:f]Ah!9SM'-3"5=)%1[mJkm1=Zn8P]FG4n3A+DeVZ#HE<o#XjdC6&5(Hif>SY"hYgj4/2T:Zc0'k@7C^_1#uql*-q(lZghNbqr)Wg".'g>Rq=f<CPq:\/;/W[CO=B76^(K&2pX0"Pk?Y:~>
endstream
endobj
21 0 obj
@@ -148,10 +148,10 @@
>>
endobj
25 0 obj
-<< /Length 2638 /Filter [ /ASCII85Decode /FlateDecode ]
+<< /Length 2386 /Filter [ /ASCII85Decode /FlateDecode ]
>>
stream
-GauHOhfIL2&:Vr4iQ5"Rdg/UTr$+/pOLCj(2qMiJV>&D[DHnk%Es2AVP;`I>XXk?n5t2>VBr6E?[G(RCmH538Y9t^LPEZ#AW,i4DhjoFZ\5!S<nE:)h4C3!Q,E+WOl?k\hlf@a"A2NEY'phYW-Z2)kKg4kDTq%7\ops3WoB!&E=0o8)$ZbZ?0^cg4B9W5"9\[I\5R5h&3[iU*SeY6dCJSMe[E)D1jgk!5RJ\]9G"LVI/pCP5;D2S?3J92K;qsD3Dgm)sLe,&ipce3f8h%EeTJ9jp"_sW:`s)]3_8(H&!AQ!15&o[d7[4@6/^VQTYhPP,;()g@0LfR;:fe9)&`Jt#KJP"F(njVYrh64QAI,"B(QmB*Ztna5'YOL^/.V#\k/[p)+:TcYEYA5]_og`@S/.#!UkZj^IIc_CGqLs-J?/.Yp?[P2o;A;%o0O&p?#'@6QKto*)-6Yr8M+)u2=b!Q?3!mKXE@CZ@:mLQ@hR7mI$lAJAVF8QpW"kg&&)oQ]/K;qiHccT]5:YPO?lD>RM\)N6(Oll;%uWQZgXs%\4Oj6HWJ@40Pfb;E:LC<g)_Uf;H@&meqZC=R7;>Y+e0pcU'd[,HkN*]L\W"d23N-m^tZYC&"ZZD.g!W%.t&Z20&9^nT;lA*]$g\];5_=>g'1r3Ga)7`:aEsB"^!"bkh:[^GQ3&&q;i3Q^NO2#Q&.PZ`kn<i=fX3:.1+MkD-[Va?TX3@U3.0+UjQ8W`K:s+ou/n7e5q2"/Fg-#h]uAq_+olG-%k0\<A)f<_f&L]4+mj<f$B(@MQ\$lFW>`>hNd!D`>>+=%Zk&HKELk5ZY"RB0liBR>$-kP-j)s3"c#6@'I:k5pAG2]VKRH_OdkM9Ct,Or!2T8)MBn400M=&#q+?0BNb43TL:c,HD[d!-c'C"!K[b%I.@95blO#0<c.d6QCg/Z-Pe1G`Y&qdCqf#Y\.+Lf2SPD@t^-4tBTY'@Nq!*o9ilsYY[mY_5'`MY0Pbd(
'-c7X5mo+]dD]87p55=?o4B2+Qr>I0`b\_6ALC1eM"W;tK?ke&ChWtG^-$kd::N*O=Q0soe4.)#=Gmp()$s?HHOUl("7o0_[Ihlm9`@9.hJtfnMof%D85@kb84';5o.'j.`BpTS!iNVB>\rS8GdsX=MNIlEam$-qmn0c+-UT\cHK79H\A"/8=I_T4lFl+!LCSgnd(@!"\"%M*jUMdnt4^1lth7&$i.%&&*8]m,8<?1gBepR\o+PlcXUmeSR"^65QI^A7mnRY\CA"YE-bDu+3=Cru/7ss!H^)d&>[6+Y:;Y7*dX2>d)^(Pi'qE:S1Z$E#+n*t1lkk!0,fXJ+.K2;bGU@6!0Zn;,UX&W1HFlQB7n684r<6Si;V521i/rk<5$9s8lR.(?.;t05jra\6+)SnL7r2hrb7pH@f($jh_%$BP13O9?J9D"4DGms&(ptP9c__@i=`F"BaC-2RP^'ju!3N/Q]bL,`ld;0NK1]*jGd.]rok63gYd2a.t<d0>bnCN_dam91aq=Q0+NB8.?Q8>t!n7WeVRiS?CY[q:K"Rsa=9".u$A"V2rBqB%fZF+bb`D??Xi9-;;+FFe'W*Occ"d_T3,B2"3l*MG1@nj<77qAMR3;2WG!K"]ZJp4ns(/LqRZ"`Z4PjRdYQ$cfqhVSIL=_;mqIOA?n%UuF$S(;'(G-!`]olHI6722r8e[a/km"+N6^1q`'6JeM&P)"FAS!p\NW7p;.RtUK0%4(01n&](f*_iuop?LD-';e64#RFIq=Ga?HRmND(#A>]L`\GUC%"rk))6nDt*S]KsX;EDMG9k:ol$Z1d=\eP@S3Y"Eof#I)4I!Tsh5dATc8K8!(IGiNYCQioE-]_'_rid,Y3tTB=u62)pXHD695nU89WP7>,-1>t12qS`H`hQ"1+/%8*f<?j:%$HpUZuoeh9VoO5k6cL3c.I%aQmM8?aUrj[+]5%`PnF=7YB=[g")fu2!]K@jHp!b[9bK51oF'S!M4
Y0/B`.]EE0*L%r]d@E++jcN%-$W]E@[8kd13\m/>oeI08,%af6i4qqp7;rr]O@dZE/F7-"r@n#Vo5$t_dr]ZBP`C<4o...@OUFGD>#6TTF=1bBes!mP3u*6:0)em%8"W@e`V*;a$cl;$"MVa1f_m3PX(cG4lgHY0>alRM-hO9qZ-nd)pBT`V5YCPcfGE#7@L/^rlGh:4o+rSXsi&bnV<U9Q,6p9*CO/B)hlH6I9#BqUX>-Xj^"#0pPWb=Pbq9RNh@L4[/g.9Z<oN4~>
+GauI9hfG8H&BE]"="o(qAni1i`/id16e[G[GB:=Wg@VB/glN@7So]DaSCIT;XcP5p_%sFV2cJI][+bJ]oT99h]03d;4o=],=pt-*iQPrQ[QMlg:Y-!4F3GYsE+\4:Fas,Zft2-I%co]u;G,nh9LH\lDK2.jY&AC)-9cR"-GFmf@p/WElIqoX/f9rd2BXJp/f+tT\r8*T#$[aO/)iHA+eqjLHGZ%CWC:Y`FZVgo/+m`RUR(A*HJBYRZYlD:YNP3qc>TGOGY.M[L%W^%rM(r)%="-_,L*hiIT5r@OGnmbH/^gSU*l%+Af?>s+O^)Z0tsm3bSRt*'"p<J%`ls_hn7-VNVoaQYFqG%LZTKH&,5p(I`J<Ih>D>^09\hs_JV5)$l/1Kq,)iQ5p"=1ae[qKYAb#4ET+04P@JR5BlF'5WC)&9f4!_g*#i"A5pug?qPC!kit0t3h(i09d[(p:RcOSDRL-',egU`"r%L_U7m?.aMaY8n+r?HrZDch:Pghc0@'Bb@(7@]aKo6ksl+Hgt@ZoXH2EcS-Zcm-'G7*.@Q],tR%iZOHg*h$;gJ;1Z7OS^Zef7C;s84E#mR=^TqSQ/)PI4=[2p%[#6a+3sh48OaX5=Z%bI_9#^Yc5Gi9(-AVn41iDdoCIU,JYJ^ZaPlr9r*No0,mkp`TR\ACbem'J`5gRAGcc+8#=u;@gW/&+/afnH%&nJOOi%pJ1c"qbu(`\tcfSOtq*p-+hBamLL6VMYef5B&#=D?OP(VBIC?/PeS],!U;3'pSbi^q^n:-ErUYs6b1N[_Zdf3"W;tKT]861mIl/3C:5\$gc(I#$d;PjUbH>D.ZSo'EZ[q;N;G`i0)K-LbMH76(A`d]daI\#C+F6@A_\@c1*lL3^5S_'W4nR`VpJ1)h^!\,%))KMqL.YtK0H_h/G/]62&,oXcC>45%4oRCPQ<B.SY3[K(XTojP-g1jAXX;<^i(R-QC+S38tj<S>o`[5#="Au)#0N6?18p
=IrmY_4hs,tr['W]='PdM.-pl:&Ye3EEb5N*1\J0*4G@qcr[.H)@Hc6CnF'5h&K"+Qf7neEm8`%D)a1)`IB_#6Wb"7'!kOD:W&k2r!np45^X[5p55kBE<eK...@q>hk9(-7_J0=Dej30gWuXl@P#HTRFr%K@No!,Oma`F;cg-^?@QYc,UNGN$akaM(1)A3Crkd5FW;Ul3r^%p^neXH$)W\;Nrm>b4Hgf-'$CE*P3XW$NJtipgHdd(5'PLG>MGX@U[_pG?7fgS]:))nE^i>LD[\Wb5g(?"qi%A(r[KJ-Ea/]Xf?^l.sFGnM_"4f
i\0pp7UUZZ<E,:I$;c4UQ[04A&B]T+a0C=;;,$nqDD2nbn]1c!IK]k8*uS#_%BMjC_%YNDh2Z$$$&GZ/9!9jo=i%#6YSaMa/]BDWOED&HA#hJi<l2d'>V2/(]61Qrl\UA/nF,\a^)e9>W<MK-\S1[7MiQ-j,AX]%\ma#KNMo_]EB]uDc-_k6"VMrl0G&Og]KnOl.+-i)ksq*r[ilCdr"8Y]V%*TJ2nh4r`p%e_H,Z>dE"Y&4oh`nC)'hDWo%Wt"D^DJZ9==8*Q3NK)bC3E#(gf-"l\JpL@:"0;?#K+@HqqmnWkR.#(&j^h3[>QMhkA[Lj8I(#9[!6SGc639dY^8s4ec11Gdbmk."UX3M]E&[9OrPu4fhG,ETT2pk4arZl[7D8SMNS"Bbglk4#rrMo"<1*~>
endstream
endobj
26 0 obj
@@ -192,10 +192,10 @@
>>
endobj
30 0 obj
-<< /Length 2787 /Filter [ /ASCII85Decode /FlateDecode ]
+<< /Length 2601 /Filter [ /ASCII85Decode /FlateDecode ]
>>
stream
-GauGcgN)%,p>')lnOqT("=?\/esUr"S><LEG+."-;l:-;"^+AFOpdFRZsV\mhJb`B&sKac);>2qSGO=PrHRr-n`ISFe9QY<+)W9`\5!lqn=,+dr-m1F<l3PFr,VE*n`K6[Ff7Lr\@Zb89.p.;:3SDu$&tAEG]8-/`ZsA%^H7MFiCYe1)3-(^IlqiMj2E_hl;bs,l<("PGMbHb]KdS8k+Pg2Ii;bC1KYZ4k)j1>m9`B.I)6*;Gu4X#)W?'L'UdmifdN*\Hs<X@gtplTGZK[UX+Ya)M$CiLFi&NmG_WH0-r9jS>r3hC5Z_oq/fG>Rcm?-kT9>Q,'7ZZ*]M97_Nt#AWc\n7DZH0)]87(@R2FCd^7>1N2;<IrAD>l(dOWQttpFodkE_/r='KY_BoHFKh'/*eDER^2Yr8k+H31VQ(i.Q(e%aIVEjc&B*)[):G4pJ-CQM[8sZ+J'o@8Y(r^F`#o"VOjAR*SJQbi6O0G@i#h<1QX`KpQECh9R1e@aD*#TGn"i/InW$`7F8pA\CUkCF$l_ioU/MG,qJk$WSG%gc%iV>-cW#?8FM&4saO]H')_e>C16!`uZYKlP8MO+c**t:_FB_/0P"SFX-)-;",m*%I6]'22Icto?`>C&XKkYdA@/9L8O_>DgRXd]VRILOI:a,3YR+t+u-HTL'9bGE`F?Dn'I=Ys"OmRYe@fh4s[Y\,dnAr=<ZKn"@'kcLt+*KWof_Gmn*Rs]GB1Wbc6]C>1>.uO*_"Ee&VrK.92Lf$?=:Z\i;sB8-'efSZShZ>#u(U/!['KZ4S"HDpQKp[hjGO9M5Z2DO+"`Ogo&1/?2<[14b*_e9dmL&pkin39k*3YP*&3P522H=mV?Va+&T\kKLr>WR(trl[k%=1;uc2B@S,-eaaiEq;E0em8p/Z`mr78&V0_MV%q!nfQ_1J3PXFW=V4'i(`lUYmP-CHdp.^2j`DSc^f<==CW%kBOB29UAnX=^].*Ccnc$nr0<i8f*#@4
N+Y'#;-:r^k$"8cqN']#-OFC>s&5#+O7Si?O"<fQ...@dOP5i04jK>BH:A2*doC:nM%pC6It'&Fm+I%6aI`2"j5OX4+`)p#?/73XbOV08Z?hks<e!o2./t>6`jBDi/%r'cbbl<iNir3ELGF,,*;KRq?,E\9E\)_OgUk"k<6G(CRB(H?T0?l!\usl*rQjC*?bXWtRb"LF9b8/r_0cB>Qr`B6E:+ZRp=j<o`]qXt)?'`#BD:rR""T%gRPIk.8$)TEV
A,G;Iu"rI<gO6mAskjC%:9c$36R]\^sn9PKVRMd0FASg.V3!GeFB9\NUXgO]`@_?RjS..cTmI'\M=<]Zg]McW?(DW/]BNpg,X=bH*8DQj>08F&U5(.OufW(Q48@LE:\;Pns%2R,QtN\+a&SsVAUL8*,!-qUh]?u=EfM.b`A^\RG2496VGRK^sSblup*IZ*)'Nab_aor3eUf,k_jh_VOg*_D`rAkkG;%pM.3J5;:%8L;eSang)[[AW[S]ki&!4[[WrJ&P5tCguNl!Z?kI')i:25rNRh:YSi>5,H,Dhkg6'8UdloZoJ>BKM?G]+)3j:gqZ=l;Mgr@I"T*7c]0S-&=@tF^1!qSXMD)_.s<\W$;p,24*A;ER8usV-HhV,HB5t/XQF%ZTnskDh,`%\*oqgeA:oJdlTl%UB^=jeLI-`(B]n]=5m%p#g/"d$Ou=IOPK#5=[K\.L!X8I2co3NX*Ea;a,*n6uZ_!is-B1*uN-c#\BEH\9U6Z!"Ubjh`?:>9&ZCWR`%8_.iG5OuXPVQ;%M/F4q\Ei<U-ttoRfe:*M6U,m\mYL%(MZn@VB;]ZNKBJu!%6YNJV+FhJ1/c]0;@$,Z?E>.i$bq:n#8*4eeRgRrk<Mm#I<CD+d#"\sW0_VaqhN/sRd)<nn6;YNMZIsD[(-d*K"be"UC)+\\hjB&B7_qdUTN0m&m\'>./O7:<q&&!%rCG0jb)fSUeC!BR1$l0q;"&0H*G&\RNU=gtXrREsbXZ.fSg>IT<Q-$dghKH1;$"*)i.hq*#Hh;-oM6e6!UVA8&A+9G^4%MWkpAFq70'3DI~>
+GauGbgQ('tomOP@a@d/]eqt/a/'s&rm1&?XLn!3_'n,"R3'24=P"J;-Spl*KXut33)VH\L"5Y1iT)5)ISp#;gO[GN%3D[\dk</3hj2!t>6ko>]k.APBSYrgcNusbdU[scU*pipr+b,WSaNl'6Irt\S4FQ"5GhW+3kIE;j;<YgQO@BZX-8]/LER_>$r:.7gSR%<%BCIKp=;\s@/KsVu'$bt#pYEHZ*WtXtr-:7tIH,\p\R()0gcYcMTfm<@?c7"ge?eh7>dIG/K2?ks(]&>S$,--+r]r2*SuQR/b9DG22]mMIU_bCbfn&Q'bd9?r1(so+F-6,%I;b5^c\e'eX59tIZ7Jt7<--qF"_u/^D[+H'S-MXHdXh!6c`X/=]HE4`.#&4hntQc7e0udP>otU@JA5FOS/jq(K8o2ueS5XU([&%>r?A>o&k7a*R$sn5pE'U&YV?cRoZ6Yj=hPH"3$9qtJAqaV>]NghN??Q5pOC^$iaR7a.$.R;Xtkk$">3_GpCb;<H#?]mbc@1FL;#/=[..=1=4aI`R'i[V\:6O_;#<^o#Y_4T<)eZ`hUKN4f.mMWaE.od(27&+LoaRM!m=&HG^am+5.\Gc'<ecr?lZ:b7USgjRq5GsEh<X`gnHt=Fck;q3PnWPHb8!=]9gb/@V1H9%f#MEHqnUMRgQ9B<\:h+02m64rDjAj<@uMuR3.GdXo6DLagcY,'`k9572fV$LlJm`QLiioZ\lO/Vsp(rnq;R&RH?gU%&`tc#@)D8G=MLB!GTO!AVSblZ^XlH&atcTr]N0lRDU6'/jqR9eg7h/&n"#b1<'_lo:hgo]M9Cs8mF]]EFYZl.RD-LA#'/L@o]7RF"J<DGS[\eT4dY)rbT[E.e@:/E'n=3!XQ(DnY8#+7QT0SI[ni(5Q[;:1n$[)23MY4&C6M-"#"iPd,$MQh*'(G$,-k^hWSJd/qt+eYBkbA4R<IteZh""J_7\@;+O1Y9.8kfScZ.$HpP,p,6&\
jpV^FWJo12sNK*D*GZCdkXW&RfnUa2+VN<5X.iarGU(T+Gn]Ze[B;&4[pP]rIN8Q*:HLYd-3INFsKu8#Sdm(WSOIKKM1.?o8A@<ln+9VQKSSTt^+8H;R$6Y.tZ5^)ile62UaN`@U,[aUlRM8D?^V(&Li)iQ;!GUbP"R6Q@W#Gri`jZ[,)QIDG9<h^#15T\D$<F.[!]$-oKEr9tGS0#TbB-VQnr%b\e?P8Z',BGckpl*1+AE+A12/]"D0De7R[rHJSJ;f4M`4bW]*2_QK(L3KqVDG$9G]Q:oiG8K$r;f6?U_U2Ud"r![/&]./,GiLj^$9pl#oi\0t!DI29]8)qBj"&(#[$QGYN7"%j=.NQ9Jg\WR&01)3,A_5"7muM>k]>2$)5ArN5k(bVHo#Xr/63@EC!-><jMkO=YF9ppMsM7Es0!a%)%;(mn)0&S3'>o\f)"f0UK<cB>[F[q@S<>"\\?&@*0+)9aYpi^/j^WYBE<K[CiA@$L=i'@iF4YEOFmn_7g=s4P>EGn?-BH#K4_p^&b%8'GOK"tk?uTH4Rpc)[tdYfdna6`N+q7;hP<gQ1;1Hu-,,KAa_GSStSI-Fel>YDe$R8m9rCFkX8(NFkG(EW`78[c9ZldrI:@hWrYC#6h<6G*a/f#MO=AK&)(kE.\0JEEE!f`9WGiNkt/Yqr3cO"\3^4;<mU]c4qCU8>u.A^6tB-m[^&N0W.*\!O[@+a+Be?T%SS:H<;7`3n?bq*CM,eo`>EQiQ33m[B[[/Q#MiB)'+"kCeL>3d<Id3gC!TuQ];EL[hT7j_i^SKo<u,2TEVA,G;G"#rI<sS6mAskjC%78c$36R]KY!fVR4EO6nXH:c\4%IJ2'o-->fd;9u0Y^]VAk`Oa6Q;hJ?VR<?"`=`N,_$\+!o\a7g"rN59ZapK.MiUiiB6$_u&V<$h7KfYW0EPj':"9l(BK;p3gQ-`j14:fKIkV-BKkXH!"h9?fQu2d`/9-QqIeZQMor>gS
Jh\+n5,+u[ACRRB3fqDV]D-F&T=k"%ft2)ah55O@kV!'Wd0G:Se69%MT/e?mcTr3GS#jp\*Zs)g\CPOK8B7hXU^fQ+koK0J(=Qe9b>'tU#9Ttg=N^JC#bbR2V75`i31cM9h%:K9f)j=?KT$H;bl47MUhYQBCOa6ssZqTB3c9+U#1F/':(:3TY2gQcK\oOP6iWNArU>fk,<M]...@ADZ9_U>%=2\!FcLoo#frF-SSp"_2-`Q60Wj2(g5M,Z1q$05(8,IR'^UlHhm<Z2@VNE2=Ls=eG(sUr>27LdmO^]!),LZ'(C=-<1bggm71<2%[["9>-ou,as&+SL`l:-g:W#\HrDEtKc)3Jkj`bJ'-Z<`]@U!S%!*akprg#Ef0$;koF)bHRPQ`ZaASm\67H&KrG(;.A(9/ED<!H?lc8=#OC!U-lU,[6=kb&5VHLSg>@h_6+'iOt\B[1'PSK2RcMqf]t>#m>WTP[elA&Cq$3.lC](&LbS7d(HGn,P9'A;KC<E<OJqRd:#YO\]2'&F7I58hgr#pF6cfmNYlLZ+oS]5=)R/$a3o]KpNs.8g-XA6*#Pr)W77Q]):%5h3W36Bj.C!b<%sAA?e3m^n$e=IfM!JVM,~>
endstream
endobj
31 0 obj
@@ -221,7 +221,7 @@
33 0 obj
<< /Type /Annot
/Subtype /Link
-/Rect [ 96.336 539.466 116.34 527.466 ]
+/Rect [ 96.336 605.466 116.34 593.466 ]
/C [ 0 0 0 ]
/Border [ 0 0 0 ]
/A << /URI (http://java.sun.com/j2se/1.4/docs/guide/security/jce/JCERefGuide.html)
@@ -232,7 +232,7 @@
34 0 obj
<< /Type /Annot
/Subtype /Link
-/Rect [ 223.992 400.006 383.64 388.006 ]
+/Rect [ 223.992 466.006 383.64 454.006 ]
/C [ 0 0 0 ]
/Border [ 0 0 0 ]
/A << /URI (http://www.bouncycastle.org/)
@@ -243,7 +243,7 @@
35 0 obj
<< /Type /Annot
/Subtype /Link
-/Rect [ 389.64 400.006 447.984 388.006 ]
+/Rect [ 389.64 466.006 447.984 454.006 ]
/C [ 0 0 0 ]
/Border [ 0 0 0 ]
/A << /URI (http://www.mozilla.org/projects/security/pki/jss/)
@@ -254,7 +254,7 @@
36 0 obj
<< /Type /Annot
/Subtype /Link
-/Rect [ 246.972 323.472 317.304 311.472 ]
+/Rect [ 246.972 389.472 317.304 377.472 ]
/C [ 0 0 0 ]
/Border [ 0 0 0 ]
/A << /URI (http://www.bouncycastle.org/)
@@ -265,7 +265,7 @@
37 0 obj
<< /Type /Annot
/Subtype /Link
-/Rect [ 145.992 200.672 214.152 188.672 ]
+/Rect [ 145.992 266.672 214.152 254.672 ]
/C [ 0 0 0 ]
/Border [ 0 0 0 ]
/A << /URI (http://java.sun.com/j2se/1.4/docs/guide/security/jce/JCERefGuide.html#InstallProvider)
@@ -336,8 +336,8 @@
46 0 obj
<< /Type /Font
/Subtype /Type1
-/Name /F3
-/BaseFont /Helvetica-Bold
+/Name /F1
+/BaseFont /Helvetica
/Encoding /WinAnsiEncoding >>
endobj
47 0 obj
@@ -350,22 +350,22 @@
48 0 obj
<< /Type /Font
/Subtype /Type1
-/Name /F1
-/BaseFont /Helvetica
+/Name /F3
+/BaseFont /Helvetica-Bold
/Encoding /WinAnsiEncoding >>
endobj
49 0 obj
<< /Type /Font
/Subtype /Type1
-/Name /F9
-/BaseFont /Courier
+/Name /F2
+/BaseFont /Helvetica-Oblique
/Encoding /WinAnsiEncoding >>
endobj
50 0 obj
<< /Type /Font
/Subtype /Type1
-/Name /F2
-/BaseFont /Helvetica-Oblique
+/Name /F9
+/BaseFont /Courier
/Encoding /WinAnsiEncoding >>
endobj
51 0 obj
@@ -389,7 +389,7 @@
endobj
3 0 obj
<<
-/Font << /F3 46 0 R /F5 47 0 R /F1 48 0 R /F9 49 0 R /F2 50 0 R /F7 51 0 R >>
+/Font << /F1 46 0 R /F5 47 0 R /F3 48 0 R /F2 49 0 R /F9 50 0 R /F7 51 0 R >>
/ProcSet [ /PDF /ImageC /Text ] >>
endobj
9 0 obj
@@ -401,25 +401,25 @@
11 0 obj
<<
/S /GoTo
-/D [21 0 R /XYZ 67.0 434.456 null]
+/D [21 0 R /XYZ 67.0 482.066 null]
>>
endobj
13 0 obj
<<
/S /GoTo
-/D [21 0 R /XYZ 67.0 180.722 null]
+/D [21 0 R /XYZ 67.0 228.332 null]
>>
endobj
15 0 obj
<<
/S /GoTo
-/D [31 0 R /XYZ 67.0 593.0 null]
+/D [31 0 R /XYZ 67.0 659.0 null]
>>
endobj
17 0 obj
<<
/S /GoTo
-/D [31 0 R /XYZ 67.0 363.806 null]
+/D [31 0 R /XYZ 67.0 429.806 null]
>>
endobj
40 0 obj
@@ -430,57 +430,57 @@
xref
0 52
0000000000 65535 f
-0000014219 00000 n
-0000014298 00000 n
-0000014390 00000 n
+0000014001 00000 n
+0000014080 00000 n
+0000014172 00000 n
0000000015 00000 n
0000000071 00000 n
0000000807 00000 n
0000000927 00000 n
0000000994 00000 n
-0000014524 00000 n
+0000014306 00000 n
0000001128 00000 n
-0000014587 00000 n
+0000014369 00000 n
0000001264 00000 n
-0000014653 00000 n
+0000014435 00000 n
0000001398 00000 n
-0000014719 00000 n
+0000014501 00000 n
0000001534 00000 n
-0000014783 00000 n
+0000014565 00000 n
0000001669 00000 n
0000001851 00000 n
0000002037 00000 n
-0000004322 00000 n
-0000004445 00000 n
-0000004479 00000 n
-0000004661 00000 n
-0000004847 00000 n
-0000007578 00000 n
-0000007701 00000 n
-0000007735 00000 n
-0000007917 00000 n
-0000008103 00000 n
-0000010983 00000 n
-0000011106 00000 n
-0000011175 00000 n
-0000011396 00000 n
-0000011577 00000 n
-0000011779 00000 n
-0000011961 00000 n
-0000012200 00000 n
-0000012382 00000 n
-0000014849 00000 n
-0000012568 00000 n
-0000012707 00000 n
-0000012929 00000 n
-0000013128 00000 n
-0000013300 00000 n
+0000004542 00000 n
+0000004665 00000 n
+0000004699 00000 n
+0000004881 00000 n
+0000005067 00000 n
+0000007546 00000 n
+0000007669 00000 n
+0000007703 00000 n
+0000007885 00000 n
+0000008071 00000 n
+0000010765 00000 n
+0000010888 00000 n
+0000010957 00000 n
+0000011178 00000 n
+0000011359 00000 n
+0000011561 00000 n
+0000011743 00000 n
+0000011982 00000 n
+0000012164 00000 n
+0000014631 00000 n
+0000012350 00000 n
+0000012489 00000 n
+0000012711 00000 n
+0000012910 00000 n
+0000013082 00000 n
+0000013339 00000 n
+0000013447 00000 n
0000013557 00000 n
0000013670 00000 n
-0000013780 00000 n
-0000013888 00000 n
-0000013994 00000 n
-0000014110 00000 n
+0000013786 00000 n
+0000013892 00000 n
trailer
<<
/Size 52
@@ -488,5 +488,5 @@
/Info 4 0 R
>>
startxref
-14900
+14682
%%EOF
---------------------------------------------------------------------
Apache XML Graphics Project URL: http://xmlgraphics.apache.org/
To unsubscribe, e-mail: commits-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: commits-help@xmlgraphics.apache.org