best pdf library c# : Extracting data from pdf to excel application software tool html windows web page online PDFlib-manual19-part1876

7.6  Image and Template Functions 191
void PDF_close_image(PDF *p, int image)
Close an image.
image A valid image handle retrieved with PDF_load_image( ).
Details This function only affects PDFlib’s associated internal image structure. If the image has 
been opened from file, the actual image file is not affected by this call since it has al-
ready been closed at the end of the corresponding PDF_load_image( ) call. An image han-
dle cannot be used any more after it has been closed with this function, since it breaks 
PDFlib’s internal association with the image.
Scope document, page, font; must always be paired with a matching call to PDF_load_image( ) 
unless the inline option has been used.
void PDF_fit_image(PDF *p, int im, float x, float y, const char *optlist)
Place an image or template at (x, y) with various options.
image A valid image or template handle retrieved with one of the PDF_load_image*( ) 
or PDF_begin_template( ) functions.
x, y The coordinates of the reference point in the user coordinate system where the 
image or template 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.24.
Details The image or template (collectively referred to as an object below) will be placed relative 
to the reference point (x, y). By default, the lower left corner of the object will be placed 
at the reference point. However, the orientate, boxsize, position, and fitmethod options 
can modify this behavior. By default, an image will be scaled according to its resolution 
value(s). This behavior can be modified with the dpi, scale, and fitmethod options.
Scope page, pattern, template, glyph (only if the Type 3 font’s colorized option is true, or if the 
image is a mask); this function can be called an arbitrary number of times on arbitrary 
pages, as long as the image handle has not been closed with PDF_close_image( ).
rendering-
intent
keyword
The rendering intent for the image. See Table 3.8 for a list of possible keywords 
and their meaning. Default: the value of the global renderingintent parameter.
reftype
keyword
(Deprecated; only for imagetype = ccitt, jpeg, and raw) One of direct (for image 
data to be read from a file), fileref or url to specify image data via a reference to a 
file on the viewing system or an URL. The following options are required for 
reftype=url or fileref: width, height, components, bpc; the following options will 
be ignored for reftype=url or fileref: bitreverse, honoriccprofile, inline. Default: 
direct.
width
integer
(Only for imagetype = raw and ccitt, and required in this case) The width of the 
image in pixels.
Table 7.23 Options for PDF_load_image( )
key
type
explanation
Extracting data from pdf to excel - extract form data from PDF in C#.net, ASP.NET, MVC, Ajax, WPF
Help to Read and Extract Field Data from PDF with a Convenient C# Solution
how to extract data from pdf to excel; collect data from pdf forms
Extracting data from pdf to excel - VB.NET PDF Form Data Read library: extract form data from PDF in vb.net, ASP.NET, MVC, Ajax, WPF
Convenient VB.NET Solution to Read and Extract Field Data from PDF
extract data from pdf using java; pdf form field recognition
192
Chapter 7:  API Reference for PDFlib, PDI, and PPS
Table 7.24 Options for PDF_fit_image( ) and PDF_fit_pdi_page( )
key
type
explanation
adjustpage
boolean
Adjust the dimensions of the current page to the object such that the upper right 
corner of the page coincides with the upper right corner of the object plus (x, y). 
With the value 0 for the position option the following useful cases shall be noted:
x >= 0 and y >= 0: the object is surrounded by a white margin. This margin has 
thickness y in horizontal direction and thickness x in vertical direction.
x < 0 and y < 0: horizontal and vertical strips will be cropped from the image.
This option is only effective in scope page, and must not be used when the 
topdown parameter has been set to true. Default: false.
blind
boolean
If true, all positioning and scaling calculations will be done, but the object will not 
be placed on the output page. This is useful for processing the blocks on a page 
without actually using the page’s contents. Default: false.
boxsize
float list
Two values specifying the width and height of a box, relative to which the object 
will be placed and possibly scaled. The lower left corner of the box coincides with 
the reference point (x, y). Placing the image and fitting it into the box is controlled 
by the position and fitmethod options. If width = 0, only the height is considered; 
If height = 0, only the width is considered. In these cases the object will be placed 
relative to the vertical line from (x, y) to (x, y+height), or the horizontal line from 
(x, y) to (x+width, y), respectively. Default: {0 0}.
dpi
float list
One or two values specifying the desired image resolution in pixels per inch in 
horizontal and vertical direction. If a single value is supplied it will be used for 
both directions. With the value o the image’s internal resolution will be used if 
available, or 72 dpi otherwise. As an alternative to the value 0, the keyword 
internal can be supplied. This option will be ignored for templates and PDF pages, 
or if the fitmethod option has been supplied with one of the keywords meet, slice, 
or entire. Default: internal.
fitmethod
keyword
Specifies the method used to fit the object into the specified box. This option will 
be ignored if no box has been specified. Default: nofit.
nofit
Position the object only, without any scaling or clipping.
clip
Position the object, and clip it at the edges of the box.
meet
Position the object according to the position option, and scale it such
that it entirely fits into the box while preserving its aspect ratio.
Generally at least two edges of the object will meet the corresponding
edges of the box. The dpi and scale options are ignored.
auto
This method tries to fit the object into the box automatically. In detail:
Same as nofit if the object fits into the box. Otherwise a scaling factor is
calculated such that the object fits into the box. If this factor is larger
than 0.75 the object is distorted to fit intothe box, otherwise the meet
method is applied.
slice
Position the object according to the position option, and scale it such
that it entirely covers the box, while preserving the aspect ratio and
making sure that at least one dimension of the object is fully contained
in the box. Generally parts of the object’s other dimension will extend
beyond the box, and will therefore be clipped. The dpi and scale options
are ignored.
entire
Position the object according to the position option, and scale it such
that it entirely covers the box. Generally this method will distort the
object. The dpi and scale options are ignored.
orientate
keyword
Specifies the desired orientation of the object when it is placed. Default: north.
north
upright
east
pointing to the right
south
upside down
west
pointing to the left
C# PDF Text Extract Library: extract text content from PDF file in
Free online source code for extracting text from adobe PDF document in C#.NET class. Enable extracting PDF text to another PDF file, TXT and SVG formats.
filling out pdf forms with reader; extract table data from pdf to excel
C# PDF Image Extract Library: Select, copy, paste PDF images in C#
C# programming sample for extracting all images from PDF. // Open a document. C# programming sample for extracting all images from a specific PDF page.
edit pdf form in reader; how to fill out pdf forms in reader
7.6  Image and Template Functions 193
7.6.2 Templates
int PDF_begin_template(PDF *p, float width, float height)
Start a template definition. 
width, height The dimensions of the template’s bounding box in points.
Returns A template handle which can be used in subsequent image-related calls, especially PDF_
fit_image( ). There is no error return.
Details Hypertext functions and functions for opening images must not be used during a 
template definition, but all text, graphics, and color functions can be used.
Scope document; this function starts template scope, and must always be paired with a 
matching PDF_end_template( ) call.
void PDF_end_template(PDF *p)
Finish a template definition.
Scope template; this function terminates template scope, and must always be paired with a 
matching PDF_begin_template( ) call.
7.6.3 Deprecated Functions
int PDF_open_image_file(PDF *p,
const char *imagetype, const char *filename, const char *stringparam, int intparam)
Deprecated, use PDF_load_image( ) with the colorize, ignoremask, invert, mask, masked, and 
page options instead.
position
float list
One or two values specifying the position of the reference point (x, y) within the 
object with {0 0} being the lower left corner of the object, and {100 100} the upper 
right corner. If the boxsize option has been specified, the position option also 
specifies the positioning of the box. The values are expressed as percentages of the 
object’s width and height. If both percentages are equal it is sufficient to specify a 
single float value. Some examples: 0 or {0 0} means lower left corner; {50 100} 
means middle of the top edge; 50 or {50 50} means the center of the object. 
Default: 0.
rotate
float
Rotate the coordinate system, using the reference point as center and the speci-
fied value as rotation angle in degrees. This results in the box and the object being 
rotated. The rotation will be reset when the object has been placed. Default: 0.
scale
float list
Scale the object in horizontal and vertical direction by the specified scaling factors 
(not percentages). If both factors are equal it is sufficient to specify a single float 
value. This option will be ignored if the fitmethod option has been supplied with 
one of the keywords meet, slice, or entire. Default: 1
Table 7.24 Options for PDF_fit_image( ) and PDF_fit_pdi_page( )
key
type
explanation
VB.NET PDF Page Extract Library: copy, paste, cut PDF pages in vb.
VB.NET PDF - PDF File Pages Extraction Guide. Detailed VB.NET Guide for Extracting Pages from Microsoft PDF Doc. Free PDF document
extract data from pdf form; how to make a pdf form fillable in reader
VB.NET PDF Text Extract Library: extract text content from PDF
Enable extracting PDF text to another PDF file, and other formats such as TXT and SVG form. OCR text from scanned PDF by working with XImage.OCR SDK.
change font size pdf form reader; how to save editable pdf form in reader
194
Chapter 7:  API Reference for PDFlib, PDI, and PPS
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 = jpeg, ccitt, 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.
VB.NET PDF Image Extract Library: Select, copy, paste PDF images
Sample for extracting all images from PDF in VB.NET program. Sample for extracting an image from a specific position on PDF in VB.NET program.
extract data from pdf to excel online; how to type into a pdf form in reader
How to C#: Basic SDK Concept of XDoc.PDF for .NET
And PDF file text processing like text writing, extracting, searching, etc., are to load a PDF document from file or query data and save the PDF document.
using pdf forms to collect data; extract pdf data to excel
7.7  PDF Import (PDI) Functions 195
7.7 PDF 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.1 Document 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.25.
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.28 and Table 7.29.
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.25 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.29
).
VB.NET PDF: Basic SDK Concept of XDoc.PDF
And PDF file text processing like text writing, extracting, searching, etc., are to load a PDF document from file or query data and save the PDF document.
exporting data from pdf to excel; sign pdf form reader
C# PDF insert text Library: insert text into PDF content in C#.net
functions to PDF document imaging application, such as inserting text to PDF, deleting text from PDF, searching text in PDF, extracting text from PDF, and so on
extracting data from pdf forms to excel; extract data from pdf to excel
196
Chapter 7:  API Reference for PDFlib, PDI, and PPS
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.25.
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.28 and Table 7.29.
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.28 and Table 7.29.
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.26.
C# PDF Page Extract Library: copy, paste, cut PDF pages in C#.net
NET application. Online C# source code for extracting, copying and pasting PDF pages in C#.NET console class. Support .NET WinForms
how to fill pdf form in reader; pdf data extraction open source
7.7  PDF Import (PDI) Functions 197
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.28 and Table 7.29.
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.28 and Table 7.29.
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.24.
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.24 are supported for PDF pag-
es, too.
Table 7.26 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 118). Default is the value of 
the pdiusebox parameter (see Table 7.29
).
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.29
).
198
Chapter 7:  API Reference for PDFlib, PDI, and PPS
Scope page, pattern, template, glyph
Params See Table 7.28 and Table 7.29.
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.2 Other 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.27), 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.27.
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.29.
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.27 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.29
).
7.7  PDF Import (PDI) Functions 199
7.7.3 Parameter 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.28 and Table 7.29.
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.28 and Table 7.29.
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.28 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.
200
Chapter 7:  API Reference for PDFlib, PDI, and PPS
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.29 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.29 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 141). Only available 
in the PDFlib Personalization Server (PPS).
get_pdi_value
vdp/blockcount
Query the total number of blocks on the page.
Documents you may be interested
Documents you may be interested