PDF2 with FOP

Using the PDF2 plugin with FOP

Note: These instructions apply to DITA-OT 1.4.2.1 and earlier. Version 1.4.3 of the toolkit ships with this PDF plugin and allows use of FOP natively.

The PDF2 plugin was originally designed by Idiom Technologies to work with the XEP formatting engine from RenderX. With a little work, it is possible to make it work with Apache FOP.

See Plans for the DITA Open Toolkit PDF2 Plug-in.

Information to be created based on original work here: http://tech.groups.yahoo.com/group/dita-users/message/8222

This is still being edited. These instructions are incomplete!

Steps to use the plug-in:

  1. Download and install DITA-OT (for this example, in C:\DITA-OT1.4.2.1) - get the Full Easy Install package
  2. Download and install PDF2 (FO) plugin in C:\DITA-OT1.4.2.1\demo\
  3. Download and install FOP (in this example, installing fop 0.94 in c:\fop-0.94)
  4. Create a c:\DITA-OT1.4.2.1\demo\fo\lib\xep\lib directory and copy saxon.jar there (I have only tried this with saxon 6.5.5)
  5. Edit c:\dita-ot1.4.2.1\demo\fo\build.xml with these changes:
    <!-- configure FO engines -->
    <property name="pdf.formatter" value="fop"/>
    <property name="fop.home" value="c:/fop-0.94"/>
    <condition property="use.xep.pdf.formatter">
    <equals arg1="${pdf.formatter}" arg2="xep"/>
    </condition>
    <condition property="use.fop.pdf.formatter">
    <equals arg1="${pdf.formatter}" arg2="fop"/>
    </condition>
  6. Edit c:\DITA-OT1.4.2.1\demo\fo\cfg\fo\attrs\commons-attr.xsl and comment out the addition of rx:linkback to the FO output:
    <!-- <xsl:attribute name="rx:link-back">true</xsl:attribute> -->
    This is the quick and dirty way; this should be parameterized to use both XEP and FOP.
  7. Open a command prompt and change to the C:\DITA-OT1.4.2.1 directory
  8. Run startcmd
  9. In the DITA-OT prompt window, run:
    ant -f integrator.xml
XML.org Focus Areas: BPEL | DITA | ebXML | IDtrust | OpenDocument | SAML | UBL | UDDI
OASIS sites: OASIS | Cover Pages | XML.org | AMQP | CGM Open | eGov | Emergency | IDtrust | LegalXML | Open CSA | OSLC | WS-I