Setup the PAS REST Service to use Alfresco Document Storage

Starting with the 2018R2 release the PAS REST module comes with built in integration with the Alfresco Document Management server. This integration allows the PAS REST service to provide permission based access at the user level to documents. Note: the Alfresco storage integration is only available for the PAS REST services NOT the Automation Server. […]

Read More

qPDF Toolkit Version 6

qPDF Toolkit Change Log / Release History Download qPDF Toolkit Version 6.11 – 12/02/2020 QT-49 – Fix an issue with our text extraction where sometimes extra spaces were added between letters within words Version 6.10 – 02/12/2020 QT-45 – Substitute Helvetica® in Form fields appearance when encoding is null or only subset of font available […]

Read More

v2018R1 jOfficeConvert Build Notes

Below are the build notes for v2018R1 Fix Branch / Minor Releases for Qoppa’s PDF Library jOfficeConvert. Version v2018R1.18 – April 26 2023 Publish all libraries with homogenized version number Update all code signing certificates Include all fixes and improvements to underlying parsing engine Version v2018R1.09 – June 28 2019 JOFFICE-474 – Incorrect table conversion […]

Read More

v2018R1 PDF Automation Server Release Notes

Below are the release notes for v2018R1 for Qoppa’s PDF Automation Server. Download PDF Automation Server v2018R1 Version 2018R1.00 – August 07 2018 PAS-380 – Highlights are not showing correctly on Print Preview PAS-374 – Get text content from contents-richtext in XFDF annotations PAS-373 –  HTML Viewer – Total pages is sometimes showing as 0 PAS-372 –  Update to […]

Read More

v2018R1 PDF Library & Component Build Notes

Below are the build notes for v2018R1 Fix Branch / Minor Releases for the following Qoppa PDF libraries and components. Java PDF Components: jPDFViewer, jPDFNotes, jPDFEditor Java PDF Libraries deriving from jPDFProcess: jPDFProcess jPDFAssemble, jPDFFields, jPDFImages, jPDFPrint, jPDFSecure, jPDFText Download 2018R1 Builds Version v2018R1.18 – April 26 2023 Publish all libraries with homogenized version number Update all code signing […]

Read More

Create, Convert and Manipulate PDFs using jRuby and Java PDF Library

Here is a jRuby script sample showing how to use Qoppa’s PDF library jPDFProcess to add text to an existing PDF document and write “Hello World” on the document. Using the flexible Java PDF library jPDProcess, any of the following functions could be performed: Add text and images to a PDF, print a PDF, convert […]

Read More

IDs and class names in SVG Element Structure

Starting with v2018R1, when converting from PDF to SVG using jPDFWeb, the library will used the following standardized names for IDs and class names in the SVG output for clarity. The new SVG element structure looks like this: <svg id=”qoppa_document” … > # Top level SVG element that holds the document <g id=”qoppa_viewxform” … > […]

Read More

List image properties of images contained in a PDF (color space, compression, width, height, etc…)

