Creating a PDF/A standard PDF file
Using Ibex PDF Creator you can create a PDF file which conforms to the PDF/A-1b standard.
PDF/A-1b documents are intended for long term archiving and contain all the information
required for consistent reproducible display of the documents content. Reliance on external
facilities, such as fonts which are not embedded, is not permitted.
The PDF/A standard (ISO 19005-1) is not publicly available, to get a copy you must
purchase it from
iso.org. The standard contains a number
of serious errors which are corrected in a second document which is provided with the standard, so
be sure to read that also.
Metadata
Apart from some limitations on the content of the document, the main
feature of a PDF/A-1b document is the presence of metadata. This metadata is stored in the PDF
as uncompressed XML to allow for retrieval using a wide range of tools.
Each of the elements used in the metadata is explained in the PDF/A standard.
Ibex supports the <ibex:pdfa> element which is used to place PDF/A compliant metadata into the
FO file in order for Ibex to place it in the PDF file.
The FO for the example PDF/A-1b file
pdfa.fo is shown below:
<?xml version="1.0" encoding="utf-8"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:ibex="http://www.xmlpdf.com/2003/ibex/Format">
<ibex:pdfa>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="3.1-702">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<!-- PDFA ID -->
<rdf:Description rdf:about="" xmlns:pdfaid="http://www.aiim.org/pdfa/ns/id/">
<pdfaid:part>1</pdfaid:part>
<pdfaid:conformance>A</pdfaid:conformance>
</rdf:Description>
<!-- XMP -->
<rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/">
<xmp:CreateDate>2002-08-15T17:10:04Z</xmp:CreateDate>
</rdf:Description>
<!-- PDF -->
<rdf:Description rdf:about="" xmlns:pdf="http://ns.adobe.com/pdf/1.3/">
<pdf:Keywords>Testing, PDF/A</pdf:Keywords>
<!--
<pdf:Producer/>
-->
</rdf:Description>
<!-- dublin core -->
<rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:format>application/pdf</dc:format>
<dc:title>
<rdf:Alt>
<rdf:li xml:lang="x-default">dc:title - should appear in pdf info.title</rdf:li>
<rdf:li xml:lang="it-it">XMP - Piattaforma Estendibile di Metadata</rdf:li>
</rdf:Alt>
</dc:title>
<dc:creator>
<rdf:Seq>
<rdf:li>dc:creator - should appear in pdf info.author</rdf:li>
</rdf:Seq>
</dc:creator>
<dc:description>
<rdf:Alt>
<rdf:li xml:lang="x-default">dc:description - should appear in pdf info.subject</rdf:li>
</rdf:Alt>
</dc:description>
</rdf:Description>
</rdf:RDF>
</x:xmpmeta>
</ibex:pdfa>
<fo:layout-master-set>
<fo:simple-page-master master-name="FirstPage" page-width="8.5in" page-height="8in">
<fo:region-body margin="2cm"/>
<fo:region-before extent="15mm" display-align="after" padding="0mm 2in 0mm 2.5in" />
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="FirstPage">
<fo:flow flow-name="xsl-region-body" font="12pt arial">
<fo:block>
pdf-a test document (Z)
</fo:block>
<fo:block space-before="1cm">
check with
<fo:inline text-decoration="underline">A</fo:inline>dvanced ->
Prefli<fo:inline text-decoration="underline">g</fo:inline>ht ->
PDF/A compliance -> Verify compliance with PDF/A-1b
</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
Processing
The metadata from the <ibex:pdfa> element is inserted into the PDF file. Elements which
are missing from the metadata but which are required for compliance (such as xmp:CreateDate) will
be automatically added.
Compliance
If you have a copy of Acrobat Professional you can verify the compliance of a PDF file
using the Preflight tool, using the menu options Advanced->Preflight->PDF/A complance->Verify compliance
with PDF/A-1b as shown here:
The result of executing the compliance check should look like this:
The level of compliance tested by Acrobat changed from Acrobat 8 to Acrobat 9. In Acrobat 9 a color
space is required which was not required previously.
Downloads
Downloads for this example are:
The FO file
pdfa.fo.