Variable Data Printing

Top Previous Topic Next Topic  Print this topic

Starting with version 5.5.0, XF Rendering Server (Ultrascale Edition) supports Variable Data Printing (or VDP).

 

What is VDP?

VDP attempts to preserve regions of a page that do not change (are static in nature) in a cache and reuse this information, instead of drawing the static content over and over again.

For example, a document can have headers and footers that do not change from one page to another. In this case, the whole header can be stored in the cache as a resource. Instead of drawing the headers for each page, the rendering engine will draw the headers in a resource only once and the resource will be then invoked for each page (similar to a function call). All major printing output formats support this feature (PDF, AFP and Postscript).

 

In XF Rendering Server, when VDP is enabled for a document, the server will automatically place a page's content in 2 categories: static content and dynamic content.

Static content will be cached as a resource and every time an identical content is detected.

 

The elements which are considered to be dynamic are:

oIntrinsically dynamic elements from XSL-FO like fo:page-number and fo:page-number-citation
oData from XML source when the input is XFD/XSLT + XML
oAny other object with xf:vdp-variable set to "true".

 

By default, all other formatting objects are assumed to be static.

 

To support VDP, the following extensions have been implemented in XF Ultrascale 2013 :

 

VDP Attributes

 

xf:vdp-enable

 

This attribute is placed on the root element (fo:root or xfd:document) and tells the engine to enable the VDP processing of a document.

Its values can be "true" or "false". The default value is "false".

 

 

Example of usage:

 

       

       <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xf="http://www.ecrion.com/xf/1.0" xf:vdp-enable="true">

 

 

xf:vdp-variable

 

This attribute is used to override the VDP detection mechanism and specify explicitly whether an element is dynamic or static. Its values can be "true" or "false". The default value is "false".

 

 

Example of usage:

 

 

       <fo:block xf:vdp-variable="true">...</fo:block>

 

 

 

Note:

For more information on VDP, the following website is available: http://en.wikipedia.org/wiki/Variable_data_printing