CUPS is a standards-based printing system for Mac OS X and other Unix-like operating systems. It provides the System V and Berkeley command line interfaces, and uses the Internet Printing Protocol ("IPP") as the basis for managing print jobs and queues. The Line Printer Daemon (LPD) Server Message Block (SMB), and AppSocket (a.k.a. JetDirect) protocols are also supported with reduced functionality. CUPS adds network printer browsing and PostScript Printer Description ("PPD") based printing options to support real world printing.
jPDFWriter is a Java class library to create PDF documents directly from Java programs without having to install any third party drivers or software. It emulates the standard Java classes to print and draw graphics to reduce the learning curve when using the library and reuse existing code. It can create PDF files in two ways: PDF files can be created directly using jPDFWriter's very simple API (simply create a PDFDocument object, create as many PDFPage objects as necessary, draw strings, graphics, or any other elements supported by Graphics2D to the pages, and save the document), or jPDFWriter can extend the standard Java PrinterJob to create PDF files as though printing to a physical printer. This allows reuse of existing printing code and lets an application decide, at runtime, whether to send the output to a printer or to a PDF file. PDF files can be saved to files on a disk, written to a java.io.OutputStream, or written directly to a javax.servlet.ServletOutputStream to show in a browser when working within a J2EE application server. jPDFWriter is written entirely in Java, so application portability and operating system independence are not compromised.
PDFTextStream is a PDF text and metadata extraction library available for Java and .NET. It supports all versions of the PDF document specification (including v1.7, used by Acrobat 8, 9, and X), extraction of text encoded using double-byte character sets (including Chinese, Japanese, and Korean), decryption of documents encrypted using 40-bit, 128-bit, 256-bit, and variable bit length ciphers, and extraction of all document metadata provided by PDF documents (including form data, bookmarks, and annotations). Easy integration with Jakarta Lucene is included, as well as interactive form update capability.
PDFtk Server is a simple commandline tool for doing everyday things with PDF documents. You can use it to merge PDF documents or collate PDF page scans, split PDF pages into a new document, rotate PDF documents or pages, decrypt input as necessary (password required), encrypt output as desired, fill PDF forms with X/FDF data and/or flatten forms, generate FDF data stencils from PDF forms, apply a background watermark or a foreground stamp, report PDF metrics, bookmarks, and metadata, add/update PDF bookmarks or metadata, attach files to PDF pages or the PDF document, unpack PDF attachments, burst a PDF document into single pages, uncompress and re-compress page streams, and repair corrupted PDF files (where possible).
PDFreactor is a formatting processor to convert HTML and XML to PDF. It uses Cascading Style Sheets (CSS) to define page layout and styles. It allows you to dynamically generate PDF documents such as invoices, delivery notes, shipping documents, or print versions of Web content on-the-fly. Vector graphics (SVG), barcodes, MathML, XSLT, and CMYK colors are supported. All common J2EE application servers are supported. Complete .NET, PHP, Perl, Python, and Ruby APIs are included. Direct integration into automatic build processes using Apache Ant is also possible.
jPDFProcess is a Java library to work with PDF documents which can be used to deliver customized PDF content to your users or to process and manipulate incoming PDF content. The library has a simple interface to work with PDF documents and is designed to be integrated easily and seamlessly into your PDF document workflow. jPDFProcess provides the functionality found in many other Qoppa Software libraries, including printing, setting permissions and security, creating and assembling documents, digital signing, working with form fields, extracting text, and more. It can work with PDF documents from files, URLs, and input streams, and can save documents to files and output streams, so it can serve documents from a J2EE application directly to a client browser without any temporary files. jPDFProcess is platform-independent, and can be used in any environment which supports Java.