Blog articles

Long-Term Validation of Signatures

by Mike Bremford

One of the main new features in release 2.18.2 of our PDF Library was support for "Long Term Validation" of signatures. The purpose of these isn't immediately clear - read on for details.

Big Faceless releases PDF Library 2.17.1

by Mike Bremford

BFO have just released a new update to their PDF Library, the first for a few months. Here we describe a few features that are in the new release in a bit more detail. Integrating Logging messages with the viewer Our logging framework is a thin wrapper around whichever of Log4J or java.util.logging is configured, which means it's essentially a functional interface. Lo...

New features in the PDF Library 2.15

by Mike Bremford

It's been 4 months since our last PDF API release, what does it have in store? Besides changes to the page list, there are two major new areas: PDF/A-2 and PDF/A-3 support has been added The Swing classes now support linearized loading New PDF/A revisions We're seeing more and more companies adopt ISO 19005, aka PDF/A, and we're pleased to have added support fo...

Converting PDFs to bitmap PDFs

by Mike Bremford

There are many situations where a PDF has to be "rasterized" - the contents of each page turned into a bitmap image - such as when a PDF is being converted to PDF/A and the page contents cannot be repaired. This article shows how to do it efficiently.

BFO releases Java PDF Library 2.11.24

by Mike Bremford

We've put out our first PDF library in 5 months, and although there are a lot of small changes there are very few headline grabbers. Perhaps the most interesting is the ability to restrict operations in the viewer with permissions - here we go into that framework in a little more detail.

The Firefox pdf.js Viewer

by Mike Bremford

We've been getting a few emails asking about the new "pdf.js" viewer in Firefox, and why some of our documents don't render correctly in that viewer. Read on to find out why.

Odds and Ends: PDF Valentines Cards

by Mike Bremford

This challenge was too good to resist. We've neglected to make our cards PDF/A compliant, which you are welcome to interpret as a commentary on the impermanence of romantic love, or perhaps it would have just taken longer to do. Either way we hope you had a happy Hallmark day. The code is below, and if you want to generate your own cards for someone you love (or even someone you don't) you ca...

XFA Forms

by Mike Bremford

The "P" in PDF stands for "Portable", and PDF is now an ISO Specification. So you could be forgiven for being surprised when you learn about XFA. We're asked about it a lot so what follows is a bit of a FAQ. What is XFA XFA stands for "XML Forms Architecture", and it's been part of Acrobat since Acrobat 6. It's an XML syntax which defines the document (the whole document, not just the fo...

Barcode Fields

by Mike Bremford

Acrobat added dynamically updated barcode fields in Acrobat 7, but they haven't been documented until now, in the upcoming PDF 2.0 specification. This article shows you how to use them to make data extraction from printed forms a lot easier.

Handwritten Digital Signatures

by Mike Bremford

A new feature in 2.11.25 of the PDF Library is the ability to capture handwritten signatures from an iPad, iPhone or Android tablet. Useful? Maybe not, but it is kinda neat as you can see in the video.

Roll your own applet: the definitive guide

by Mike Bremford

We've covered them before, but Applets - a technology launched in 1996 with Java 1.0 - just keep changing. What follows is the definitive, step-by-step guide to compiling our viewer as an Applet useful as of mid-2012.

Reader Extensions, and why they break

by Mike Bremford

Usually on this blog we cover details of things you can do with our PDF API, so it's a bit of a departure to cover something we can't. Read on to learn about Reader Extensions and the limitations they imply.

Using Java to Print PDF Documents

by Jonathan Cookson

Printing PDFs is easy with the Java PDF API. In this article we go through the Java Print API at a high level, then guide you through the details in case things go wrong.

Extending the PDF Viewer - Part 2

by Mike Bremford

In the second part of our "extending the viewer" series, we show you how to go all the way - we create a new "Custom Stamp" feature, then show you how to compile it, bundle it with the Jar than prepare the Jar in the most efficient way for applet delivery.

PDF/A Standard - Long Term Archiving Solutions

by Dan Wilson

