12.4  Previewing Blocks in Acrobat t 361
the charref property in the Text preparation property group as false and can not work 
with character references. For example, the following default text will produce the 
»smiley« glyph from the symbolic Wingdings font if charref=false:
J
\x4A
\112
>Working with the Unicode values or glyph names used in the font: set the charref 
property in the Text preparation property group to true and supply character refer-
ences or glyph name references for the symbols (see Section 4.6.2, »Character Refer-
ences«, page 106). For example, the following default text will produce the »smiley« 
glyph from the symbolic Wingdings font if charref=true:

&.smileface;
Keep in mind that with both methods an alternate representation will be visible instead 
of the actual symbolic glyphs in the Block properties dialog.
How to convert pdf to tiff in - 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 to tiff file; convert pdf to tiff open source
How to convert pdf to tiff in - 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
convert pdf to tiff high quality; how to convert pdf into tiff format
362
Chapter 12:  PPS and the PDFlib Block Plugin
12.5Filling Blocks with PPS
In order to fill Blocks with PPS you must first place the page containing the Blocks on 
the output page with the PDF_fit_pdi_page() function. After placing the page its Blocks 
can be filled with the PDF_fill_*block() functions.
Simple example: add variable text to a template. Adding dynamic text to a PDF tem-
plate is a very common task. The following code fragment opens a page in an input PDF 
document (the template or Block container), places it on the output page, and fills some 
variable text into a text Block called firstname:
doc = p.open_pdi_document(filename, "");
if (doc == -1)
throw new Exception("Error: " + p.get_errmsg());
page = p.open_pdi_page(doc, pageno, "");
if (page == -1)
throw new Exception("Error: " + p.get_errmsg());
p.begin_page_ext(width, height, "");
/* Place the imported page */
p.fit_pdi_page(page, 0.0, 0.0, "");
/* Fill a single Block on the placed page */
p.fill_textblock(page, "firstname", "Serge", "encoding=winansi");
p.close_pdi_page(page);
p.end_page_ext("");
p.close_pdi_document(doc);
Cookbook A full code sample can be found in the Cookbook topic blocks/starter_block.
Overriding Block properties. In certain situations the programmer wants to use only 
some of the properties provided in a Block definition, but override other properties 
with custom values. This can be useful in various situations:
>Business logic may decide to enforce certain overrides.
>The scaling factor for an image or PDF page will be calculated by the application in-
stead of taken from the Block definition.
>Change the Block coordinates programmatically, for example when generating an 
invoice with a variable number of data items.
>Individual spot color names could be supplied in order to match customer require-
ments in a print shop application.
Property overrides can be achieved by supplying property names and the correspond-
ing values in the option list of the PDF_fill_*block() functions, e.g.
p.fill_textblock(page, "firstname", "Serge", "fontsize=12");
This will override the Block’s internal fontsize property with the supplied value 12. Al-
most all property names can be used as options. 
Property overrides apply only to the respective function calls; they will not be stored 
in the Block definition.
Online Convert PDF file to Tiff. Best free online PDF Tif
Using this .NET PDF to TIFF conversion control, C# developers can render and convert PDF document to TIFF image file with no loss in original file quality.
convert pdf to tiff using c#; pdf to tiff batch converter
Online Convert PDF file to Word. Best free online PDF Conversion
Download Free Trial. Convert a Tiff/Tif File to PDF. Easy converting! We try to make it as easy as possible to convert your Tiff/Tif files to PDF.
pdf to tiff converter for; file converter pdf to tiff
12.5  Filling Blocks with PPS S 363
Placing the imported page on top of the filled Blocks. The imported page must have 
been placed on the output page before using any of the Block filling functions. This 
means that the original page will usually be placed below the Block contents. However, 
in some situations it may be desirable to place the original page on top of the filled 
Blocks. This can be achieved by placing the page once with the blind option of PDF_fit_
pdi_page() in order to make its Blocks and their position known to PPS, and place it 
again after filling the Blocks in order to actually show the page contents:
/* Place the page in blind mode to prepare the Blocks, without the page being visible */
p.fit_pdi_page(page, 0.0, 0.0, "blind");
/* Fill the Blocks */
p.fill_textblock(page, "firstname", "Serge", "encoding=winansi");
/* ... fill more Blocks ... */
/* Place the page again, this time visible */
p.fit_pdi_page(page, 0.0, 0.0, "");
Cookbook A full code sample can be found in the Cookbook topic blocks/block_below_contents.
Ignoring the container page when filling Blocks. Imported Blocks can also be useful as 
placeholders without any reference to the underlying contents of the Block’s page. You 
can place a container page with Blocks in blind mode on one or more pages, i.e. with the 
blind option of PDF_fit_pdi_page(), and subsequently fill its Blocks. This way you can 
take advantage of the Block and its properties without placing the container page on 
the output page, and can duplicate Blocks on multiple pages (or even on the same out-
put page).
Cookbook A full code sample can be found in the Cookbook topic blocks/duplicate_block.
Linking Textflow Blocks. Textflow Blocks can be linked so that one Block holds the 
overflow text of a previous Block. For example, if you have long variable text which may 
need to be continued on another page you can link two Blocks and fill the remaining 
text of the first Block into the second Block.
PPS internally creates a Textflow from the text provided to PDF_fill_textblock() and 
the Block properties. For unlinked Blocks this Textflow will be placed in the Block and 
the corresponding Textflow handle will be deleted at the end of the call; overflow text 
will be lost in this case.
With linked Textflow Blocks the overflow text of the first Block can be filled into the 
next Block. The remainder of the first Textflow will be used as Block contents instead of 
creating a new Textflow. Linking Textflow Blocks works as follows:
>In the first call to PDF_fill_textblock() within a chain of linked Textflow Blocks the val-
ue -1 (in PHP: 0) must be supplied for the textflowhandle option. The Textflow handle 
created internally will be returned by PDF_fill_textblock(), and must be stored by the 
application.
>In the next call to PDF_fill_textblock() the Textflow handle returned in the previous 
step can be supplied to the textflowhandle option (the text supplied in the text pa-
rameter will be ignored in this case, and should be empty). The Block will be filled 
with the remainder of the Textflow.
>This process can be repeated with more Textflow Blocks.
Online Convert Excel to PDF file. Best free online export xlsx
Download Free Trial. Convert a Excel File to PDF. Easy converting! We try to make it as easy as possible to convert your xlsx/xls files to PDF.
how to convert pdf file to tiff for; convert pdf to tiff quality
C# Create PDF from Tiff Library to convert tif images to PDF in C#
filePath). Description: Convert to PDF/TIFF with specified zoom value and save it on the disk. Parameters: Name, Description, Valid Value.
export pdf to tiff; converting pdf to tiff file
364
Chapter 12:  PPS and the PDFlib Block Plugin
>The returned Textflow handle can be supplied to PDF_info_textflow() in order to de-
termine the results of Block filling, e.g. the end condition or the end position of the 
text.
Note that the fitmethod property should be set to clip (this is the default anyway if text-
flowhandle is supplied). The basic code fragment for linking Textflow Blocks looks as fol-
lows:
p.fit_pdi_page(page, 0.0, 0.0, "");
tf = -1;
for (i = 0; i < blockcount; i++)
{
String optlist = "encoding=winansi textflowhandle=" + tf;
int reason;
tf = p.fill_textblock(page, blocknames[i], text, optlist);
text = null;
if (tf == -1)
break;
/* check result of most recent call to fit_textflow() */
reason = (int) p.info_textflow(tf, "returnreason");
result = p.get_string(reason, "");
/* end loop if all text was placed */
if (result.equals("_stop"))
{
p.delete_textflow(tf);
break;
}
}
Cookbook A full code sample can be found in the Cookbook topic blocks/linked_textblocks.
Block filling order. The Block functions PDF_fill_*block() process properties and Block 
contents in the following order:
>Background: if the backgroundcolor property is present and contains a color space 
keyword different from None, the Block area will be filled with the specified color.
>Border: if the bordercolor property is present and contains a color space keyword dif-
ferent from None, the Block border will be stroked with the specified color and line-
width.
>Contents: the supplied Block contents and all other properties except bordercolor and 
linewidth will be processed.
>Textline and Textflow Blocks: if neither text nor default text has been supplied, 
there won’t be any output at all, not even background color or Block border.
Nested Blocks. Before Blocks can be filled the page containing the Blocks must have 
been placed on the output page before (since otherwise PPS wouldn’t know the location 
of the Blocks after scaling, rotating, and translating the page). If the page only serves as 
a Block container without bringing static content to the new page you can place the im-
ported page with the blind option.
For successful Block filling it doesn’t matter how the imported page was placed on 
the output page:
C# PDF Convert to Jpeg SDK: Convert PDF to JPEG images in C#.net
C# PDF - Convert PDF to JPEG in C#.NET. C#.NET PDF to JPEG Converting & Conversion Control. Convert PDF to JPEG Using C#.NET. Add necessary references:
pdf to multi page tiff; how to convert pdf to tiff
VB.NET PDF Convert to HTML SDK: Convert PDF to html files in vb.
Convert PDF to HTML. |. Home ›› XDoc.PDF ›› VB.NET PDF: PDF to HTML. Convert PDF to HTML in VB.NET Demo Code. Add necessary references:
online pdf to tiff conversion; convert pdf into tiff
12.5  Filling Blocks with PPS S 365
>The page can be placed directly with PDF_fit_pdi_page().
>The page can be placed indirectly in a table cell with PDF_fit_table().
>The page can be placed as contents of a another PDF Block with PDF_fill_pdfblock().
The third method, i.e. filling a PDF Block with another page containing Blocks, allows 
nested Block containers. This allows simple implementations of interesting use cases. 
For example, you can implement both imposition and personalization with a two-step 
Block filling process:
>The first-level Block container page contains several large PDF Blocks which indicate 
the major areas on the paper to be printed on. The arrangement of PDF Blocks re-
flects the intended post-processing of the paper (e.g. folding or cutting).
>Each of the first-level PDF Blocks is then filled with a second-level container PDF 
page which contains Text, Image, PDF, or Graphics Blocks to be filled with variable 
text for personalization.
With this method Block containers can be nested. Although Block nesting works to an 
arbitrary level, a nesting level of three or more will only rarely be required.
The second-level Block containers (e.g. a template page for a letter) may be identical 
or different for each imposed page. If they are identical the Blocks on the letter template 
must be filled before placing the letter template itself in the next first-level Block since 
PPS always uses the location of the most recent placement of the template page.
Cookbook A full code sample can be found in the Cookbook topic blocks/nested_blocks.
Block coordinates. The Rectangle coordinates of a Block refer to the PDF default coor-
dinate system. When the page containing the Block is placed on the output page with 
PPS, several positioning and scaling options can be supplied to PDF_fit_pdi_page()
These options are taken into account when the Block is being processed. This makes it 
possible to place a template page on the output page multiply, every time filling its 
Blocks with data. For example, a business card template may be placed four times on an 
imposition sheet. The Block functions will take care of the coordinate system transfor-
mations, and correctly place the text for all Blocks in all invocations of the page. The 
only requirement is that the client must place the page and then process all Blocks on 
the placed page. Then the page can be placed again at a different location on the output 
page, followed by more Block processing operations referring to the new position, and 
so on.
The Block Plugin displays the Block coordinates differently from what is stored in 
the PDF file. The plugin uses Acrobat’s convention which has the coordinate origin in 
the upper left corner of the page, while the internal coordinates (those stored in the 
Block) use PDF’s convention of having the origin at the lower left corner of the page. The 
coordinate display in the Properties dialog is also subject to the units specified in Acro-
bat (see »Block size and position«, page 347).
Spot colors in Block properties. To use a separation (spot) color in a Block property you 
can click the »...« button which will present a list of all HKS and Pantone spot colors. 
These color names are built into PPS (see Section 3.4.1, »Color Management with ICC Pro-
files«, page 82) and can be used without further preparations. For custom spot colors an 
alternate color can be defined in the Block Plugin. If no alternate color is specified in the 
Block properties, the custom spot color must have been defined earlier in the PPS appli-
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
how to convert pdf to tiff using; how to convert pdf to tiff image
VB.NET PDF Convert to Jpeg SDK: Convert PDF to JPEG images in vb.
PDF from RTF. Create PDF from Text. PDF Export. Convert PDF to Word (.docx). Convert PDF to Tiff. Convert PDF to HTML. Convert PDF to
file conversion pdf to tiff; convert pdf to 300 dpi tiff
366
Chapter 12:  PPS and the PDFlib Block Plugin
cation using PDF_makespotcolor() or a suitable color option listOtherwise Block filling 
will fail.
12.6  Block Properties s 367
12.6Block Properties
PPS and the Block Plugin support general properties which can be assigned to any type 
of Block. In addition there are properties which are specific to the Block types Textline, 
TextflowImagePDF, and Graphics.
Properties support the same data types as option lists except handles and action 
lists. The names of Block properties are generally identical to options for API functions 
such as PDF_fit_textline(), PDF_fit_image() (e.g., fitmethod, charspacing). In these cases the 
behavior is exactly the same as the one documented for the respective option.
12.6.1Administrative Properties
Administrative properties apply to all Block types. Required entries will automatically 
be generated by the Block Plugin. Table 12.4 lists the administrative Block properties.
Table 12.4 4 Administrative properties
keyword
possible values and explanation
Description
(String) Human-readable description of the Block’s function, coded in PDFDocEncoding or Unicode (in the 
latter case starting with a BOM). This property is for user information only, and will be ignored by PPS.
Locked
(Boolean) If true, the Block and its properties can not be edited with the Block Plugin. This property will 
be ignored by PPS. Default: false
Name
(String; required) Name of the Block. Block names must be unique within a page, but not within a docu-
ment. The three characters [ ] ] / are not allowed in Block names. Block names are restricted to a maxi-
mum of 125 characters.
Subtype
(Keyword; required) Depending on the Block type, one of TextImagePDF, or Graphics. Note that Text-
line and Textflow Blocks both have Subtype Text, but are distinguished by the textflow property.
textflow
(Boolean) Controls single- or multiline processing. This property is not available explicitly in the user in-
terface of the Block Plugin, but will be mapped to Textline or Textflow Blocks, respectively (Default: 
false):
false
Textline Block: text spans a single line and will be processed with PDF_fit_textline().
true
Textflow Block: text can span multiple lines and will be processed with PDF_fit_textflow(). In 
addition to the standard text properties Textflow-related properties can be specified (see 
Table 12.9).
Type
(Keyword; required) Always Block
368
Chapter 12:  PPS and the PDFlib Block Plugin
12.6.2Rectangle Properties
Rectangle properties apply to all Block types. They describe the appearance of the Block 
rectangle itself. Required entries will automatically be generated by the Block Plugin. 
Table 12.5 lists the rectangle properties.
Table 12.5 5 Rectangle properties
keyword
possible values and explanation
background-
color
(Color) If this property is present and contains a color space keyword different from None, a rectangle will 
be drawn and filled with the supplied color. This may be useful to cover existing page contents. Default: 
None
bordercolor
(Color) If this property is present and contains a color space keyword different from None, a rectangle will 
be drawn and stroked with the supplied color. Default: None
linewidth
(Float; must be greater than 0) Stroke width of the line used to draw the Block rectangle; only used if 
bordercolor is set. Default: 1
Rect
(Rectangle; required) The Block coordinates. The origin of the coordinate system is in the lower left corner 
of the page. However, the Block Plugin displays the coordinates in Acrobat’s notation, i.e., with the origin 
in the upper left corner of the page. The coordinates will be displayed in the unit which is currently select-
ed in Acrobat, but will always be stored in points in the PDF file.
Status
(Keyword) Describes how the Block will be processed by PPS and the Preview feature (default: active):
active
The Block will be fully processed according to its properties.
ignore
The Block will be ignored.
ignoredefault
Like active, except that the defaulttext/image/pdf/graphics properties and options are 
ignored, i.e. the Block remains empty if no variable contents are available (especially in the 
Preview). This may be useful to make sure that the Block’s default contents are not used for 
filling Blocks on the server side although the Block may contain default contents for 
generating Previews. It can also be used to disable the default contents for previewing a Block 
without removing the default contents from the Block properties.
static
No variable contents will be placed; instead, the Block’s default text, image, PDF, or graphics 
contents will be used if available.
12.6  Block Properties s 369
12.6.3Appearance Properties
Appearance properties specify formatting details:
>Table 12.6 lists transparency appearance properties for all Block types.
>Table 12.7 lists text appearance properties for Textline and Textflow Blocks.
Table 12.6 6 Transparency appearance properties for all Block types
keyword
possible values and explanation
blendmode
(Keyword list; if used in PDF/A-1 mode it must have the value Normal) Name of the blend mode: None, 
ColorColorDodgeColorBurnDarkenDifferenceExclusionHardLightHueLightenLuminosity
MultiplyNoneNormalOverlaySaturationScreenSoftLight. Default: None
opacityfill
(Float; if used in PDF/A mode it must have the value 1) Opacity for fill operations in the range 0..1. The val-
ue 0 means fully transparent; 1 means fully opaque.
opacitystroke
(Float; if used in PDF/A mode it must have the value 1) Opacity for stroke operations in the range 0..1. The 
value 0 means fully transparent; 1 means fully opaque.
370
Chapter 12:  PPS and the PDFlib Block Plugin
Table 12.7 7 Text appearance properties for Textline and Textflow Blocks
keyword
possible values and explanation
charspacing
(Float or percentage) Character spacing. Percentages are based on fontsize. Default: 0
decoration-
above
(Boolean) If true, the text decoration enabled with the underlinestrikeout, and overline options will 
be drawn above the text, otherwise below the text. Changing the drawing order affects visibility of the 
decoration lines. Default: false
fillcolor
(Color) Fill color of the text. Default: gray 0 (=black)
fontname
1
(String) Name of the font as required by PDF_load_font(). The Block plugin will present a list of fonts 
available in the system. However, these font names may not be portable between OSX, Windows, and 
Unix systems. If fontname starts with an ’@’ character the font will be applied in vertical writing mode.
The encoding for the text must be specified as an option for PDF_fill_textblock() when filling the Block 
unless the font option has been supplied.
fontsize
1
(Float) Size of the font in points
horizscaling
(Float or percentage) Horizontal text scaling. Default: 100%
italicangle
(Float) Italic angle of text in degrees. Default: 0
kerning
(Boolean) Kerning behavior. Default: false
overline
(Boolean) Overline mode. Default: false
shadow
(Composite) Create a shadow effect (default: no shadow). The following subproperties are available:
fillcolor
(Color) Color of the shadow. Default: {gray 0.8}
offset
(List of 2 floats or percentages) The shadow’s offset from the reference point of the text in user 
coordinates or as a percentage of the font size. Default: {5% -5%}
strikeout
(Boolean) Strikeout mode. Default: false
strokecolor
(Color) Stroke color of the text. Default: gray 0 (=black)
strokewidth
(Float, percentage, or keyword; only effective if textrendering is set to stroke text) Line width for outline 
text (in user coordinates or as a percentage of the fontsize). The keyword auto or the equivalent value 
0 uses a built-in default. Default: auto
textrendering
(Integer) Text rendering mode. Only the value 3 has an effect on Type 3 fonts (default: 0):
0
fill text
4
fill text and add it to the clipping path
1
stroke text (outline)
5
stroke text and add it to the clipping path
2
fill and stroke text
6
fill and stroke text and add it to the clipping path
3
invisible text
7
add text to the clipping path (not for Blocks)
textrise
(Float pr percentage) Text rise parameter. Percentages are based on fontsize. Default: 0
underline
(Boolean) Underline mode. Default: false
underline-
position
(Float, percentage, or keyword) Position of the stroked line for underlined text relative to the baseline. 
Percentages are based on fontsize. Default: auto
underline-
width
(Float, percentage, or keyword) Line width for underlined text. Percentages are based on fontsize. De-
fault: auto
wordspacing (Float or percentage) Word spacing. Percentages are based on fontsize. Default: 0
1. This property is required in Textline and Textflow Blocks; it will be enforced by the Block Plugin.
P
P
Documents you may be interested
Documents you may be interested