Server-Side PDF there’s more to PDF than just printing documents
Leonard Rosenthol Senior Software Engineer
Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. Overview You are here because...
· You’re currently working with PDF, but on the · PDF Creation client side · PDF Manipulation · You’re interested in doing things server side with · PDF Data Extraction PDF files · PDF Forms · You’re already doing some server side PDF · PDF Rendering & Printing solutions but looking for others · Libraries · You were already awake and had to find something to kill time · You’re a friend of mine, and wanted to heckle
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
What is “Server-side How I do things PDF”?
· You already have a draft version of this document in your proceedings, so you shouldn’t need to take · too many notes Any program that works with PDF documents and runs in an unattended, most likely batch, mode. · A copy of the final document is on Digital · Application’s website (
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. PDF Creation Postscript
· Postscript · HTML/XML · Ghostscript · Images · PStill · “Office” documents · Distiller Server · TeX
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
Ghostscript PStill
Aladdin Enterprises Frank Siegert
· Supports PDF 1.3 · Supports PDF 1.3 · Supports standard PDFMarks · Supports standard as well as custom PDFMarks · Available for Mac OS, Windows, Unix, etc. · Available for Windows, Unix, etc. · Open Source · Free for non-commercial usage · Ships with most (all?) Linux distributions
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. Distiller Server HTML/XML
Adobe Systems
· html2ps · HTMLDoc · It’s the “standard” · activePDF WebGrabber · Not currently available · SVG2PDF · but announced for Windows, Linux & Solaris · FOP · XEP
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
html2ps HTMLDoc
Jan Kärrman Easy Software
· Written in Perl · Available for Mac OS, Windows, Unix, etc. · Open Source · command line & GUI versions · must compile/build yourself · Open Source · Supports HTML4, including CSS · Only supports HTML 3.2 (+ some extensions) · allows for global CSS overrides · Lots of special formatting options · Requires Ghostscript
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. activePDF WebGrabber SVG2PDF
Active4 Digital Applications, Inc.
· Windows (COM) Only · Available for Mac OS and Windows · Only supports HTML 3.2 · Technology Preview
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
FOP XEP
apache.org RenderX.com
· XML/XSL Formatting Objects (FO’s) -> PDF · XML/XSL Formatting Objects (FO’s) -> PDF · Written in Java · Written in Java · Open Source · Source is available · must compile/build yourself · must compile/build yourself · Under development, limited functionality · Unsupported - “evaluation only”
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. Images TIFF2PDF
FastIO Systems
· TIFF2PDF · Trans-TIFF · Convert single & multi-page TIFF’s to PDF · ImageMagick · Windows & Unix · Image Alchemy · Source is available · ImagePDF · PDF*It
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
Trans-TIFF ImageMagick
ePage Solutions
· Convert ANY image (or set of images) to PDF · Windows only · Mac OS, Windows, Unix, etc. · Does NOT support multi-page TIFF’s · Open Source · Requires Ghostscript
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. Image Alchemy ImagePDF
Handmade Software Apex
· Convert TIFF, BMP, JPEG & PNG to PDF · Convert ANY image (or set of images) to PDF · Windows & Linux · Windows, Unix, etc. · Available with COM, Java, C or command line API’s
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
PDF*It “Office” documents
DocuLex
· Win2PDF · PDFDriver · Scan documents direct to PDF · PDFConverter · Includes OCR capabilities · activePDF Doc Converter · Windows only · PrintToPDF · Roundabout options
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. Win2PDF PDFDriver
Dane Prairie ZEON Corporation
· Supports any application that can print! · Supports any application that can print! · Windows only · Windows only · Full support for CJKV localizations · Adds watermarking & security options
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
activePDF Doc PDFConverter Converter Amyuni Active4
· Supports MSOffice (‘97 & 2000) and WordPerfect · Supports any application that can print! · includes bookmarking, TOC, hyperlinks, etc. · Windows only · Windows only · Can combine multiple jobs into a single PDF · Postscript based! · Adds encryption & linearization options
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. PrintToPDF Roundabout options
James W. Walker or how to convert w/o printing?
· Supports any application that can print! · Mac OS only · Convert to HTML using wvHTML then to PDF · Supports CJKV · Open with Abiword, print to PS, “distill” · Supports auto-conversion of URL’s, bookmarks, and more
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
TeX PDFTeX
· Extended version of TeX for producing PDF documents · PDFTeX · Available for Mac OS, Windows, Unix, etc. · Lout · Open source · Includes tools for specifying PDF specific options · font embedding, hyperlinks, annotations, bookmarks, and more!
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. Lout PDF Manipulation
· AppendPDF/AppendPDF Pro · Layout Changer · TeX-like markup language with PDF output · Glance PDFTools · Windows and Unix only · Ari’s PDF Splitter · Open Source · StampPDFBatch · Support for non-Roman languages · Pitstop Server · AudienceOne
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
AppendPDF/AppendPDF Layout Changer Pro Digital Applications GDykes
· Available for Mac OS, Windows, and Unix · Create new PDF documents from portions (or the · Available for Mac OS and Windows entirety) of other PDF documents. · Create new PDF documents from portions (or the · Have cover pages, TOC, bookmarks, etc. all entirety) of other PDF documents. generated automatically · Basic imposition capabilities by specifying · Convert pages to a “2-up” layout “layout” of multiple existing pages onto a new · Apply page numbers, watermarking, images, etc. page to newly created documents
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. Glance PDFTools Ari’s PDF Splitter
Glance Dionis
· Available for Windows only · Create new PDF documents from portions (or the · Available for Mac OS and Windows entirety) of other PDF documents. · Create new documents by splitting existing · Have cover pages, TOC, bookmarks, etc. all documents up generated automatically · Basic image watermarking of documents
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
StampPDFBatch Pitstop Server
Digital Applications Enfocus
· Available for Mac OS and Windows · Available for Mac OS, Windows, and Unix · Preflighting and Correction · Adds new “permanent” content (as opposed to · Media Size, Font Embedding and Usage, Spot to CMYK Color annotations) to existing PDF documents Conversion, Black Text Overprint and White Text Knock-Out · text in any Type 1 font, in any color or drawing mode & rotation · Modify existing content · watermarks, headers & footers, etc. · remove items, change attributes (font, colors, object styles) · JPEG images · Add images
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. AudienceOne PDF Data Extraction
Cardiff Software
· Xpdf Tools · Customized solutions for PDF creation & · Ghostscript manipulation · Argus Server · business cards, information delivery, etc. · PDFDecoder · WinPDFData
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
Xpdf Tools Ghostscript
FooLabs Aladdin Enterprises
· Available for Mac OS, Windows, Unix, etc. · Open Source · Available for Mac OS, Windows, Unix, etc. · Command line tools for · Open Source · document information · Command line & GUI tools for · text extraction · text extraction · image extraction · PDF->PS · PDF->PS · PDF->HTML
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. Argus Server PDFDecoder
Iceni LimitPoint Software
· Available for Windows and Solaris · Command line tool for · Available for Mac OS only · text extraction · Scriptable application for · image extraction · document information · PDF->XML · text extraction · PDF->HTML
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
WinPDFData PDF Forms
SANFACE
· FDFMerge · Written in Perl · eFN Technology · extracts document info · Office Courier · Open Source · PDF+Forms
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. FDFMerge eFN Technology
Digital Applications eForms NOW!
· Available for Mac OS, Windows, Unix, etc. · Merges data from an FDF file into a PDF document · supports all standard field types including buttons, menus & lists · Available for Windows only · (optionally) “Flattens” field data into raw PDF · Merges data directly from your database into a content PDF · allows them to be more easily manipulated · Works with any database back-end · allows for use of ANY Type 1 font · Only supports text fields · allows for additional styling & formatting options · allows them to be read by any PDF viewer (since form support is no longer required)
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
Office Courier PDF+Forms
Paper2Net Cardiff
· · Available for Windows and Solaris Available for Windows only · · Based on Java Servlet technology Includes a GUI form designer that outputs to PDF · Adds “intelligence” to standard PDF forms · and also generates information for the “backend” · · Integrates with any JDBC-compatible database Server software reintegrates (merges) FDF data into PDF documents · Works with standard FDF files, no “merging” · also performs additional validation checking
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. PDF Rendering & ImageMagick Printing
· ImageMagick · Available for Mac OS, Windows, Unix, etc. · jPDF · Open Source · Xpdf · Uses Ghostscript to render PDF, then converts to · Ghostscript any image format · DocuCom PDFReader & PDFRip
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
jPDF Xpdf
RealItaly FooLabs
· Available for Mac OS, Unix, etc. · Open Source · Written in Java (requires Java2) · GUI for displaying PDF’s · · Designed for use on web pages includes printing support · usable as a Netscape/Unix plug-in · Development seems to have halted? · command line tools for rendering pages to raster images · batch printing on Unix by PDF->PS->lpr
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. DocuCom PDFReader & Ghostscript PDFRip Aladdin Enterprises DocuCom
· Available for Mac OS, Windows, Unix, etc. · Open Source · Available for Windows and Unix · GUI for displaying PDF’s · GUI for displaying PDF’s · works by converting PDF->PS, then rendering the PS · includes printing support · includes printing support · command line tools for rendering pages to raster · command line tools for rendering pages to raster images images · command line tools for direct printing (Unix only?) · batch printing on Unix by PDF->PS->lpr
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
Libraries PDFlib
Thomas Merz
· · PDFlib Pros · available for all major platforms and languages · ClibPDF · Mac OS, Windows, Unix, AS/400 · retepPDF · C, C++, VB/COM, Java, Perl, Python & TCL · iText · thread safe · Etymon™ PJ · supports all major features of PDF 1.3 · Unicode-savvy (bookmarks, annotations & content) · PDFLibrary · source is available (except ActiveX version) · activePDF Toolkit · Cons · PDFCore · creation only · SPDF · only supports the Base14 fonts + Base 7 CJK (w/o external files) · Adobe PDF Library Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. ClibPDF retepPDF
FastIO Systems retep/Peter Mount
· Pros · Pros · available for all major platforms · Written in Java · Mac OS, Windows, Unix · Directly integrates with Java printing API’s · built-in support for 48 Roman + 7 CJKV fonts · open source · high level “graphing” primitives · free · thread safe · Cons · supports all major features of PDF 1.3 · Written in Java · source is available · creation only · Cons · limited font support · creation only · no support for images · only available as a C API
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
iText Etymon™ PJ
Bruno Lowagie Etymon
· Pros · Pros · Written in Java · Written in Java · Can read & modify existing PDFs · open source · full source available · free · Cons · Cons · Written in Java · Written in Java · hasn’t been updated in a while, support requires $$ · creation only · limited font support · only supports text (no images, etc.) · no support for images
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. PDFLibrary activePDF Toolkit
Glance Active4
· Pros · Pros · Available for Windows & Unix · Integrates well with IIS, ASP, and VB · High level “object model” access to PDF documents · High level “object model” access to PDF documents · Source is available · Inexpensive · Cons · Cons · C++ API only · Available only as Windows ActiveX Control · Only supports PDF <= 1.2 · Doesn’t support modifying existing files · Doesn’t support modifying existing files · only reading into memory and writing changes to a new file · only reading into memory and writing changes to a new file · Limited functionality · No “low level” access routines · form filling, new text & image content, info fields · No “low level” access routines
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
PDFCore SPDF
Zeon Digital Applications
· Pros · Available for Mac OS, Windows, Unix and IBM System 390 · Pros · Uses the same API’s as Adobe PDFL & Acrobat SDK · New version claims to match Adobe’s APIs · Source available · New version claims to support PDF 1.3 · Includes a few extras · Great support for CJKV · PDF rendering · Cons · PDF -> PS/EPS · Not currently available! · Text Extraction · Windows Only · FDF Parser · Thread safe, no memory leaks · Debugging version tracks client object allocation/usage · Cons · No support for PDEdit calls Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc. Adobe PDF Library Conclusion/Wrap Up
Adobe Systems
· Pros · · It’s the “standard”! As you can see there a lot of things that can be · Includes a few extras done with PDF files “server-side”, and a number of · PDF rendering available tools for doing them. · PDF -> PS/EPS · and Adobe has NO interest or experience in this market! · Text Extraction · There are other areas that I didn’t touch on (eg. · Cons searching & indexing) which are important in · Not currently available! working with PDFs and servers · Available only for Mac OS and Windows · Go out there and do cool stuff on your servers! · FDF support requires a separate library · Not thread safe · Leaks memory
Copyright©1999-2000 Digital Applications, Inc. Copyright©1999-2000 Digital Applications, Inc.
Q & A
Copyright©1999-2000 Digital Applications, Inc.