7.2  General Functions s 151
Scope Depends on key.
See also o PDF_get_pdi_value()
void PDF_set_value(PDF *p, const char *key, float value)
Set the value of some PDFlib parameter with numerical type.
key The name of the parameter to be set.
value The new value of the parameter to be set.
Scope Depends on key.
const char * PDF_get_parameter(PDF *p, const char *key, float modifier)
Get the contents of some PDFlib parameter with string type.
key The name of the parameter to be queried.
modifier An optional modifier to be applied to the parameter. Whether a modifier is 
required and what it relates to is explained in the various parameter tables. If the modi-
fier is unused it must be 0.
Returns The string value of the parameter. The returned string can be used until the end of the 
surrounding document scope. If no information is available an empty string will be re-
turned.
Scope Depends on key.
Bindings C and C++: C and C++ clients must not free the returned string. PDFlib manages all string 
resources internally.
See also o PDF_get_pdi_parameter()
void PDF_set_parameter(PDF *p, const char *key, const char *value)
Set some PDFlib parameter with string type.
key The name of the parameter to be set.
value The new value of the parameter to be set.
Scope Depends on key.
7.2.4PDFlib Virtual File System (PVF) Functions
void PDF_create_pvf(PDF *p,
const char *filename, int reserved, const void *data, size_t size, const char *optlist)
Create a named virtual read-only file from data provided in memory.
filename The name of the virtual file. This is an arbitrary string which can later be 
used to refer to the virtual file in other PDFlib calls.
Convert pdf to tiff 300 dpi online - 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
pdf to multipage tiff; pdf to tiff c# open source
Convert pdf to tiff 300 dpi online - 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 format; convert pdf into tiff
152
Chapter 7:  API Reference for PDFlib, PDI, and PPS
reserved (C language binding only.) Reserved, must be 0.
data A pointer to a memory buffer containing the data comprising the virtual file.
size (C language binding only) The length in bytes of the memory block containing the 
data.
optlist An option list (see Section 3.1.4, »Option Lists«, page 44) according to Table 7.4.
Details The virtual file name can be supplied to any API function which use files. Some of these 
functions may set a lock on the virtual file until the data is no longer needed. Virtual 
files will be kept in memory until they are deleted explicitly with PDF_delete_pvf(), or 
automatically in PDF_delete().
If filename refers to an existing virtual file an exception will be thrown. This function 
does not check whether filename is already in use for a regular disk file.
Unless the copy option has been supplied, the caller must not modify or free (delete) 
the supplied data before a corresponding successful call to PDF_delete_pvf(). Not obey-
ing to this rule will most likely result in a crash.
Scope any
int PDF_delete_pvf(PDF *p, const char *filename, int reserved)
Delete a named virtual file and free the associated data structures (but not the actual 
contents).
filename The name of the virtual file as supplied to PDF_create_pvf().
reserved (C language binding only.) Reserved, must be 0.
Returns -1 (in PHP: 0) if the corresponding virtual file exists but is locked, and 1 otherwise.
Details If the file isn’t locked, PDFlib will immediately delete the data structures associated with 
filename. If filename does not refer to a valid virtual file this function will silently do 
nothing. After successfully calling this function filename may be reused. All virtual files 
will automatically be deleted in PDF_delete().
The detailed semantics depend on whether or not the copy option has been supplied 
to the corresponding call to PDF_create_pvf(): If the copy option has been supplied, both 
the administrative data structures for the file and the actual file contents (data) will be 
freed; otherwise, the contents will not be freed, since the client is supposed to do so.
Scope any
Table 7.4 4 Options for PDF_create_pvf().
option
type
description
copy
boolean
PDFlib will immediately create an internal copy of the supplied data. In this case 
the caller may dispose of the supplied data immediately after this call. The copy 
option will automatically be set to true in the COM, .NET, and Java bindings 
(default for other bindings: false). In other language bindings the data will not be 
copied unless the copy option is supplied.
C# PDF File Compress Library: Compress reduce PDF size in C#.net
compressing & decompression method, TIFF files compression and Convert smooth lines to curves. Program.RootPath + "\\" 3_optimized.pdf"; // create optimizing
pdf to tiff open source; how to convert pdf file to tiff format
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
Convert smooth lines to curves. outputFilePath = Program.RootPath + "\\" 3_optimized.pdf"; 'create optimizing with resolution higher than 300 dpi to 150 dpi
multipage pdf to multipage tiff; convert pdf to tiff
7.2  General Functions s 153
7.2.5Exception Handling
Table 7.5 lists relevant parameters and values for this section.
int PDF_get_errnum(PDF *p)
Get the number of the last thrown exception, or the reason of a failed function call.
Returns The number of an exception, or the reason code of the the most recently called function 
which failed with an error code.
Scope Between an exception thrown by PDFlib and PDF_delete(). Alternatively, this function 
may be called after a function returned a -1 (in PHP: 0) error code, but before calling any 
other function except those listed in Section 7.2.5, »Exception Handling«, page 153.
Bindings In the Java and C++ bindings this method is also available as get_errnum( ) in the 
PDFlibException object.
const char *PDF_get_errmsg(PDF *p)
Get the descriptive text of the last thrown exception, or the reason of a failed function 
call.
Returns Text containing the description of the last exception thrown, or the reason why the 
most recently called function failed with an error code.
Scope Between an exception thrown by PDFlib and PDF_delete(). Alternatively, this function 
may be called after a function returned a -1 (in PHP: 0) error code, but before calling any 
other function except those listed in Section 7.2.5, »Exception Handling«, page 153.
Bindings In the Java and C++ bindings this method is also available as getMessage( ) in the 
PDFlibException object.
const char *PDF_get_apiname(PDF *p)
Get the name of the API function which threw the last exception or failed.
Returns The name of the function which threw an exception, or the name of the most recently 
called function which failed with an error code.
Scope Between an exception thrown by PDFlib and PDF_delete(). Alternatively, this function 
may be called after a function returned a -1 (in PHP: 0) error code, but before calling any 
other function except those listed in Section 7.2.5, »Exception Handling«, page 153.
Bindings In the Java and C++ bindings this method is also available as get_apiname( ) in the 
PDFlibException object.
Table 7.5 5 Parameters and values for exception handling
function
key
explanation
set_parameter warning
Enable or suppress warnings (nonfatal exceptions). Possible values are true and 
false. Scope: any. Default: true
C# PDF Convert to Images SDK: Convert PDF to png, gif images in C#
Support exporting PDF to multiple image forms, including Jpg, Png, Bmp, Gif, Tiff, Bitmap, .NET Graphics, and Description: Convert all the PDF pages to
pdf to tiff quality; file conversion pdf to tiff
VB.NET PDF Convert to Images SDK: Convert PDF to png, gif images
render and convert PDF document to TIFF and vector page As PDFPage = doc.GetPage( 0) ' Convert the first PDFDocument(inputFilePath) ' Get the first page of PDF.
c# convert pdf to tiff; convert pdf file to tiff online
154
Chapter 7:  API Reference for PDFlib, PDI, and PPS
void *PDF_get_opaque(PDF *p)
Fetch the opaque application pointer stored in PDFlib.
Details This function returns the opaque application pointer stored in PDFlib which has been 
supplied in the call to PDF_new2(). PDFlib never touches the opaque pointer, but sup-
plies it unchanged to the client. This may be used in multi-threaded applications for 
storing private thread-specific data within the PDFlib object. It is especially useful for 
thread-specific exception handling.
Scope any
Bindings Only available in the C and C++ bindings.
C# Word - Render Word to Other Images
Online C# Tutorial for How to Convert Word to DOCXPage page = (DOCXPage)doc.GetPage( 0); // Convert the first page Render the page with a resolution of 300 dpi.
pdf to tiff converter for; pdf to tiff online converter
C# powerpoint - Render PowerPoint to Other Images
Online C# Tutorial for How to Convert PowerPoint to Raster page = (PPTXPage)doc.GetPage( 0); // Convert the first Render the page with a resolution of 300 dpi.
pdf to tiff c#; pdf to tiff batch converter
7.3  Text Functions s 155
7.3Text Functions
7.3.1Font Handling
Table 7.6 lists relevant parameters and values for this section.
Table 7.6 6 Parameters and values for the font functions (see Section 7.2.3, »Parameter Handling«, page 150)
function
key
explanation
set_parameter FontAFM
FontPFM
FontOutline
Encoding
HostFont
The corresponding resource file line as it would appear for the respective category 
in a UPR file (see Section 3.1.6, »Resource Configuration and File Searching«, page 
47). Multiple calls add new entries to the internal list. (See also prefix and 
resourcefile in Table 7.2). Scope: any.
get_value
font
Return the identifier of the current font which must have been set with PDF_
setfont( ). Scope: page, pattern, template, glyph.
get_value
fontmaxcode Return the number of valid glyph ids for the font identified by the modifier. Scope: 
any.
get_parameter
fontname
The name of the current font which must have been previously set with PDF_
setfont( ). Scope: page, pattern, template, glyph.
get_parameter
fontencoding The name of the encoding or CMap used with the current font. A font must have 
been previously set with PDF_setfont( ). Scope: page, pattern, template, glyph.
get_value
fontsize
Return the size of the current font which must have been previously set with PDF_
setfont( ). Scope: page, pattern, template, glyph.
get_parameter
fontstyle
The style of the current font, which resembles the fontstyle option (normal, bold, 
italic, or bolditalic). Scope: page, pattern, template, glyph.
get_value
capheight
ascender
descender
Return metrics information for the font identified by the modifier. See Section 4.6, 
»Text Metrics, Text Variations, and Box Formatting«, page 95 for more details. The 
values are measured in fractions of the font size, and must therefore be multiplied 
by the desired font size. Scope: any.
set_parameter fontwarning
If set to false, PDF_load_font() returns -1 (in PHP: 0) if the font/encoding combi-
nation cannot be loaded (instead of throwing an exception). Default: true. Scope: 
any.
get_value
monospace
Returns the value of the monospace option for the current font if it has been set, 
and 0 otherwise. Scope: page, pattern, template, glyph.
set_value
subsetlimit
Disables font subsetting if the document uses more than the given percentage of 
characters in the font. Default value: 100 percent. Scope: any.
set_value
subsetminsize
Subsetting will only be applied to fonts above this size in Kilobyte (see Section 4.3, 
»Font Embedding and Subsetting«, page 80). Default: 100 KB. Scope: any.
set_parameter auto-
subsetting
Controls the automatic activation of font subsetting for TrueType and OpenType 
fonts (see Section 4.3, »Font Embedding and Subsetting«, page 80). Default: true. 
Scope: any.
set_parameter
autocidfont
Controls the automatic conversion of TrueType fonts with encodings other than 
macroman and winansi to CID fonts (see Section 4.3, »Font Embedding and 
Subsetting«, page 80). Default: true. Scope: any.
set_parameter
unicodemap Controls the generation of ToUnicode CMaps (see Section 4.5.1, »Unicode for Page 
Descriptions«, page 90). Default: true. Scope: any.
VB.NET Image: Generate GS1-128/EAN-128 Barcode on Image & Document
resolution barcode.Rotate = Rotate.Rotate0 'set rotate barcode.DrawBarcode(reImage, 300, 450) 'draw Its supported document types are PDF, Word and TIFF.
convert pdf file to tiff file; reader convert pdf to tiff
C# Excel - Render Excel to Other Images
Online C# Tutorial for How to Convert Excel to XLSXPage page = (XLSXPage)doc.GetPage( 0); // Convert the first Render the page with a resolution of 300 dpi.
convert pdf to single page tiff; pdf to tiff converter c#
156
Chapter 7:  API Reference for PDFlib, PDI, and PPS
int PDF_load_font(PDF *p,
const char *fontname, int len, const char *encoding, const char *optlist)
Search for a font, and prepare it for later use.
fontname The real or alias name of the font. It will be used to find font data according 
to the description in Section 4.3.1, »How PDFlib Searches for Fonts«, page 80. The font 
name can be encoded in ASCII, UTF-16, or UTF-8 with initial BOM. The latter two are use-
ful for localized host font names. Case is significant. In C fontname must not contain 
null characters unless the len parameter is different from 0.
len (C language binding only) Length of fontname in bytes for strings which may con-
tain null characters. If len = 0 a null-terminated string must be provided.
encoding The encoding to be used with the font, which must be one of the following:
>one of the predefined 8-bit encodings winansi, macroman, macroman_euro, ebcdic, 
pdfdoc, iso8859-X, cpXXXX, or U+XXXX;
>host or auto for an automatically selected encoding;
>the name of a  user-defined encoding loaded from file or defined via PDF_encoding_
set_char();
>unicode for Unicode-based addressing;
>glyphid for glyph id addressing;
>builtin to select the font’s internal encoding;
>the name of a standard CMap. In this case fontname must be the name of a standard 
CJK font; custom CJK fonts are only supported with unicode encoding (see Section 4.7, 
»Chinese, Japanese, and Korean Text«, page 100);
>an encoding name known to the operating system (not available on all platforms).
Care must be taken to choose an encoding which is compatible with the font, and 
matches the available input and desired output. Review Section 4.4, »Encoding Details«, 
page 84, for more details. Case is significant for encoding.
optlist An option list (see Section 3.1.4, »Option Lists«, page 44) according to Table 7.7.
Returns A font handle for later use with PDF_setfont(). The behavior of this function changes 
when the fontwarning parameter or option is set to false. In this case the function re-
turns an error code of -1 (in PHP: 0) if the requested font/encoding combination cannot 
be loaded, and does not throw an exception. However, exceptions will still be thrown 
when bad parameters are supplied.
The returned number – the font handle – doesn’t have any significance to the user 
other than serving as an argument to PDF_setfont() and related functions. In particular, 
requesting the same font/encoding combination in different documents may result in 
different font handles.
When calling this function again with the same font name the same font handle as 
in the first call will be returned unless a different encoding parameter or fontstyle option 
has been supplied.
Details This function prepares a font for later use with PDF_setfont(). The metrics will be loaded 
from memory or from a (virtual or disk-based) metrics file. If the requested font/encod-
ing combination cannot be used due to configuration problem (e.g., a font, metrics, or 
encoding file could not be found, or a mismatch was detected), an exception will be 
VB.NET Image: Barcode Generator to Add UPC-A to Image, TIFF, PDF &
SaveDocumentFile(doc, "c:/upc-a.pdf", New PDFEncoder()). creator to create barcode on Tiff document. SupSpace = 15F barcode.DrawBarcode(reImage, 300, 450) 'draw
how to convert pdf to tiff format; how to convert pdf to tiff file
VB.NET Image: VB.NET Sample Code to Draw EAN-13 Barcode on Image
REFile.SaveDocumentFile(doc, "c:/ean13.pdf", New PDFEncoder()). EAN-13 Barcode Image into TIFF in VB SupSpace = 15; barcode.DrawBarcode(reImage, 300, 450) 'draw
online pdf to tiff; change pdf to tiff
7.3  Text Functions s 157
thrown unless the fontwarning parameter is set to false. Otherwise, the value returned 
by this function can be used as font argument to other font-related functions.
Scope document, page, pattern, template, glyph
Params See Table 7.6.
PDF/X If PDF/X-1, PDF/X-1a, or PDF/X-3 output is generated the embedding option must be true.
Table 7.7 7 Options for PDF_load_font(). If the same font is loaded multiply with different options, only the 
first set of options will be processed. Conflicting options (except fontwarning) in subseequent calls will be 
ignored.
option
type
description
auto-
subsetting
boolean
Dynamically decide whether or not the font will be subset, subject to the 
subsetlimit and subsetminsize parameters and the actual usage of glyphs. This 
option will be ignored when the subsetting option has been supplied. Default: the 
value of the global autosubsetting parameter.
autocidfont
boolean
If true, TrueType fonts with 8-bit encoding except winansi, macroman, builtin and 
OpenType fonts without glyph names will automatically be stored as CID fonts. 
This avoids problems with certain non-accessible glyphs outside winansi 
encoding. Default: the value of the global autocidfont parameter.
embedding
boolean
Controls whether or not the font will be embedded. This does not have any effect 
on Type 3 fonts. If a font is to be embedded, the font outline file must be available 
in addition to the metrics information (this is irrelevant for TrueType and 
OpenType fonts), and the actual font outline definition will be included in the PDF 
output. If a font is not embedded, only general information about the font is 
included in the PDF output. Default: false.
fontstyle
keyword
Controls the creation of artificial font styles. These work only for TrueType and 
OpenType fonts which are not embedded (see Section 4.6.3, »Text Variations«, 
page 97). Possible keywords are normal, bold, italic, bolditalic. Default: normal.
fontwarning boolean
If true, an exception will be thrown when the requested font/encoding 
combination cannot be loaded; If false an error code will be returned. (The 
encoding search is under control of the fontwarning parameter, but not under 
control of the fontwarning option.) Default: the value of the global fontwarning 
parameter.
kerning
boolean
Controls whether or not kerning values will be read from the font (see Section 4.6, 
»Text Metrics, Text Variations, and Box Formatting«, page 95
)
. Default: false.
monospace
integer 
1...2048
Forces all glyphs in the font to use the constant width given in the integer value 
(measured in the font coordinate system: 1000 units equal the font size). Default: 
absent, meaning the metrics information from the font will be used.
subsetlimit
float
Font subsetting will be disabled if the percentage of glyphs used in the document 
related to the total number of glyphs in the font exceeds the provided percentage. 
Default: the value of the global subsetlimit parameter.
subsetminsize
float
Font subsetting will be disabled if the size of the original font file is less than the 
provided value in KB. Default: the value of the global subsetminsize parameter.
subsetting
boolean
Controls whether or not the font will be subset, subject to the total number of 
glyphs used in the document and the values of the subsetlimit and subsetminsize 
options (see Section 4.3, »Font Embedding and Subsetting«, page 80). Default: 
false.
unicodemap
boolean
Controls the generation of ToUnicode CMaps (see Section 4.5.1, »Unicode for Page 
Descriptions«, page 90). Default: true.
158
Chapter 7:  API Reference for PDFlib, PDI, and PPS
int PDF_findfont(PDF *p, const char *fontname, const char *encoding, int embed)
Search for a font, and prepare it for later use. PDF_load_font() is recommended.
fontname See PDF_load_font().
encoding See PDF_load_font().
embed See embedding option of PDF_load_font(): 1 is equivalent to embedding=true.
Returns See PDF_load_font().
Details See PDF_load_font().
Scope document, page, pattern, template, glyph
Params See Table 7.6.
PDF/X If PDF/X-1, PDF/X-1a, or PDF/X-3 output is generated, embed must be 1.
void PDF_setfont(PDF *p, int font, float fontsize)
Set the current font in the given size.
font A font handle returned by PDF_findfont() or PDF_load_font().
fontsize Size of the font, measured in units of the current user coordinate system. The 
font size must not be 0; negative font size will result in mirrored text relative to the cur-
rent transformation matrix.
Details The font must be set on each page before drawing any text. Font settings will not be re-
tained across pages. The current font can be changed an arbitrary number of times per 
page.
Scope page, pattern, template, glyph
Params See Table 7.6. This function automatically sets the leading parameter to fontsize.
7.3.2User-defined (Type 3) Fonts
void PDF_begin_font(PDF *p, char *fontname, int reserved,
float a, float b, float c, float d, float e, float f, const char *optlist)
Start a type 3 font definition.
fontname The name under which the font will be registered, and can later be used 
with PDF_load_font().
reserved (C language binding only.) Reserved, must be 0.
a, b, c, d, e, f The elements of the font matrix. This matrix defines the coordinate sys-
tem in which the glyphs will be drawn. The six floating point values make up a matrix 
in the same way as in PostScript and PDF (see references). In order to avoid degenerate 
transformations, a*d must not be equal to b*c.
A typical font matrix for a 1000x1000 coordinate system is [0.001, 0, 0, 0.001, 0, 0].
optlist An option list (see Section 3.1.4, »Option Lists«, page 44) according to Table 7.8.
7.3  Text Functions s 159
Details The font may contain an arbitrary number of glyphs, but only 256 glyphs can be access-
ed via an encoding. The defined font can be used until the end of the current document 
scope.
Scope document; this function starts font scope, and must always be paired with a matching 
PDF_end_font() call.
void PDF_end_font(PDF *p)
Terminate a type 3 font definition.
Scope font; this function terminates font scope, and must always be paired with a matching 
PDF_begin_font() call.
void PDF_begin_glyph(PDF *p,
char *glyphname, float wx, float llx, float lly, float urx, float ury)
Start a type 3 glyph definition.
glyphname The name of the glyph. This name must be used in any encoding which 
will be used with the font. Glyph names within a font must be unique.
wx The width of the glyph in the glyph coordinate system, as specified by the font’s 
matrix.
llx, lly, urx, ury If the font’s colorized option is false (which is default), the coordinates 
of the lower left and upper right corners of the glyph’s bounding box. The bounding box 
values must be correct in order to avoid problems with PostScript printing. If the font’s 
colorized option is true, all four values must be 0.
Details The glyphs in a font can be defined using text, graphics, and image functions. Images, 
however, can only be used if the font’s colorized option is true, or the image has been 
opened with the mask option. It is strongly suggested to use the inline image feature 
(see Section 5.1.1, »Basic Image Handling«, page 109) for defining bitmaps in Type 3 
fonts.
Since the complete graphics state will be inherited when the character is drawn, the 
glyph definition should explicitly set any aspect of the graphics state which is relevant 
for the glyph definition (e.g., linewidth).
Scope font; this function starts glyph scope, and must always be paired with a matching PDF_
end_glyph() call.
Table 7.8 8 Options for PDF_begin_font()
option
type
description
colorized
boolean
If true, the font may explicitly specify the color of individual characters. If false, all 
characters will be drawn with the current color, and the glyph definitions must 
not contain any color operators or images other than masks. Default: false.
160
Chapter 7:  API Reference for PDFlib, PDI, and PPS
void PDF_end_glyph(PDF *p)
Terminate a type 3 glyph definition.
Scope glyph; this function terminates glyph scope, and must always be paired with a matching 
PDF_begin_glyph() call.
7.3.3Encoding Definition
void PDF_encoding_set_char(PDF *p,
const char *encoding, int slot, const char *glyphname, int uv)
Add a glyph name to a custom encoding.
encoding The name of the encoding. This is the name which must be used with PDF_
load_font(). The encoding name must be different from any built-in encoding and all 
previously used encodings.
slot The position of the character in the encoding to be defined, with 0<=slot<=255. A 
particular slot must only be filled once within a given encoding.
glyphname The character’s name.
uv The character’s Unicode value.
Details This function can be called multiply to define up to 256 character slots in an encoding. 
More characters may be added to a particular encoding until it has been used for the 
first time; otherwise an exception will be raised. Not all code points must be specified; 
undefined slots will be filled with .notdef.
There are three possible combinations of glyph name and Unicode value:
>glyphname supplied, uv=0: this parallels an encoding file without Unicode values;
>uv suppliedbut no glyphname supplied: this parallels a codepage file;
>glyphname and uv supplied: this parallels an encoding file with Unicode values;
The defined encoding can be used until the end of the current object scope.
Scope object, document, page, pattern, template, path, font, glyph
7.3.4Text Output
Note All text supplied to the functions in this section must match the encoding selected with PDF_
load_font(). This applies to 8-bit text as well as Unicode or other encodings selected via a 
CMap. Due to restrictions in Acrobat, text strings must not exceed 32KB in length.
Table 7.9 lists relevant parameters and values for this section.
void PDF_set_text_pos(PDF *p, float x, float y)
Set the current text position.
x, y The current text position to be set.
Documents you may be interested
Documents you may be interested