This sample code uses Qoppa’s PDF library jPDFProcess to list the properties of all images present in a PDF document such as image width, height, compression, color space, num components and bits per component: PDFDocument pdfDoc = new PDFDocument ("c:/test20.pdf", null); List<? extends IImageResource> imageList = pdfDoc.getResourceManager().listImages(); for (IImageResource image : imageList) { System.out.println(image.getWidth() + […]

Read More

Sample Postman request to add a new page to a PDF

Here is a sample Postman sample showing how to add a new page to a PDF using Qoppa PDF REST API. The width and height are defined in points at 72 DPI so an 8.5 inches x 11 inches page are defined as 612 x 792. It’s a form data that is being sent with one […]

Read More

Getting started with Qoppa PDF REST API on Postman

Here is a Postman file containing sample REST calls to Qoppa PDF REST API to create, convert and manipulate PDF documents. This is a good way to get started with our REST API. After installing Qoppa PDF Automation Server (PAS) on your own server, just import this file into Postman, set up the parameter options […]

Read More

Curl request to insert a new page into a PDF

You can use Curl to send requests to QOPPA PDF REST API. Here’s a sample curl request for adding a new page to an existing PDF (in this case the document is “alphabets.pdf” and is present at the root of the server: curl -X POST http://host:port/qoppapdf/v1/documents/alphabets.pdf/pages -H “Content-Type:multipart/form-data” -F “pageAction={\”NewPageAction\”: {}};type=application/json”

Read More

Getting started with Qoppa PDF REST API on JMeter

Here is a JMeter file containing sample REST calls to Qoppa PDF REST API to create, convert and manipulate PDF documents. This is a good way to get started with our REST API. After installing Qoppa PDF Automation Server (PAS) on your own server, just import this file into jMeter, set up the parameter options […]

Read More

Performance issues when rendering JPEG2000 images

We’ve made a lot of improvements to our image decompression algorithms over the last few years. This allows Qoppa’s PDF libraries and components to open, render and print all types of images (JBIG2, CCIT Fax, JPEG, …) contained in PDF documents very reliably and in a very efficient way. Unfortunately, there is still a hurdle […]

Read More

Customizing PDF annotation author name per user in Qoppa PDF components

Q: When a user annotates a PDF using jPDFNotes, it seems that the author name associated with the comments is the user name from the operating system. How can I pass a different name? A: By default, jPDFNotes uses the user name as reported by the system, but you can override this by using: AnnotationTools.setDefaultAuthor(“author name”);AnnotationTools.setDefaultAuthor(“author name”); […]

Read More

Customizing separators when extracting words in a PDF using jPDFText

Q: I need to extract words and position in a PDF. I am using getWordsWithPositions(int pageIndex) method in jPDFText. Having each word and its bounding quadrilateral is exactly what I need. However, I also need punctuation marks (ie ,;: . ) to be included as part of the words with bounding information. Is there a […]

Read More

Find the first Goto page action bookmark in a PDF and go to that page

This sample uses QPDFNotesView, Qoppa’s Android PDF viewer & annotator. It loops through the bookmarks contained in a PDF document, finds the first GotoPage action contained in the document’s bookmark tree and if any and go to that page. private void goToFirstBookmark() { PDFDocument doc = notes.getDocument(); if (doc != null) { try { // […]

Read More

Preserving text as selectable characters when creating PDF from RTF

Q: We use com.qoppa.pdfWriter.PDFPrinterJob class in Qoppa’s jPDFWriter library to convert an RTF document to PDF. The converted PDF does not seem to contain standard text content. The size of the output PDF (220 KB) is larger than the original RTF (40KB). Is there any way to convert to real text that can be selected […]

Read More

Sample Java Program to Print to a given printer

This is a sample Java program to check Java printer connections on your machine. It will print a page with a yellow image on it to the first print service found. package test;   import java.awt.Color; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.awt.print.PageFormat; import java.awt.print.Printable; import java.awt.print.PrinterException; import java.awt.print.PrinterJob; import javax.print.PrintService;   public class […]

Read More

Difference between REST API and Workflow Modules in PAS

Q: What is the difference between the REST API Module in PDF Automation Server and the Workflow Module? PDF Automation Server (PAS) REST API and Workflow modules can both be used to automate PDF document processes on the server side, each in their own different way. Customers can choose between these two modules the better […]

Read More

How to install PDF Automation Server on Amazon EC2

Q: How can I install PDF Automation Server on Amazon AWS EC2 server through AMI? A: The AMI that we publish through the Amazon AWS marketplace is a standard AMI, there are no special instructions necessary it to deploy. To deploy standard AMIs, please refer to the documentation from Amazon. If you already have an […]

Read More

Customize the Toolbar on PAS HTML5 Markup Viewer

PDF Automation Server comes packaged with a ready to go HTML5 PDF Viewer that uses the REST server to view/modify documents directly in the browser with no plug-ins required. The HTML5 viewer can be added to any page with minimal coding by simply creating an iframe element on the page with the path to the document […]

Read More

Crop pages in a PDF using Java PDF library jPDFProcess

This is a sample Java program showing how to crop a page in Java using Qoppa’s PDF library jPDFProcess. This small snippet shows how to open a PDF, get the first page, set a new crop box and save the cropped PDF to a new file name.   // Open PDF file PDFDocument pdfDoc = new […]

Read More

Print PDF to Printer File Format (PCL, PRL, or PS) using Java

Here is a simple Java program showing how to use jPDFPrint to print a PDF document to a printer driver file format. In this example, the printer outputs a pcl file (Printer Command Language) but printers might output a prn file or postcript file. // Load the PDF document PDFPrint pdfPrint = new PDFPrint("input.pdf", null); […]

Read More

How to remove links in a PDF document

Here is a sample Java program showing how to remove all link annotations present in a PDF document using Qoppa’s PDF library jPDFProcess: // Load PDF document PDFDocument pdfDoc = new PDFDocument ("C:\\myfolder\\input.pdf", null); int pageCount = pdfDoc.getPageCount(); // loop through pages for (int i = 0; i < pageCount; i++) { try { PDFPage […]

Read More