PDF/A is the ISO standard for the digital preservation and long term archiving of electronic documents. The ability to search documents, include digitial signatures and reduced file size is resulting in both Governments and corporations adopting the PDF/A standard.

Using Acrobat JavaScript

by Mike Bremford

PDF documents can contain JavaScript, which opens up all sorts of possibilities - not all of which are gaping security holes. Here's an article showing how to use it in PDF - both how to embed it from the Report Generator, and how to run it in the Viewer.

Perfect PDF Digital Signatures

by Mike Bremford

Not all digital signatures are created equal. Our PDF Library has been able to digitally sign documents for years, but digitally signing a file with a key that's trusted by Acrobat is a little trickier, and requires hardware. Here, we show you how to do it.

Smaller, Faster, Better - BFO Release New PDF Library

by Dan Wilson

The recent PDF Library 2.11.15 has a few highlights, including better support for digital signing from hardware, generation of "Aztec Code" barcodes, basic support for Flash file embedding in PDF, and a large number of bug fixes and improvements. This release offers improvements in memory and speed across the board, with tweaks to the low level data-structures that underly all PDFs. The Jar has shrunk by 10% as well, and our packed PDF Viewer Applet now scrapes in at just under 800KB.

BFO release PDF Library and PDF Viewer update

by Jonathan Cookson

Version 2.11.12 of the PDF Library and PDF Viewer fixes a small memory leak in the Viewer which could occur during text selection. Some new methods for working with the Adobe Highlight File Format have been included, along with a large number of minor bugfixes and improvements since the previous release in June.

Watermarking a Report

by Mike Bremford

The Report Generator is a layer on top of the PDF Library API which converts XML to PDF. The XML is much easier to work with, but there are always situations where you'll need the flexibility of the API. Here we show you how to do this, and we also present a neat and non-obvious technique for watermarking.

Combining Ant, Jar, Signatures and Pack200

by Mike Bremford

If you're deploying Java code as Applets, Pack 200 compression can reduce the size of your download by 70%. This article shows how to build digitally signed Jars with Pack 200 compression using Apache Ant. It can be applied to any code, not just BFO code.

Extending the PDF Viewer - Part 1

by Jim Crossley

The BFO PDF Viewer has a simple framework and API for adding new features. This article will show how to add a simple widget to the toolbar and then add more features that interact with the PDF document itself.

Public Key Encryption and PDF

by Mike Bremford

Most people when they think of protecting a PDF, think of a password. However this isn't the only way to do it. Both Acrobat and our PDF viewer allow a PDF to be decrypted using a private key which is specific to a user. In this article we show you how to create a key, encrypt a document for that key and then decrypt it again.

Graphs in dynamic web pages

by Jim Crossley

The traditional approach to using the BFO Graph Library in web pages has been to use the JSP tag library so that the server processes XML in JSP pages and replaces it with generated graphs. However if you want to include BFO graphs in non JSP web pages that use AJAX to load data dynamically then the tag library is not very useful. Although the Graph Library has a SOAP interface for web service access SOAP is not well suited to being used from web pages, so instead we will use the plain XML interface to the Graph Library to dynamically add charts to web pages.

QR-Code and other barcodes

by Mike Bremford

The PDF Library supports a large number of barcodes, including QR-Code. This article shows some tricks you can do with these dense 2D barcodes.

Creating TIFF Class F Images

by Mike Bremford

The BFO PDF Library can create TIFF images from PDF using a number of compression algorithms, including Group 4. If for some reason you want to use Group 3 compression you'll need to use a third party library like JAI. This article shows you how.

Logging with BFO

by Jim Crossley

The release of 2.11.6 of the BFO PDF library sees the introduction of a consolidated logging API that can be integrated into customer's existing logging systems. Read on to find out how to configure BFO products to log with Log4J or java.util.logging.

JPEG2000, Java and PDF

by Mike Bremford

