diff options
Diffstat (limited to 'src/documentation/content/xdocs/0.92/pdfa.xml')
-rw-r--r-- | src/documentation/content/xdocs/0.92/pdfa.xml | 132 |
1 files changed, 132 insertions, 0 deletions
diff --git a/src/documentation/content/xdocs/0.92/pdfa.xml b/src/documentation/content/xdocs/0.92/pdfa.xml new file mode 100644 index 000000000..0df4d6adb --- /dev/null +++ b/src/documentation/content/xdocs/0.92/pdfa.xml @@ -0,0 +1,132 @@ +<?xml version="1.0" standalone="no"?> +<!-- + Copyright 2006 The Apache Software Foundation + + Licensed 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 V2.0//EN" "document-v20.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 + <a 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>. + </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. + </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> + There is a restriction with + XMP metadata. If an XMP metadata packet is present in the fo:declarations + element of an FO file, the values from the XMP packet are not synchronized + with the Info PDF object as is mandated by chapter 6.7.3 of the ISO document. + However, if no XMP packet is supplied FOP automatically generates an XMP + packet from the values in the Info PDF object. + </p> + <p> + Tests have been performed against jHove and Adobe Acrobat 7.0.7 (Preflight function). + </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> + If you specify "-pdfa1b" instead of "-pdf" for the output format on the + command line, support for PDF/A-1b is activated. 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><![CDATA[ +FOUserAgent userAgent = fopFactory.newFOUserAgent(); +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. + </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> + </body> +</document> |