12.1  Installing the PDFlib Block Plugin n 341
12PPS and the PDFlib Block Plugin
The PDFlib Personalization Server (PPS) supports a template-driven PDF workflow for 
variable data processing. Using the Block concept, imported pages can be populated 
with variable amounts of single- or multi-line text, images, PDF pages or vector graph-
ics. This can be used to easily implement applications which require customized PDF 
documents, for example:
>mail merge
>flexible direct mailings
>transactional and statement processing
>business card personalization
You can create and edit Blocks interactively with the PDFlib Block Plugin, convert exist-
ing PDF form fields to PDFlib Blocks with the form field conversion Plugin. Blocks can be 
filled with PPS. The results of Block filling with PPS can be previewed in Acrobat since 
the Block Plugin contains an integrated version of PPS.
Note Block processing requires the PDFlib Personalization Server (PPS). Although PPS is contained in 
all PDFlib packages, you must purchase a license key for PPS; a PDFlib or PDFlib+PDI license key 
is not sufficient. The PDFlib Block Plugin for Adobe Acrobat is required for creating Blocks in PDF 
templates interactively.
Cookbook Code samples regarding variable data and Blocks can be found in the blocks category of the 
PDFlib Cookbook.
12.1Installing the PDFlib Block Plugin
The Block Plugin works with the following Acrobat versions:
>Acrobat 8/9/X/XI/DC on Windows
>Acrobat 8/9/X/XI/DC on OSX
The Plugin doesn’t work with Adobe Reader/Acrobat Reader.
Installing the PDFlib Block Plugin on Windows. To install the PDFlib Block Plugin and 
the PDF form field conversion plugin in Acrobat, the plugin files must be placed in a 
subdirectory of the Acrobat plugin folder. This is done automatically by the plugin in-
staller, but can also be done manually. The plugin files are called Block.api and AcroForm-
Conversion.api. A typical location of the plugin folder looks as follows:
C:\Program Files\Adobe\Acrobat XXX\Acrobat\plug_ins\PDFlib Block Plugin
For 32-bit versions of Acrobat running on 64-bit Windows the first part should be
C:\Program Files (x86)\...
Installing the PDFlib Block Plugin for Acrobat X/XI/DC on OSX. Proceed as follows to 
install the plugin for all users:
>Double-click the disk image to mount it. A folder with the plugin files will be visible.
>Copy the plugin folder to the following path in the system’s Library folder:
/Library/Application Support/Adobe/Acrobat/XXX/Plug-ins
Convert pdf to tiff using c# - Convert PDF to tiff images in C#.net, ASP.NET MVC, Ajax, WinForms, WPF
Online C# Tutorial for How to Convert PDF File to Tiff Image File
convert pdf images to tiff; convert pdf to tiff file online
Convert pdf to tiff using c# - VB.NET PDF Convert to Tiff SDK: Convert PDF to tiff images in vb.net, ASP.NET MVC, Ajax, WinForms, WPF
Free VB.NET Guide to Render and Convert PDF Document to TIFF
how to convert pdf into tiff; pdf to tiff conversion
342
Chapter 12:  PPS and the PDFlib Block Plugin
Alternatively you can install the plugin only for a single user as follows:
>Click the desktop to make sure you’re in the Finder, hold down the Option key, and 
choose Go, Library to open the user’s Library folder.
>Copy the plugin folder to the following path in the user’s Library folder:
/Users/<username>/Library/Application Support/Adobe/Acrobat/XXX/Plug-ins
Installing the PDFlib Block Plugin for Acrobat 8/9 on OSX. The plugin folder is not di-
rectly visible in the Finder. Instead of dragging the plugin files to the plugin folder use 
the following steps (make sure that Acrobat is not running):
>Extract the plugin files to a folder by double-clicking the disk image.
>Locate the Adobe Acrobat application icon in the Finder. It is usually located in a fold-
er which has a name similar to the following:
/Applications/Adobe Acrobat XXX
>Single-click on the Acrobat application icon, open the context menu, and select Show 
Package Contents.
>In the Finder window that pops up navigate to the folder Contents/Plug-ins and copy 
the plugin folder which has been created in the first step into this folder.
Multi-lingual Interface. The PDFlib Block Plugin supports multiple languages in the 
user interface. Depending on the application language of Acrobat, the Block Plugin 
chooses its interface language automatically. Currently English, German and Japanese 
interfaces are available. If Acrobat runs in any other language mode, the Block Plugin 
uses the English interface.
Troubleshooting. If the PDFlib Block Plugin doesn’t seem to work check the following:
>Make sure that in Edit, Preferences, [General...], General the box Use only certified plug-ins 
is unchecked. The plugins are not loaded if Acrobat runs in Certified Mode.
>Some PDF forms created with Adobe Designer may prevent the Block Plugin as well 
as other Acrobat plugins from working properly since they interfere with Acrobat’s 
internal security model. For this reason we suggest to avoid Designer’s static PDF 
forms, and only use dynamic PDF forms as input for the Block Plugin.
C# PDF Convert to Jpeg SDK: Convert PDF to JPEG images in C#.net
Convert PDF to JPEG Using C#.NET. Add necessary references: RasterEdge.Imaging.Basic. dll. RasterEdge.Imaging.Basic.Codec.dll. RasterEdge.Imaging.Drawing.dll.
convert pdf file to tiff online; pdf to tiff
C# TIFF: TIFF Editor SDK to Read & Manipulate TIFF File Using C#.
Convert Tiff file to bmp, gif, png, jpeg, and scanned PDF to Tiff, like Word, Excel, PowerPoint, PDF, and images. & decode over 20+ barcodes from Tiff file in C#
pdf to grayscale tiff; save pdf to tiff
12.2  Overview of the Block Concept t 343
12.2Overview of the Block Concept
12.2.1Separation of Document Design and Program Code
PDFlib Blocks make it easy to place variable text, images, PDF pages or vector graphics 
on imported pages. In contrast to simple PDF pages, pages with Blocks intrinsically car-
ry information about the required processing which will be performed later on the serv-
er side. The Block concept separates the following tasks:
>The designer creates the page layout and specifies the location of variable page ele-
ments along with relevant properties such as font size, color, or image scaling. After 
creating the layout as a PDF document, the designer uses the PDFlib Block Plugin for 
Acrobat to specify variable data Blocks and their associated properties.
>The programmer writes code to connect the information contained in PDFlib Blocks 
on imported PDF pages with dynamic information, e.g., database fields. The pro-
grammer doesn’t need to know any details about a Block (whether it contains a 
name or a ZIP code, the exact location on the page, its formatting, etc.) and is there-
fore independent from any layout changes. PPS will take care of all Block-related de-
tails based on the Block properties found in the file.
In other words, the code written by the programmer is »data-blind« – it is generic and 
does not depend on the particulars of any Block. For example, the designer can move 
the Block with name of the addressee in a mailing to a different location on the page, or 
change the font size. The generic Block handling code doesn’t need to be changed, and 
will generate correct output once the designer changed the Block properties with the 
Acrobat plugin to use the first name instead of the last name.
As an intermediate step Block filling can be previewed in Acrobat to accelerate the 
development and test cycles. Block previews are based on default data (e.g. a string or an 
image file name) which is specified in the Block definitions.
12.2.2Block Properties
The behavior of Blocks can be controlled with Block properties. Properties are assigned 
to a Block with the Block Plugin.
Predefined Block properties. Blocks are defined as rectangles on the page which are as-
signed a name, a type, and an open set of properties which will later be processed by 
PPS. The name is an arbitrary string which identifies the Block, such as firstname
lastname, or zipcode. PPS supports different kinds of Blocks:
>Textline Blocks hold a single line of textual data which will be processed with the Text-
line output method in PPS.
>Textflow Blocks hold one or more lines of textual data. Multi-line text will be format-
ted with the Textflow formatter in PPS. Textflow Blocks can be linked so that one 
Block holds the overflow text of the previous Block (see »Linking Textflow Blocks«, 
page 363).
>Image Blocks hold a raster image. This is similar to placing a TIFF or JPEG file in a DTP 
application.
>PDF Blocks hold arbitrary PDF contents imported from a page in another PDF docu-
ment. This is similar to placing a PDF page in a DTP application.
>Graphics Blocks hold vector graphics. This is similar to placing an SVG file in a layout 
application.
C# Create PDF from Tiff Library to convert tif images to PDF in C#
TIFF file. TIFFDocument doc = new TIFFDocument(inputFilePath); // Convert loaded TIFF file to PDF document. doc.ConvertToDocument
convert pdf to multipage tiff; convert pdf to tiff 300 dpi online
C# PDF Convert to Word SDK: Convert PDF to Word library in C#.net
DocumentType.DOCX DocumentType.TIFF. zoomValue, The magnification of the original PDF page size. Description: Convert to DOCX/TIFF with specified resolution and
bulk pdf to tiff converter; convert pdf to grayscale tiff
344
Chapter 12:  PPS and the PDFlib Block Plugin
Blocks can carry a number of predefined properties depending on their type. Properties 
can be created and modified with the Block Plugin (see Section 12.3.2, »Editing Block 
Properties«, page 350). A full list of predefined Block properties can be found in Section 
12.6, »Block Properties«, page 367. For example, a text Block can specify the font and size 
of the text, an image or PDF Block can specify the scaling factor or rotation PPS offers 
dedicated functions for processing the Block types, e.g. PDF_fill_textblock(). These func-
tions search a placed PDF page for a Block by its name, analyze its properties, and place 
client-supplied data (single- or multi-line text, raster image, PDF page, or vector graph-
ics) on the new page according to the specified Block properties. The programmer can 
override Block properties by specifying the corresponding options in the Block filling 
functions.
Properties for default contents. Special Block properties can be defined which hold 
the default contents of a Block, i.e. the text, image, PDF, or graphics contents that will be 
placed in the Block if no variable data is supplied to the Block filling functions, or in sit-
uations where the Block contents are currently constant, but may change in the next 
print run.
Default properties are also used by the Preview feature of the Block Plugin (see Sec-
tion 12.4, »Previewing Blocks in Acrobat«, page 357).
Custom Block properties. Predefined Block properties make it possible to quickly im-
plement variable data processing applications, but they are restricted to the set of prop-
erties which are internally known to PPS and can automatically be processed. In order to 
provide more flexibility, the designer can also assign custom properties to a Block. 
These can be used to extend the Block concept in order to match the requirements of 
more advanced variable data processing applications.
There are no rules for custom properties since PPS will not process custom proper-
ties in any way, except making them available to the client. The client code can retrieve 
the value of custom properties and process it as appropriate. Based on a custom proper-
ty of a Block the application may make layout-related or data-gathering decisions. For 
example, a custom property for a scientific application could specify the number of dig-
its for numerical output, or a database field name may be defined as a custom Block 
property for retrieving the data corresponding to this Block.
12.2.3Why not use PDF Form Fields?
Experienced Acrobat users may ask why we implemented a new Block concept instead 
of relying on the existing form field mechanism available in PDF. The primary distinc-
tion is that PDF form fields are optimized for interactive filling, while PDFlib Blocks are 
targeted at automated filling. Applications which need both interactive and automated 
filling can combine PDF forms and PDFlib Blocks with the form field conversion plugin 
(see Section 12.3.4, »Converting PDF Form Fields to PDFlib Blocks«, page 353).
Although there are many parallels between both concepts, PDFlib Blocks offer sever-
al advantages over PDF form fields as detailed in Table 12.1.
C# PDF Convert to HTML SDK: Convert PDF to html files in C#.net
library control is a 100% clean .NET document image solution, which is designed to help .NET developers convert PDF to HTML webpage using simple C# code.
pdf to tiff quality; vb.net convert pdf to tiff
C# PDF Convert to SVG SDK: Convert PDF to SVG files in C#.net, ASP
C#.NET PDF SDK - Convert PDF to SVG in C#.NET. C# Programming Language to Render & Convert PDF to SVG Using C#.NET XDoc.PDF Converter Control.
how to convert pdf to tiff format; pdf to tiff open source c#
12.2  Overview of the Block Concept t 345
Table 12.1 1 Comparison of PDF form fields and PDFlib Blocks
feature
PDF form fields
PDFlib Blocks
design objective
for interactive use
for automated filling
typographic features (beyond 
choice of font and font size)
kerning, word and character spacing, underline/
overline/strikeout
OpenType layout features
dozens of OpenType layout features, e.g. ligatures, 
swash characters, oldstyle figures
complex script support
limited
shaping and bidirectional formatting, e.g. for Ara-
bic and Devanagari
font control
font embedding
font embedding and subsetting, encoding
text formatting controls
left-, center-, right-aligned
left-, center-, right-aligned, justified; various for-
matting algorithms and controls; inline options 
can be used to control the appearance of text
change font or other text attributes 
within text
yes
merged result is integral part of PDF 
page description
yes
users can edit merged field contents s yes
no
extensible set of properties
yes (custom Block properties)
use image files for filling
BMP, CCITT, GIF, PNG, JPEG, JBIG2, JPEG2000, TIFF
use vector graphics for filling
SVG
color support
RGB
grayscale, RGB, CMYK, Lab, spot color (HKS and Pan-
tone spot colors integrated in the Block Plugin)
PDF standards
PDF/A, PDF/X, PDF/VT, PDF/UA
graphics and text properties can be 
overridden upon filling
yes
transparent contents
yes
Text Blocks can be linked
yes
C# WPF Viewer: Load, View, Convert, Annotate and Edit Tiff
By using RasterEdge WPF Viewer for C# .NET, users can perform Tiff viewing and multiple Tiff image manipulation functionalities. convert Tiff file to PDF, add
program to convert pdf to tiff; multipage pdf to multipage tiff
C# WinForms Viewer: Load, View, Convert, Annotate and Edit Tiff
By using RasterEdge WinForms Viewer, users can load Tiff to WinForms processing Tiff while in preview, such as convert Tiff file to PDF, add annotations
pdf to tiff converter open source c#; how to convert pdf to tiff format online
346
Chapter 12:  PPS and the PDFlib Block Plugin
12.3Editing Blocks with the Block Plugin
12.3.1Creating Blocks
Activating the Block tool. The Block Plugin for creating PDFlib Blocks is similar to the 
form tool in Acrobat. All Blocks on the page will be visible when the Block tool is active. 
When another Acrobat tool is selected the Blocks will be hidden, but they are still pres-
ent. You can activate the Block tool in the following ways:
>By clicking the Block icon 
which you can locate as follows:
Acrobat DC: click Tools, Advanced Editing.
AcrobatX/XI: in the Tools, Advanced Editing pane. If Acrobat does not display this tool-
bar you can enable it via View, Tools, Advanced Editing.
Acrobat 9: in the Advanced Editing toolbar. If Acrobat does not display this toolbar 
you can enable it via View, Toolbars, Advanced Editing.
>Via the menu item PDFlib Blocks, PDFlib Block Tool.
Creating and modifying Blocks. When the Block tool is active you can drag the cross-
hair pointer to create a Block at the desired position on the page and with the desired 
size. Blocks are always rectangular with edges parallel to the page edges (use the rotate 
property for Block contents which are not parallel to the page edges). After dragging a 
Block rectangle the Block properties dialog appears where you can edit the properties of 
the Block (see Section 12.3.2, »Editing Block Properties«, page 350). The Block tool auto-
matically creates a Block name which can be changed in the properties dialog. Block 
names must be unique on a page, but can be repeated on another page.
You can change the Block type in the top area to one of Textline, Textflow, Image, PDF, 
or Graphics. Different colors are used for representing the Block types (see Figure 12.1). 
The Block Properties dialog hierarchically organizes the properties in groups and sub-
groups depending on the Block type.
Note After you added Blocks or made changes to existing Blocks in a PDF, use Acrobat’s »Save as...« 
Command (as opposed to »Save«) to achieve smaller file sizes.
Note When using the Acrobat plugin Enfocus PitStop to edit documents which contain PDFlib Blocks 
you may see the message »This document contains PieceInfo from PDFlib. Press OK to continue 
editing or Cancel to abort.« This message can be ignored; it is safe to click OK in this situation.
Selecting Blocks. Several Block operations, such as copying, moving, deleting, or edit-
ing Properties, work with one or more selected Blocks. You can select Blocks with the 
Block tool as follows:
>To select a single Block simply click on it.
>To select multiple Blocks hold down the Shift key while clicking on the second and 
subsequent Block.
>Press Ctrl-A (on Windows) or Cmd-A (on OSX) or Edit, Select All to select all Blocks on a 
page.
The context menu. When one or more Blocks are selected you can open the context 
menu to quickly access Block-related functions (which are also available in the PDFlib 
Blocks menu). To open the context menu, click on the selected Block(s) with the right 
mouse button on Windows, or Ctrl-click the Block(s) on OSX. For example, to delete a 
12.3  Editing Blocks with the Block Plugin n 347
Block, select it with the Block tool and press the Delete key, or use Edit, Delete in the con-
text menu.
If you right-click (or Ctrl-click on OSX) an area on the page where no Block is located 
the context menu contains entries for creating a Block Preview and for configuring the 
Preview feature.
Block size and position. Using the Block tool you can move one or more selected 
Blocks to a different position. Hold down the Shift key while dragging a Block to restrain 
the positioning to horizontal and vertical movements. This may be useful for exactly 
aligning Blocks. When the pointer is located near a Block corner, the pointer will change 
to an arrow and you can resize the Block. To adjust the position or size of multiple 
Fig. 12.1 1 Visualization of Blocks
348
Chapter 12:  PPS and the PDFlib Block Plugin
Blocks, select two or more Blocks and use the Align, Center, Distribute, or Size commands 
from the PDFlib Blocks menu or the context menu. The position of one or more Blocks 
can also be changed in small increments by using the arrow keys.
Alternatively, you can enter numerical Block coordinates in the properties dialog. 
The origin of the coordinate system is in the upper left corner of the page. The coordi-
nates will be displayed in the unit which is currently selected in Acrobat:
>To change the display units in Acrobat 9/X/XI/DC proceed as follows: go to Edit, Pre-
ferences, [General...], Units & Guides, Page & Ruler Units and choose one of Points, Inch-
es, Millimeters, Picas, Centimeters.
>To display cursor coordinates use View, Show/Hide, Cursor Coordinates (AcrobatX/XI/
DC) or View, Cursor Coordinates (Acrobat 9).
Note that the selected unit will only affect the Rect property, but not any other numeri-
cal properties (e.g. fontsize).
Using a grid to position Blocks. You can take advantage of Acrobat’s grid feature for 
precisely positioning and resizing Blocks:
Fig. 12.2
The Block properties dialog
12.3  Editing Blocks with the Block Plugin n 349
>Display the grid: View, Show/Hide, Rulers&Grids, Grid (AcrobatX/XI/DC) or View, Grid 
(Acrobat 9);
>Enable grid snapping: View, Show/Hide, Rulers&Grids, Snap to Grid (AcrobatX/XI/DC) 
or View, Snap to Grid (Acrobat 9);
>Change the grid (see Figure 12.3): go to Edit, Preferences, [General...], Units & Guides. Here 
you can change the spacing and position of the grid as well as the color of the grid 
lines.
If Snap to Grid is enabled the size and position of Blocks will be aligned with the config-
ured grid. Snap to Grid affects newly generated Blocks as well as existing Blocks which 
are moved or resized with the Block tool.
Creating Blocks by selecting an image or graphic. As an alternative to manually drag-
ging Block rectangles you can use existing page contents to define the Block size. First, 
make sure that the menu item PDFlib Blocks, Click Object to define Block is enabled. Now 
you can use the Block tool to click on an image on the page in order to create a Block 
with the same size and location as the image. You can also click on other graphical ob-
jects, and the Block tool will try to select the surrounding graphic (e.g., a logo). The Click 
Object feature is intended as an aid for defining Blocks. If you want to reposition or re-
size the Block you can do so afterwards without any restriction. The Block will not be 
locked to the image or graphics object which was used as a positioning aid.
The Click Object feature tries to recognize which vector graphics and images form a 
logical element on the page. When some page content is clicked, its bounding box (the 
surrounding rectangle) will be selected unless the object is white or very large. In the 
next step other objects which are partially contained in the detected rectangle will be 
added to the selected area, and so on. The final area will be used as the basis for the gen-
Fig. 12.3
Grid preferences
in Acrobat
350
Chapter 12:  PPS and the PDFlib Block Plugin
erated Block rectangle. The end result is that the Click Object feature will try to select 
complete graphics, not only individual lines.
Automatically detect font properties. The Block Plugin can analyze the underlying 
font which is present at the location where a Textline or Textflow Block is positioned, 
and can automatically fill in the corresponding properties of the Block:
fontname, fontsize, fillcolor, charspacing, horizscaling, wordspacing,
textrendering, textrise
Since automatic detection of font properties can result in undesired behavior if the 
background shall be ignored, it can be activated or deactivated using PDFlib Blocks, Detect 
underlying font and color. By default this feature is turned off.
Locking Blocks. Blocks can be locked to protect them against accidentally moving, re-
sizing, or deleting. With the Block tool active, select the Block and choose Lock from its 
context menu. While a Block is locked you cannot move, resize, or delete it, nor edit its 
properties.
12.3.2Editing Block Properties
When you create a new Block, double-click an existing one, or choose Properties from a 
Block’s context menu, the properties dialog will appear where you can edit all settings 
related to the selected Block (see Figure 12.2). As detailed in Section 12.6, »Block Proper-
ties«, page 367, there are several groups of properties available, subject to the Block type.
The Apply button will only be enabled if you changed one or more properties in the dia-
log. The Apply button will be inactive for locked Blocks.
Note Some properties may be inactive depending on the Block type and certain property settings. 
For example, the property subgroup Ruler tabs for hortabmethod=ruler where you can edit 
tabulator settings is enabled only if the hortabmethod property in the group Text formatting, 
Tabs is set to ruler.
To change a property’s value enter the desired number or string in the property’s input 
area (e.g. linewidth), choose a value from a drop-down list (e.g. fitmethod, orientate), or se-
lect a font, color value or file name by clicking the »...« button at the right-hand side of 
the dialog (e.g. backgroundcolor, defaultimage). For the fontname property you can either 
choose from the list of fonts installed on the system or type a custom font name. Re-
gardless of the method for entering a font name, the font must be available on the sys-
tem where the Blocks will be filled with PPS.
Modified properties will in be displayed in bold face in the Block Properties dialog. If 
any of the properties in a Block has been modified, the suffix (*) will be appended to the 
displayed Block name. When you are done editing properties click the Apply button to 
update the Block. The properties just defined will be stored in the PDF file as part of the 
Block definition.
Stacked Blocks. Overlapping Blocks can be difficult to select since clicking an area will 
always select the topmost Block. In this situation the Choose Block entry in the context 
menu can be used to select one of the Blocks by name. As soon as a Block has been se-
lected this way, the next action within its area will not affect other Blocks, but only the 
selected one. For example, press Enter to edit the selected Block’s properties. This way 
Documents you may be interested
Documents you may be interested