The JPEG 2000 compression algorithm was designed in 2000 as a successor to the venerable JPEG algorithm, which dates back to 1992. It's designed to compress "continuous tone" images such as photographs, and supports both a lossy (like JPEG) and a lossless format. We covered a bit on image compression in a previous article. Adobe added support for JPEG 2000 compressed images in Acrobat 5.0, (calling it JPX compression), and it's becoming more and more common to find PDF Documents containing photographic images compressed with this algorithm.

Funnel Charts

by Jim Crossley

With the release of version 2.4 of the BFO Graph library it is now possible to create "funnel charts" This blog article will explain how to use the new chart type and provide examples of the different styles that can be created.

Creating PDF/A documents with the BFO library

by Chris Burdess

PDF/A is a standardised subset of PDF used for long-term archive storage. The PDF/A format ensures that documents can be correctly rendered hundreds of years from now in the absence of standard frameworks we take for granted today. Read more to find out how to author PDF/A documents with the BFO PDF library.

Gotchas when reading and writing PDF to files

by Mike Bremford

Reading and writing PDF documents to and from the same disk file can have unexpected consequences. This article covers what to watch out for if you do this, and details a few ways to get around the problems it can cause, including the new features added in 2.11.2 for this problem.

BFO releases Java PDF library 2.11.2

by Mike Bremford

BFO have released a new version of their Java PDF Library. Version 2.11.2 fixes an issue with IBM versions of Java that was introduced in the previous release - a change of obfuscator clashed with a bug in some releases of the JRE supplied with Websphere. There are fixes for Customers reading and writing PDFs to the same File, a memory leak in the Viewer has been fixed, and a number of bugs have...

New features for Java applets

by Jim Crossley

Sun have rewritten the Java browser plugin in Java 6 Update 10 to address many of the issues that people have experienced with deploying Java applets, and to add new features such as dragging applets out of the browser. We have updated the PDF Viewer Applet to take advantage of these features, and we'll show how you can update your own deployment of the PDF Viewer Applet, or any other applet, to do the same.

Big Faceless releases Java PDF Library 2.10.4

by Dan Wilson

BFO are pleased to announce the 2.10.4 release of their PDF library. Several months in the making, it contains a large number of changes, mostly under the hood. For the end user, the primary new features will be the new single column display in the Viewer; improvements to allow the library to work with XFA-only PDFs and the addition of the new USPS "IntelligentMail" BarCode. There was also a larg...

BFO Technical Support 'second to none' says top Adobe provider

by Jonathan Cookson

BFO are pleased to add 4Point, the world's largest Adobe consulting practice, to its enviable client base. A spokesman for 4Point said, "We used (BFO's) PDF Library to meet our client's need for rich inter-document navigation. With (the) PDF Library we were able to stitch together flat PDFs, create a set of inter-document linking bookmarks, and hyperlink inter-documents via existing and built ta...

Converting PDF to TIFF, PNG and JPEG

by Mike Bremford

We're asked some questions more than others at BFO, and one of the most common concerns conversion of a PDF to a bitmap image format - typically TIFF, but sometimes JPEG or another format. This process is called "rasterization" and while it's very easy to do with the "extended plus viewer" version of our PDF Library, it's worth going over in more detail.

Linearized PDF

by Mike Bremford

The 2.10.3 release of the PDF library adds support for writing "Linearized" PDF documents, sometimes called "Web Optimized" or "Fast Web View" enabled. This feature has been a part of the PDF specification since Acrobat 3.0, but it's poorly understood even by developers.

Big Faceless releases PDF Library 2.10.3

by Mike Bremford

BFO have released a major update to their PDF Library. The 2.10.3 release has a number of significant improvements across the board: for the first time the PDF library can now write Linearized, or "web-optimized" PDF's, which are optimized for faster display in a web browser. Text extraction has been rewritten and is now significantly faster and more accurate. A bug causing higher than necessary ...

The BFO Blog arrives

by Mike Bremford

Hello and welcome to the latest section of BFO's website, the "BFO Blog". We'll be using this section to disseminate useful bits of information that we think our customers might want to hear, but that don't really fit anywhere else.