7.6  Image and Template Functions s 191
int PDF_open_CCITT(PDF *p,
const char *filename, int width, int height, int BitReverse, int K, int BlackIs1)
Deprecated, use PDF_load_image() with type = ccitt and the options width, height, 
bitreverse, K, and invert instead.
int PDF_open_image(PDF *p, const char *imagetype, const char *source, const char *data,
long length, int width, int height, int components, int bpc, const char *params)
Deprecated, use virtual files and PDF_load_image() with type = jpegccitt, or raw and the 
options width, height, components, bpc, mask, invert, reftype, and inline instead.
void PDF_place_image(PDF *p, int image, float x, float y, float scale)
Deprecated, use PDF_fit_image() instead.
Pdf to tiff quality - 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
program to convert pdf to tiff; .net pdf to tiff converter
Pdf to tiff quality - 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
file conversion pdf to tiff; convert multiple page pdf to tiff
192
Chapter 7:  API Reference for PDFlib, PDI, and PPS
7.7PDF Import (PDI) Functions
Note All functions described in this section require the additional PDF import library (PDI) which is 
not part of PDFlib Lite and PDFlib. Please visit our Web site for more information on obtaining 
PDI.
7.7.1Document and Page
int PDF_open_pdi(PDF *p, const char *filename, const char *optlist, int reserved)
Open a (disk-based or virtual) PDF document and prepare it for later use.
filename The name of the PDF file. Only 8-bit characters are supported in the PDF file 
name; Unicode or embedded null characters are not supported.
optlist An option list (see Section 3.1.4, »Option Lists«, page 44) specifying PDF open 
options according to Table 7.24.
reserved Reserved, must be 0.
Returns A document handle which can be used for processing individual pages of the document 
or for querying document properties. A return value of -1 (in PHP: 0) indicates that the 
PDF document couldn’t be opened. An arbitrary number of PDF documents can be 
opened simultaneously. The return value can be used until the end of the enclosing 
document scope.
Details In order to get more detailed information about the nature of a PDF import-related 
problem (wrong PDF file name, unsupported format, bad PDF data, etc.), set the 
pdiwarning parameter to true.
Scope object, document, page; in object scope a PDI document handle can only be used to query 
information from a PDF document.
Params See Table 7.27 and Table 7.28.
int PDF_open_pdi_callback(PDF *p, void *opaque, size_t filesize,
size_t (*readproc)(void *opaque, void *buffer, size_t size),
int (*seekproc)(void *opaque, long offset),
const char *optlist)
Open an existing PDF document from a custom data source and prepare it for later use.
opaque A pointer to some user data that might be associated with the input PDF docu-
ment. This pointer will be passed as the first parameter of the callback functions, and 
can be used in any way. PDI will not use the opaque pointer in any other way.
Table 7.24 4 Options for PDF_open_pdi()
key
type
explanation
password
string
(Maximum string length: 32 characters) The master password required to 
open a protected PDF document.
pdiwarning
boolean
Specifies whether or not this function will throw an exception in case of an 
error. Default is the value of the pdiwarning parameter (see Table 7.28
).
C# PDF File Compress Library: Compress reduce PDF size in C#.net
easily and quickly complete a high-quality PDF document compression compressing & decompression method, TIFF files compression C#.NET PDF Document Optimization.
convert pdf to tiff using c#; export pdf to tiff
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 online; program to automatically convert pdf to tiff
7.7  PDF Import (PDI) Functions s 193
filesize The size of the complete PDF document in bytes.
readproc A callback function which copies size bytes to the memory pointed to by 
buffer. If the end of the document is reached it may copy less data than requested. The 
function must return the number of bytes copied.
seekproc A callback function which sets the current read position in the document. 
offset denotes the position from the beginning of the document (0 meaning the first 
byte). If successful, this function must return 0, otherwise -1.
optlist An option list (see Section 3.1.4, »Option Lists«, page 44) specifying PDF open 
options according to Table 7.24.
Returns A document handle which can be used for processing individual pages of the document 
or for querying document properties. A return value of -1 indicates that the PDF docu-
ment couldn’t be opened. An arbitrary number of PDF documents can be opened simul-
taneously. The return value can be used until the end of the enclosing document scope.
Details This is a specialized interface for applications which retrieve arbitrary chunks of PDF 
data from some data source instead of providing the PDF document in a disk file or in 
memory.
Scope object, document, page; in object scope a PDI document handle can only be used to query 
information from a PDF document.
Params See Table 7.27 and Table 7.28.
Bindings Only available in the C binding.
void PDF_close_pdi(PDF *p, int doc)
Close all open PDI page handles, and close the input PDF document.
doc A valid PDF document handle retrieved with PDF_open_pdi*().
Details This function closes a PDF import document, and releases all resources related to the 
document. All document pages which may be open are implicitly closed. The document 
handle must not be used after this call. A PDF document should not be closed if more 
pages are to be imported. Although you can open and close a PDF import document an 
arbitrary number of times, doing so may result in unnecessary large PDF output files.
Scope object, document, page
Params See Table 7.27 and Table 7.28.
int PDF_open_pdi_page(PDF *p, int doc, int pagenumber, const char* optlist)
Prepare a page for later use with PDF_place_pdi_page().
doc A valid PDF document handle retrieved with PDF_open_pdi*().
pagenumber The number of the page to be opened. The first page has page number 1.
optlist An option list (see Section 3.1.4, »Option Lists«, page 44) specifying page op-
tions according to Table 7.25.
VB.NET Image: Robust OCR Recognition SDK for VB.NET, .NET Image
Once images and documents are loaded in VB.NET project, input quality will be enhanced with Images exported can be Png, Jpeg, Tiff, image-only PDF or Bmp.
pdf to tiff conversion online; how to convert pdf into tiff format
C# PDF Convert to Jpeg SDK: Convert PDF to JPEG images in C#.net
library component toolkit, C# developers can easily and quickly convert a large-size multi-page PDF document to a group of high-quality separate JPEG image
pdf to tiff; convert pdf to tiff multiple pages
194
Chapter 7:  API Reference for PDFlib, PDI, and PPS
Returns A page handle which can be used for placing pages with PDF_fit_pdi_page(). A return val-
ue of -1 (in PHP: 0) indicates that the page couldn’t be opened. The return value can be 
used until the end of the enclosing document scope.
Details In order to get more detailed information about a problem related to PDF import (un-
supported format, bad PDF data, etc.), set the pdiwarning parameter to true.
An arbitrary number of pages can be opened simultaneously. If the same page is 
opened multiply, different handles will be returned, and each handle must be closed ex-
actly once. Opening the same page more than once is not recommended because the ac-
tual page data will be copied to the output document more than once.
Scope document, page
Params See Table 7.27 and Table 7.28.
void PDF_close_pdi_page(PDF *p, int page)
Close the page handle, and free all page-related resources.
page A valid PDF page handle (not a page number!) retrieved with PDF_open_pdi_
page().
Details This function closes the page associated with the page handle identified by page, and re-
leases all related resources. page must not be used after this call.
Scope document, page
Params See Table 7.27 and Table 7.28.
void PDF_fit_pdi_page(PDF *p, int page, float x, float y, const char *optlist)
Place an imported PDF page at (x, y) with various options.
page A valid PDF page handle (not a page number!) retrieved with PDF_open_pdi_
page(). The page handle must not have been closed.
x, y The coordinates of the reference point in the user coordinate system where the 
page will be located, subject to various options.
optlist An option list (see Section 3.1.4, »Option Lists«, page 44) specifying placement 
details according to Table 7.23.
Details This function is similar to PDF_fit_image(), but operates on imported PDF pages instead. 
Most scaling and placement options discussed in Table 7.23 are supported for PDF pages, 
too.
Table 7.25 5 Options for PDF_open_pdi_page()
key
type
explanation
pdiusebox
keyword
Specifies which box dimensions to use for importing the page (see Section 
5.2.2, »Using PDI Functions with PDFlib«, page 116). Default is the value of 
the pdiusebox parameter (see Table 7.28
).
pdiwarning
boolean
Specifies whether or not this function will throw an exception in case of an 
error. Default is the value of the pdiwarning parameter (see Table 7.28
).
VB.NET PDF Convert to Jpeg SDK: Convert PDF to JPEG images in vb.
VB.NET Excel, VB.NET PowerPoint, VB.NET Tiff, VB.NET Able to Convert PDF to JPEG file in .NET WinForms Export high quality jpeg file from PDF in .NET framework.
convert multipage pdf to multipage tiff; convert pdf to tiff open source
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
3.pdf"; String outputFilePath = Program.RootPath + "\\" 3_optimized.pdf"; 'create optimizing Compression = PDFCompression.DCTDecode 'set quality level, only
convert pdf into tiff; how to convert pdf to tiff format
7.7  PDF Import (PDI) Functions s 195
Scope page, pattern, template, glyph
Params See Table 7.27 and Table 7.28.
PDF/X The document from which the page is imported must conform to the same PDF/X 
conformance level and must use the same output intent as the generated document.
void PDF_place_pdi_page(PDF *p, int page, float x, float y, float sx, float sy)
Deprecated, use PDF_fit_pdi_page() instead.
7.7.2Other PDI Processing
int PDF_process_pdi(PDF *p, int doc, int page, const char* optlist)
Process certain elements of an imported PDF document.
doc A valid PDF document handle retrieved with PDF_open_pdi*().
page If optlist requires a page handle (see Table 7.26), page must be a valid PDF page 
handle (not a page number!) retrieved with PDF_open_pdi_page(). The page handle must 
not have been closed. If optlist does not require any page handle, page must be -1.
optlist An option list (see Section 3.1.4, »Option Lists«, page 44) specifying processing 
options according to Table 7.26.
Returns The value 1 if the function succeeded, or an error code of -1 (in PHP: 0) if the function call 
failed.
Details The details of this function are determined by the options provided in optlist.
Scope document
Params See Table 7.28.
PDF/X The output intent for the generated document must be set either using this function 
with the copyoutputintent option, or by calling PDF_load_profile().
Table 7.26 6 Options for PDF_process_pdi()
key
type
explanation
action
1
1. Does not require a page handle.
keyword
Specifies the kind of PDF processing:
copyoutputintent: copy the PDF/X output intent of the imported 
document to the output document. The second and subsequent attempts 
to copy an output intent will be ignored.
pdiwarning
1
boolean
Specifies whether or not this function will throw an exception in case of an 
error. Default is the value of the pdiwarning parameter (see Table 7.28
).
VB.NET Image: RasterEdge JBIG2 Codec Image Control for VB.NET
control in VB.NET is capable of embedding compressed bitonal images into PDF files and decompress images from PDF files quickly with the smallest quality loss.
pdf to tiff converters; convert pdf file to tiff file
C# Create PDF from Tiff Library to convert tif images to PDF in C#
PDF files are created from tiff with high quality using .NET PDF SDK for C#.NET. Support to combine multiple page tiffs into one PDF file.
how to convert pdf file to tiff for; vb.net convert pdf to tiff
196
Chapter 7:  API Reference for PDFlib, PDI, and PPS
7.7.3Parameter Handling
float PDF_get_pdi_value(PDF *p, const char *key, int doc, int page, int reserved)
Get some PDI document parameter with numerical type.
key Specifies the name of the parameter to be retrieved, see Table 7.27 and Table 7.28.
doc A valid PDF document handle retrieved with PDF_open_pdi().
page A valid PDF page handle (not a page number!) retrieved with PDF_open_pdi_
page(). For keys which are not page-related page must be -1 (in PHP: 0).
reserved Currently unused, must be 0.
Returns The numerical value retrieved from the document.
Scope any
const char * PDF_get_pdi_parameter(
PDF *p, const char *key, int doc, int page, int reserved, int *len)
Get some PDI document parameter with string type.
key Specifies the name of the parameter to be retrieved, see Table 7.27 and Table 7.28.
doc A valid PDF document handle retrieved with PDF_open_pdi().
page A valid PDF page handle (not a page number!) retrieved with PDF_open_pdi_
page(). For keys which are not page-related page must be -1 (in PHP: 0).
reserved Currently unused, must be 0.
len A C-style pointer to an integer which will receive the length of the returned string 
in bytes (for Unicode strings: including the BOM, but excluding the terminating double-
null). This parameter is only required for C and C++, and not allowed in other language 
bindings.
Returns The string parameter retrieved from the document. Unicode info strings (/Info/<key>) 
will be returned with initial BOM and terminating double-null. Currently PDFlib does 
not construct a proper Unicode string object from document info keys containing Uni-
code text. If no information is available an empty string will be returned.
Table 7.27 7 Page-related values for PDF import
function
key
explanation
get_pdi_value
width
height
Get the width or height, respectively, of an imported page in 
default units. Cropping and rotation will be taken into account.
get_pdi_value
/Rotate
page rotation in degrees (0, 90, 180, or 270)
get_pdi_value
/CropBox,
/BleedBox,
/ArtBox,
/TrimBox
Query one of the box parameters of the page. The parameter 
name must be followed by a slash ’/’ character and one of llx, lly, 
urx, ury, for example: /CropBox/llx (see Section 3.2.2, »Page Sizes 
and Coordinate Limits«, page 55 for details). Note that these will 
not have the
/Rotate key applied, unlike the width and height values which 
already reflect any rotation which may be applied to the page.
7.7  PDF Import (PDI) Functions s 197
The contents of the string will be valid until the next call of this function, or the end 
of the surrounding object scope (whatever happens first).
Details This function gets some string parameter related to an imported PDF document, in 
some cases further specified by page and index. Table 7.28 lists relevant parameter com-
binations.
Bindings C and C++: The len parameter must be supplied.
Other bindings: The len parameter must be omitted; instead, a string object of appropri-
ate length will be returned.
Scope any
Table 7.28 8 Document-related parameters and values for PDF import
function
key
explanation
get_parameter
pdi
1
1. The page parameter must be -1 (in PHP: 0).
Returns the string true if the PDI library is attached (and not 
restricted to demo mode), and false otherwise. Scope: any, null
2
.
2. May be called with a PDF * argument of NULL or 0.
get_pdi_value
/Root/Pages/Count
1
total number of pages in the imported document
get_pdi_parameter
filename
1
name of the imported PDF file; if the file has been opened with 
PDF_open_pdi_callback() a dummy name will be returned.
get_pdi_parameter
/Info/<key>
1
Retrieves the string value of a key in the document info dictionary, 
e.g., /Info/Title. No conversion will be applied to the string. If the 
key cannot be found in the document an empty string will be 
returned. However, if pdiwarning is set to true, an exception will 
be thrown for a key that couldn’t be found.
get_pdi_parameter
pdfx
1
Retrieves the PDF/X conformance level of the imported document. 
The result is one of »PDF/X-1:2001« , »PDF/X-1a:2001«, »PDF/X-
3:2002«, »none«, or a string designating a later PDF/X 
conformance level (see Section 3.4, »PDF/X Support«, page 67).
get_pdi_value
version
1
PDF version number multiplied by 10, e.g. 14 for PDF 1.4
set_parameter
pdiwarning
1
This parameter can be used to obtain more detailed information 
about why a PDF or page couldn’t be opened. Default: false
true
Raise a nonfatal exception when the PDI function
fails. The information string supplied with the exception
may be useful in debugging import-related problems.
false
Do not raise an exception when the PDI function fails.
Instead, the function returns -1 (in PHP: 0) on error.
set_parameter
pdiusebox
1
This parameter determines which of the Box entries of a page will 
be used for determining an imported page’s size. Default: crop
media
Use the MediaBox (which is always present)
crop
Use the CropBox if present, else the MediaBox
bleed
Use the BleedBox if present, else the CropBox
trim
Use the TrimBox if present, else the CropBox
art
Use the ArtBox if present, else the CropBox
The pdiusebox parameter must be set before calling PDF_open_
pdi_page().
get_pdi_parameter
get_pdi_value
vdp/Blocks/<block>/
<property> or
vdp/Blocks/<block>/
Custom/<property>
Query standard and custom block properties (see Section 6.4, 
»Querying Block Names and Properties«, page 139). Only available 
in the PDFlib Personalization Server (PPS).
get_pdi_value
vdp/blockcount
Query the total number of blocks on the page.
198
Chapter 7:  API Reference for PDFlib, PDI, and PPS
7.8Block Filling Functions (PPS)
The PDFlib Personalization Server (PPS) offers dedicated functions for processing vari-
able data blocks of type Text, Image, and PDF. These blocks must be contained in the im-
ported PDF page, but will not be retained in the generated output. The imported page 
must have been placed on the output page before using any of the block filling func-
tions. When calculating the block position on the page, the block functions will take 
into account the scaling options provided to the most recent call to PDF_fit_pdi_page() 
with the respective PDF page handle. If only block processing is desired without actually 
placing the contents of the page on the output page (i.e., the imported page is only used 
as a container of blocks) the blind option of PDF_fit_pdi_page() can be used.
Note The block processing functions discussed in this section require the PDFlib Personalization 
Server (PPS). The PDFlib Block plugin for Adobe Acrobat is required for creating blocks in PDF 
templates. See Chapter 6 for more information about the PDFlib Block plugin.
int PDF_fill_textblock(PDF *p,
int page, const char *blockname, const char *text, int len, const char *optlist)
Fill a text block with variable data according to its properties.
page A valid PDF page handle for a page containing blocks.
blockname The name of the block.
text The text to be filled into the block, or an empty string if the default text is to be 
used.
len (C binding only) Length of text (in bytes) for strings which may contain null char-
acters. If len = 0 a null-terminated string must be provided.
optlist An option list (see Section 3.1.4, »Option Lists«, page 44) specifying filling de-
tails according to Table 7.29.
Returns -1 (in PHP: 0) if the named block doesn’t exist on the page, the block cannot be filled (e.g., 
due to font problems), or the block requires a newer PDFlib version for processing; 1 if 
the block could be processed successfully. Use the pdiwarning option to get more infor-
mation about the nature of the problem.
Details The supplied text will be formatted into the block, subject to the block’s properties. If 
text is empty the function will use the block’s default text if available, and silently re-
turn otherwise. This may be useful to take advantage of other block properties, such as 
fill or stroke color.
If the PDF document is found to be corrupt, this function will either throw an excep-
tion or return -1 subject to the pdiwarning parameter or option.
Scope page, template
Note This function is only available in the PDFlib Personalization Server (PPS).
7.8  Block Filling Functions (PPS) ) 199
int PDF_fill_imageblock(PDF *p,
int page, const char *blockname, int image, const char *optlist)
Fill an image block with variable data according to its properties.
page A valid PDF page handle for a page containing blocks.
blockname The name of the block.
image A valid image handle for the image to be filled into the block, or -1 if the default 
image is to be used.
optlist An option list (see Section 3.1.4, »Option Lists«, page 44) specifying filling de-
tails according to Table 7.29.
Returns -1 (in PHP: 0) if the named block doesn’t exist on the page, the block cannot be filled, or 
the block requires a newer PDFlib version for processing; 1 if the block could be pro-
cessed successfully. Use the pdiwarning option to get more information about the na-
ture of the problem.
Details The image referred to by the supplied image handle will be placed in the block, subject 
to the block’s properties. If image is -1 (in PHP: 0) the function will use the block’s default 
image if available, and silently return otherwise. 
If the PDF document is found to be corrupt, this function will either throw an excep-
tion or return -1 subject to the pdiwarning parameter or option.
Scope page, template
Note This function is only available in the PDFlib Personalization Server (PPS).
int PDF_fill_pdfblock(PDF *p,
int page, const char *blockname, int contents, const char *optlist)
Fill a PDF block with variable data according to its properties.
page A valid PDF page handle for a page containing blocks.
blockname The name of the block.
contents A valid PDF page handle for the PDF page to be filled into the block, or -1 if the 
default PDF page is to be used.
optlist An option list (see Section 3.1.4, »Option Lists«, page 44) specifying filling de-
tails according to Table 7.29.
Returns -1 (in PHP: 0) if the named block doesn’t exist on the page, the block cannot be filled, or 
the block requires a newer PDFlib version for processing; 1 if the block could be pro-
cessed successfully. Use the pdiwarning option to get more information about the na-
ture of the problem.
Details The PDF page referred to by the supplied page handle contents will be placed in the 
block, subject to the block’s properties. If contents is -1 (in PHP: 0) the function will use 
the block’s default PDF page if available, and silently return otherwise. 
If the PDF document is found to be corrupt, this function will either throw an excep-
tion or return -1 subject to the pdiwarning parameter or option.
200
Chapter 7:  API Reference for PDFlib, PDI, and PPS
Scope page, template
Note This function is only available in the PDFlib Personalization Server (PPS).
Table 7.29 9 Options for the PDF_fill_*block() functions
key
type
explanation
embedding
boolean
(Only for PDF_fill_textblock()) The embedding option for the font. Default: false.
encoding
string
(Required for PDF_fill_textblock() unless no text is supplied and the defaulttext 
property is used) Encoding for the font as required by PDF_load_font().
fontwarning boolean
(Only for PDF_fill_textblock()) Specifies whether or not this function will throw an 
exception in case of font-related problems. Default is the value of the pdiwarning 
option
.
imagewarning
boolean
(Only for PDF_fill_imageblock()) Specifies whether or not this function will throw 
an exception in case of image-related problems. Default is the value of the 
pdiwarning option.
pdiwarning
boolean
Specifies whether or not this function will throw an exception in case of an error 
in the PDF page containing the block or the page to be used as block contents. 
Default is the value of the pdiwarning parameter (see Table 7.28
).
textformat
string
(Only for PDF_fill_textblock() unless the defaulttext property is used) The format 
used to interpret the supplied text (see Section 4.5.2, »Unicode Text Formats«, 
page 91). Default: auto
almost any 
property 
name
various
Block property names and values (see Section 6.3, »Standard Properties for 
automated Processing«, page 135) which will be used to override those in the block 
definition. See Section 6.1.2, »Block Properties«, page 126, for details. The following 
block properties can not be overridden:
Name, Description, Locked, Subtype, Type
defaulttext, defaultimage, defaultpdf, defaultpdfpage
As an alternative to supplying the fontname property the font option can be used 
to supply a font handle (fontname will be ignored in this case).
Color properties support the following color space keywords: none, gray, rgb, 
cmyk, spot, spotname.
Documents you may be interested
Documents you may be interested