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. […]
All posts by admin
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 […]
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 […]
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 […]
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 […]
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 […]
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” … > […]
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() + […]
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 […]
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 […]
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”
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 […]
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 […]
Comparing Tesseract versions 3.02 and 3.05 for accuracy & performance
The Java PDF OCR module available in Qoppa PDF libraries currently runs on Tesseract 3.02. In June 1st 2017, Tesseract 3.05 was released and as a part of our 2018 software release cycle, we looked into upgrading the OCR module to use that version. Tests were done to compare Tesseract 3.02.02 against the new 3.05.01 […]
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”); […]
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 […]
Missing / blank page content when printing from Java to specific printer drivers
Q: Sometimes, when sending a PDF document to the printer using Qoppa jPDFPrint library, some pages are printing completely blank or partially blank. Our printer is HP Universal Printing PCL 6 (v6.5.0). How can we resolve this problem? A: We’ve seen a similar issue happen on rare occasions. We do send all of the content […]
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 { // […]
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 […]
Printing images in strips and Java Bug when printing rotated images
Java has a bug when printing a rotated image (such as a deskewed scan for instance), it adds weird artifacts at the border of the images that look like black doted lines. This does not happen on rendering, only on printing. We’ve reported it to Java and it was recognized as a bug. This has […]
How can you set Java PrinterJob to Print to a File instead of a Printer
When you need to test printing processes in Java, it may be easier to print to files rather than printing to a printer. In the sample Java program below, we are finding the Microsoft XPS Document Writer, but you could find any other printer drivers installed on your machine, such as a Postscript driver or […]
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 […]
How to get printer status reason (no paper, no toner) when printing documents with Java?
Q: When printing PDF documents with Java using jPDFPrint, how can we get more information on the status of printer for instead to know if the printer is turned on or off, if the printer has paper, is out of toner, etc… A: When printing a PDF document using Qoppa’s jPDFPrint API, all the print […]
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 […]
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 […]
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 […]
Getting a PDF file to PDF Automation for markup in Web PDF Markup using php script and curl request
Q: I am looking at Qoppa’s Web PDF Markup module to use in my web application. I see that PDF file always should exist in the PDF Automation Server to be opened in the Web application using iframe. PDF files are stored in our own server and users need to open the files, manipulate them […]
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 […]
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); […]
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 […]