Latest Articles

Merge content from multiple pages into one page

Sometimes it’s necessary to customize the content of a document on the fly from templates. There’s various different ways this can be done, but one way is to have a template with different content on each page of a document and then based on certain criteria (i.e. content from page 1, 5, 8 is required […]

Programmatically determine the content area of a page in a PDF

It’s easy to determine the size of a page by using the PageHeight and PageWidth, but it’s a little more difficult to determine the rectangular content area of a page. There are functions in the library for returning the text coordinates such as GetPageText and there’s functions for determining the coordinates of images, but there’s […]

Issue with Ricoh printers where PDFs come out in black and white instead of color

Debenu Quick PDF Library uses the standard Windows DEVMODE structure for printing which is used by many other programs as well. Unfortunately the printer driver manufacturers don’t use the values specified in the DEVMODE structure and instead use custom undocumented values. This means that the SetupCustomPrinter function works for many drivers but not every driver. […]

Extract text from a defined rectangular area on a page

Debenu Quick PDF Library includes a range of functionality for extracting text from PDF files, but usually it’s for extract text from an entire page. The extract functions which include “area” in the name let you specify a rectangular area from which you wish to extract text. The key functions for this using regular memory […]

Programmatically impose multiple pages on one page (imposition)

There is not a single “imposition” function in Debenu Quick PDF Library but it’s easy to use the CapturePage and DrawCapturedPage functions to do the imposition. There is some sample code below that demonstrates how to take a few different PDFs, merge them together, and then impose each page onto one page in a new […]

Is printing PostScript to PDF supported?

No, the Postscipt functions in Debenu Quick PDF Library such as DrawPostScriptXObject will only embed existing postscript commands into a PDF. This is mainly done for printers. Most, if not all PDF viewers do not contain any Postscript rendering functionality so you page may be technically correct but there is not viewer that can render it. […]

Get embedded image coordinates from PDF files

Debenu Quick PDF Library lets you analyze, extract and replace embedded images in PDF files using the extensive image handling functions. The GetPageImageList function returns an ImageListID which you can use in the GetImageListItemDblProperty function. With this function you can get the coordinates for each image in the image list. The GetImageListItemIntProperty function useful for […]

Create links to dial a phone from a PDF link on mobile devices

In a recent post titled Dial a Phone from a PDF Link on Mobile Devices on the Acrobat For Legal Professionals blog it was demonstrated how you can create a web link in a PDF that when clicked on an mobile device would dial the phone number. Well it is easy to add these links programmatically […]

Programmatically convert EMF to PDF

The ImportEMFFromFile function is designed specifically for importing EMF and WMF file formats. Delphi sample code provided below demonstrates how to use this function. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 procedure TForm2.btnImportEMFFromFileClick(Sender: TObject); var FileName: string; […]

Is Debenu Quick PDF Library thread-safe?

Usually when the phrase “thread safe” is used it means that the same instance of the library can be accessed by different threads at the same time. This means that Debenu Quick PDF Library is not thread safe because a single instance of Debenu Quick PDF Library can only be accessed by the thread that […]