PDFreactor:
3.0.3311 (2008-07-07)
edit-on Pro:
5.2.221 (2008-06-23)
edit-on JavaBean SDK:
5.3.310 (2008-10-24)
TYPO3 Extension:
2.0.2 (2007-06-14)
RealObjects PDFreactor offers a modular and open architecture, is based on the latest W3C standards and written in 100% Java. You can either use the Command Line Interface or easily integrate PDFreactor into your Servlet, EJB or Web Service by using the comprehensive Java API. For more information see also the integration manual which is available in PDF and HTML format. A PDFreactor Enterprise Edition with direct support for J2EE Application Servers (e.g. Sun Java Application Server, BEA WebLogic, IBM WebSphere) will be available soon.
The typical integration scenario for PDFreactor is:
Server-side PDF creation Using PDFreactor as part of larger host applications (e.g. ERP, database, e-Commerce) on a Java Web application server in order to print or stream PDF documents - generated from XML or XHTML/HTML source - over the Web.
What is simplest way to integrate PDFreactor using the Java API?
PDFreactor can be integrated with just these few lines of Java code:
InputSource inputSource = new InputSource("http://www.realobjects.com/");OutputStream outputStream = new FileOutputStream("realobjects.pdf");
PDFreactor pdfReactor = new PDFreactor();
// configuration settings
pdfReactor.setAddLinks(true);
pdfReactor.setAddBookmarks(true);
// render the PDF document
pdfReactor.renderDocument(inputSource, outputStream);
See also the chapter Introducing the Java lib in the PDFreactor Manual.
The block diagram below illustrates the process of creating a PDF from a XML or XHTML/HTML document using PDFreactor. In general it can be divided into five distinct steps:
Step 1: The host application feeds the XML, XHTML or HTML input as well as the CSS style sheet(s), which specifies styles and layouts of the final PDF document. To achieve more advanced tasks, e.g. to calculate the total from values of a XML-based invoice, the host application could also feed XSLT style sheet(s), which will automatically be processed (see next step).
Step 2: The content preprocessing again can be divided into four main parts: encoding detection, cleanup, parsing and XSLT processing. HTML or legacy HTML web content must be converted to XHTML first. This is automatically done by one of the built-in cleanup processes. For the XSL transformations PDFreactor uses the default Java XSLT processor, which can be set by the integrator through the corresponding setting in the Java VM's system properties.
Step 3: The XMLreactor Core Engine has three main functions: a) style specific processing: assembling language specific style information for XHTML or generic XML, b) styled DOM creation: style computation for each XML element and creation of a styled DOM, c) main layout engine: individually positioning each XML element depending upon its computed style.
Step 4: The PDF writer transforms the layout Information into PDF objects and assembles those into a document. It also resolves bookmarks as well as internal and external links within the document.
Step 5: The PDF output can be displayed on the Web, returned to a Web client, used in mailings or streamed to printers and other devices.
(click on image to enlarge)