DynamicPDF™ Merger for Java - Overview
DynamicPDF™ Merger for Java makes simple the task of merging and
adding new content to existing PDF documents. It integrates with DynamicPDF™
Generator for Java and can import PDF documents from the file system or any
java.io.FileInputStream object that supports reading. The resulting PDF document
can then have content added to it using the Generator for Java object model and can
be output to any java.io.OutputStream object, javax.servlet.ServletOutputStream
object, or directly to a file on the file system. The object model is intuitive and
easy to learn, yet very flexible allowing PDF merging, stamping, appending, form
filling and page placing, rotating and scaling. The Developer Editions offer royalty
free distribution of server and client based applications to an unlimited number of
servers or workstations.
Merger for Java is available in two licensing models. Server based licensing
is intended for developers who wish to install our software on their server or
web server. It is licensed per production server and allows an unlimited number
of installations on development workstations and servers. This licensing model
is ideal for those who wish to install our software on a limited number of servers
and allows us to offer a lower price to developers who do not intend to distribute
our software to a large number of servers or workstations.
Developer based licensing is intended for developers who wish to distribute
our software to a large number of clients. It allows one developer to develop
an unlimited number of client or server based applications that use our product
and distribute them royalty free. Our assemblies can easily be deployed with
another application using XCOPY or a setup program. Free access to our merge
modules is available.
Performance was a major consideration during the development of
Merger for Java. The techniques used to parse and manage the imported data are
extremely fast and well designed. A configurable smart cache is employed that
caches the structure and used data from an imported PDF document. Only the
portions of the document that are used are cached and when a portion becomes
unused it is removed from the cache. This results in extremely fast
Ease of Use
The Merger for Java object model is intuitive and easy to learn. Two
documents can be merged together and output to a file or OutputStream with
just two lines of code:
MergeDocument document = MergeDocument.merge("[PhysicalPath]/DocumentA.pdf", "[PhysicalPath]/DocumentB.pdf");
document.draw( "[PhysicalPath]/MyDocument.pdf" );
Documents can be appended to an instantiated MergeDocument with one line
document.append( "[PhysicalPath]/DocumentC.pdf" );
A page (or range of pages) can be appended to an instantiated MergeDocument
object with one line of code:
document.append( "[PhysicalPath]/DocumentC.pdf", 2, 1 );
The Merger for Java object model is very flexible and can be used to
achieve many PDF manipulation tasks. The MergeDocument object can be used
to merge and append PDF documents. Pages from the resulting document can then
be accessed and new content can be added to the pages.
Merger for Java also includes an ImportedPage object that can be used to add
content to an imported page using the Generator for Java object model. This object
inherits from the Generator for Java's Page
object and can have Page Elements or Custom Page Elements added to it. This is
ideal for form filling or using an existing PDF document as a template.
The included ImportedPageData
object is a Page Element object that allows an imported page to be placed on a
Generator for Java page and be scaled, shifted or rotated. This allows multiple
pages from an existing PDF to be placed onto one page. This is ideal for
pre-press work as well and using existing PDF documents as templates for
portions of a page.
Objects and methods are also included for reading the content from an imported
page and for determining the number of pages in an imported PDF document.
Generator for Java is included with Merger for Java. In fact, Merger for Java uses
Generator for Java for all PDF output. When using Merger for Java, you have access to the
Generator for Java object model including the Custom Page Element API. See the feature chart for the exact features included with each version of
Merger for Java.