asp.net pdf viewer disable save : Create pdf thumbnail image control software platform web page winforms wpf web browser PDFlib-7-tutorial3-part395

2.5  Java Binding g 31
2.5Java Binding
Java supports a portable mechanism for attaching native language code to Java pro-
grams, the Java Native Interface (JNI). The JNI provides programming conventions for 
calling native C or C++ routines from within Java code, and vice versa. Each C routine 
has to be wrapped with the appropriate code in order to be available to the Java VM, and 
the resulting library has to be generated as a shared or dynamic object in order to be 
loaded into the Java VM.
PDFlib supplies JNI wrapper code for using the library from Java. This technique al-
lows us to attach PDFlib to Java by loading the shared library from the Java VM. The ac-
tual loading of the library is accomplished via a static member function in the pdflib 
Java class. Therefore, the Java client doesn’t have to bother with the specifics of shared 
library handling.
Taking into account PDFlib’s stability and maturity, attaching the native PDFlib li-
brary to the Java VM doesn’t impose any stability or security restrictions on your Java 
application, while at the same time offering the performance benefits of a native imple-
mentation. Regarding portability remember that PDFlib is available for all platforms 
where there is a Java VM!
Installing the PDFlib Java Edition. For the PDFlib binding to work, the Java VM must 
have access to the PDFlib Java wrapper and the PDFlib Java package. PDFlib is organized 
as a Java package with the following package name:
com.pdflib.pdflib
This package is available in the pdflib.jar file and contains a single class called pdflib. Us-
ing the source files provided in the PDFlib Lite distribution you can generate an abbrevi-
ated HTML version of the PDFlib Reference using the javadoc utility since the PDFlib 
class contains the necessary javadoc comments. Comments and restrictions for using 
PDFlib with specific Java environments may be found in text files in the distribution 
set.
In order to supply this package to your application, you must add pdflib.jar to your 
CLASSPATH environment variable, add the option -classpath pdflib.jar in your calls to the 
Java compiler and runtime, or perform equivalent steps in your Java IDE. In the JDK you 
can configure the Java VM to search for native libraries in a given directory by setting 
the java.library.path property to the name of the directory, e.g.
java -Djava.library.path=. pdfclock
You can check the value of this property as follows:
System.out.println(System.getProperty("java.library.path"));
In addition, the following platform-dependent steps must be performed:
>Unix: the library libpdf_java.so (on Mac OS X: libpdf_java.jnilib) must be placed in one 
of the default locations for shared libraries, or in an appropriately configured direc-
tory.
>Windows: the library pdf_java.dll must be placed in the Windows system directory, or 
a directory which is listed in the PATH environment variable.
Create pdf thumbnail image - Draw thumbnail images for PDF in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Thumbnail Generation with Various Options for Quick PDF Navigation
pdf thumbnail preview; pdf thumbnail html
Create pdf thumbnail image - VB.NET PDF Thumbnail Create SDK: Draw thumbnail images for PDF in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Thumbnail Generation with Various Options for Quick PDF Navigation
enable pdf thumbnails in; thumbnail view in for pdf files
32
Chapter 2:  PDFlib Language Bindings
PDFlib servlets and Java application servers. PDFlib is perfectly suited for server-side 
Java applications, especially servlets. The PDFlib distribution contains examples of 
PDFlib Java servlets which demonstrate the basic use. When using PDFlib with a specific 
servlet engine the following configuration issues must be observed:
>The directory where the servlet engine looks for native libraries varies among ven-
dors. Common candidate locations are system directories, directories specific to the 
underlying Java VM, and local directories of the servlet engine. Please check the doc-
umentation supplied by the vendor of your servlet engine.
>Servlets are often loaded by a special class loader which may be restricted, or use a 
dedicated classpath. For some servlet engines it is required to define a special engine 
classpath to make sure that the PDFlib package will be found.
More detailed notes on using PDFlib with specific servlet engines and Java application 
servers can be found in additional documentation in the PDFlib distribution.
Note Since the EJB (Enterprise Java Beans) specification disallows the use of native libraries, PDFlib 
cannot be used within EJBs.
Error Handling in Java. The Java binding installs a special error handler which trans-
lates PDFlib errors to native Java exceptions. In case of an exception PDFlib will throw a 
native Java exception of the following class:
PDFlibException
The Java exceptions can be dealt with by the usual try/catch technique:
try {
...some PDFlib instructions...
} catch (PDFlibException e) {
System.err.print("PDFlib exception occurred in hello sample:\n");
System.err.print("[" + e.get_errnum() + "] " + e.get_apiname() +
": " + e.get_errmsg() + "\n");
} catch (Exception e) {
System.err.println(e.getMessage());
} finally {
if (p != null) {
p.delete();                     /* delete the PDFlib object */
}
Since PDFlib declares appropriate throws clauses, client code must either catch all possi-
ble PDFlib exceptions, or declare those itself.
Unicode and legacy encoding conversion. For the convenience of PDFlib users we list 
some useful string conversion methods here. Please refer to the Java documentation for 
more details. The following constructor creates a Unicode string from a byte array, us-
ing the platform’s default encoding:
String(byte[] bytes)
VB.NET Image: Program for Creating Thumbnail from Documents and
language. It empowers VB developers to create thumbnail from multiple document and image formats, such as PDF, TIFF, GIF, BMP, etc. It
pdf thumbnail; how to view pdf thumbnails in
How to C#: Generate Thumbnail for Raster
VB.NET How-to, VB.NET PDF, VB.NET Word, VB.NET Excel, VB.NET And generating thumbnail for Raster Image is an easy work. How to Create Thumbnail for Raster in C#.
show pdf thumbnails; pdf thumbnail generator
2.5  Java Binding g 33
The following constructor creates a Unicode string from a byte array, using the encod-
ing supplied in the enc parameter (e.g. SJIS, UTF8, UTF-16):
String(byte[] bytes, String enc)
The following method of the String class converts a Unicode string to a string according 
to the encoding specified in the enc parameter:
byte[] getBytes(String enc)
How to C#: Set Image Thumbnail in C#.NET
VB.NET How-to, VB.NET PDF, VB.NET Word, VB.NET Excel How to C#: Set Image Thumbnail in C#.NET. With XImage.Raster SDK library, you can create an image viewer and
how to make a thumbnail from pdf; view pdf image thumbnail
How to C#: Generate Thumbnail for Word
Images. Convert Word to ODT. Convert PDF to Word. File: Create, Load a Word File. File: Merge Text Search. Insert Image. Thumbnail Create. Thumbnail Create. |. Home
create thumbnail from pdf c#; show pdf thumbnails in
34
Chapter 2:  PDFlib Language Bindings
2.6.NET Binding
(This section is only included in the COM/.NET/REALbasic edition of the PDFlib tutorial.)
How to C#: Generate Thumbnail for PowerPoint
Conversion. Convert PowerPoint to PDF. Convert PowerPoint File: Create, Load a PowerPoint File. File Annotate PowerPoint. Text Search. Insert Image. Thumbnail Create
pdf first page thumbnail; pdf preview thumbnail
VB.NET PDF Library SDK to view, edit, convert, process PDF file
In addition, you can easily create, modify, and delete PDF NET guide to learn how to use RasterEdge PDF SDK for You may easily generate thumbnail image from PDF
pdf files thumbnails; can't view pdf thumbnails
2.7  Perl Binding g 35
2.7Perl Binding
Perl
1
supports a mechanism for extending the language interpreter via native C librar-
ies. The PDFlib wrapper for Perl consists of a C wrapper file and a Perl package module. 
The C module is used to build a shared library which the Perl interpreter loads at run-
time, with some help from the package file. Perl scripts refer to the shared library mod-
ule via a use statement.
Installing the PDFlib Perl Edition. The Perl extension mechanism loads shared libraries 
at runtime through the DynaLoader module. The Perl executable must have been com-
piled with support for shared libraries (this is true for the majority of Perl configura-
tions).
For the PDFlib binding to work, the Perl interpreter must access the PDFlib Perl wrap-
per and the module file pdflib_pl.pm. In addition to the platform-specific methods de-
scribed below you can add a directory to Perl’s @INC module search path using the -I 
command line option:
perl -I/path/to/pdflib hello.pl
Unix. Perl will search both pdflib_pl.so (on Mac OS X: pdflib_pl.dylib) and pdflib_pl.pm in 
the current directory, or the directory printed by the following Perl command:
perl -e 'use Config; print $Config{sitearchexp};'
Perl will also search the subdirectory auto/pdflib_pl. Typical output of the above com-
mand looks like
/usr/lib/perl5/site_perl/5.8/i686-linux
Windows. PDFlib supports the ActiveState port of Perl 5 to Windows, also known as 
ActivePerl.
2
Both pdflib_pl.dll and pdflib_pl.pm will be searched in the current directory, 
or the directory printed by the following Perl command:
perl -e "use Config; print $Config{sitearchexp};"
Typical output of the above command looks like
C:\Program Files\Perl5.8\site\lib
Error Handling in Perl. The Perl binding installs a special error handler which trans-
lates PDFlib errors to native Perl exceptions. The Perl exceptions can be dealt with by ap-
plying the appropriate language constructs, i.e., by bracketing critical sections:
eval {
...some PDFlib instructions...
};
die "Exception caught" if $@;
1. See www.perl.com 
2. See www.activestate.com 
How to C#: Overview of Using XImage.Raster
Create Thumbnail. See this C# guide to learn how to use RasterEdge XImage SDK for .NET to perform quick file navigation. You may easily generate thumbnail image
enable pdf thumbnails; pdf thumbnail generator online
C# PDF Library SDK to view, edit, convert, process PDF file for C#
You may easily generate thumbnail image from PDF. and added to a specific location on PDF file page. In addition, you can easily create, modify, and delete PDF
enable thumbnail preview for pdf files; pdf thumbnail html
36
Chapter 2:  PDFlib Language Bindings
More than one way of String handling. Depending on the requirements of your appli-
cation you can work with UTF-8, UTF-16, or legacy encodings. The following code snip-
pets demonstrate all three variants. All examples create the same Japanese output, but 
accept the string input in different formats.
The first example works with Unicode UTF-8 and uses the Unicode::String module 
which is part of most modern Perl distributions, and available on CPAN). Since Perl 
works with UTF-8 internally no explicit UTF-8 conversion is required:
use Unicode::String qw(utf8 utf16 uhex);
...
PDF_set_parameter($p, "textformat", "utf8");
$font = PDF_load_font($p, "Arial Unicode MS", "unicode", "");
PDF_setfont($p, $font, 24.0);
PDF_set_text_pos($p, 50, 700);
PDF_show($p, uhex("U+65E5 U+672C U+8A9E"));
The second example works with Unicode UTF-16 and little-endian byte order:
PDF_set_parameter($p, "textformat", "utf16le");
$font = PDF_load_font($p, "Arial Unicode MS", "unicode", "");
PDF_setfont($p, $font, 24.0);
PDF_set_text_pos($p, 50, 700);
PDF_show($p, "\xE5\x65\x2C\x67\x9E\x8A");
The third example works with Shift-JIS. Except on Windows systems it requires access to 
the 90ms-RKSJ-H CMap for string conversion:
PDF_set_parameter($p, "SearchPath", "../../../resource/cmap");
$font = PDF_load_font($p, "Arial Unicode MS", "cp932", "");
PDF_setfont($p, $font, 24.0);
PDF_set_text_pos($p, 50, 700);
PDF_show($p, "\x93\xFA\x96\x7B\x8C\xEA");
Unicode and legacy encoding conversion. For the convenience of PDFlib users we list 
some useful string conversion methods here. Please refer to the Perl documentation for 
more details. The following constructor creates a Unicode string from a byte array:
$logos="\x{039b}\x{03bf}\x{03b3}\x{03bf}\x{03c3}\x{0020}" ;
The following constructor creates a Unicode string from the Unicode character name:
$delta = "\N{GREEK CAPITAL LETTER DELTA}";
The Encode module supports many encodings and has interfaces for converting be-
tween those encodings:
use Encode 'decode';
$data = decode("iso-8859-3", $data); 
# convert from legacy to UTF-8
2.8  PHP Binding g 37
2.8PHP Binding
Installing the PDFlib PHP Edition. Detailed information about the various flavors and 
options for using PDFlib with PHP
1
, including the question of whether or not to use a 
loadable PDFlib module for PHP, can be found in the PDFlib-in-PHP-HowTo.pdf document 
which is contained in the distribution packages and also available on the PDFlib Web 
site.
You must configure PHP so that it knows about the external PDFlib library. You have 
two choices:
>Add one of the following lines in php.ini:
extension=libpdf_php.so
; for Unix
extension=libpdf_php.dll
; for Windows
PHP will search the library in the directory specified in the extension_dir variable in 
php.ini on Unix, and additionally in the standard system directories on Windows. 
You can test which version of the PHP PDFlib binding you have installed with the fol-
lowing one-line PHP script:
<?phpinfo()?>
This will display a long info page about your current PHP configuration. On this page 
check the section titled pdf. If this section contains PDFlib GmbH Binary Version (and 
the PDFlib version number) you are using the supported new PDFlib wrapper. The 
unsupported old wrapper will display PDFlib GmbH Version instead.
>Load PDFlib at runtime with one of the following lines at the start of your script:
dl("libpdf_php.so");
# for Unix
dl("libpdf_php.dll");
# for Windows
PHP 5 features. PDFlib takes advantage of the following new features in PHP5:
>New object model: the PDFlib functions are encapsulated within a PDFlib object.
>Exceptions: PDFlib exceptions will be propagated as PHP5 exceptions, and can be 
caught with the usual try/catch technique. New-style exception handling can be 
used with both the new object-oriented approach and the old API functions.
See below for more details on these PHP5 features.
Modified error return for PDFlib functions in PHP. Since PHP uses the convention of re-
turning the value 0 (FALSE) when an error occurs within a function, all PDFlib functions 
have been adjusted to return 0 instead of -1 in case of an error. This difference is noted 
in the function descriptions in the PDFlib Reference. However, take care when reading 
the code fragment examples in Section 3, »PDFlib Programming«, page 45, since these 
use the usual PDFlib convention of returning -1 in case of an error.
File name handling in PHP. Unqualified file names (without any path component) and 
relative file names for PDF, image, font and other disk files are handled differently in 
Unix and Windows versions of PHP:
>PHP on Unix systems will find files without any path component in the directory 
where the script is located.
1. See www.php.net 
38
Chapter 2:  PDFlib Language Bindings
>PHP on Windows will find files without any path component only in the directory 
where the PHP DLL is located.
In order to provide platform-independent file name handling the use of PDFlib’s 
SearchPath facility is strongly recommended (see Section 3.1.3, »Resource Configuration 
and File Searching«, page 48).
Error handling in PHP4. When a PDFlib exception occurs, a PHP exception is thrown. 
Since PHP4 does not support structured exception handling there is no way to catch ex-
ceptions and act appropriately. Do not disable PHP warnings when using PDFlib, or you 
will run into serious trouble.
PDFlib warnings (nonfatal errors) are mapped to PHP warnings, which can be dis-
abled in php.ini. Alternatively, warnings can be disabled at runtime with a PDFlib func-
tion call like in any other language binding:
PDF_set_parameter($p, "warning", "false");
Exception handling in PHP5. Since PHP5 supports structured exception handling, 
PDFlib exceptions will be propagated as PHP exceptions. PDFlib will throw an exception 
of the class PDFlibException, which is derived from PHP’s standard Exception class. You 
can use the standard try/catch technique to deal with PDFlib exceptions:
try {
...some PDFlib instructions...
} catch (PDFlibException $e) {
print "PDFlib exception occurred:\n";
print "[" . $e->get_errnum() . "] " . $e->get_apiname() . ": " 
$e->get_errmsg() . "\n";
}
catch (Exception $e) {
print $e;
}
Note that you can use PHP 5-style exception handling regardless of whether you work 
with the old function-based PDFlib interface, or the new object-oriented one.
Unicode and legacy encoding conversion. The iconv module can be used for string con-
versions. Please refer to the PHP documentation for more details.
2.9  Python Binding g 39
2.9Python Binding
Installing the PDFlib Python Edition. The Python
1
extension mechanism works by 
loading shared libraries at runtime. For the PDFlib binding to work, the Python inter-
preter must have access to the PDFlib Python wrapper:
>Unix: the library pdflib_py.so (on Mac OS X: pdflib_py.dylib) will be searched in the di-
rectories listed in the PYTHONPATH environment variable.
>Windows: the library pdflib_py.dll will be searched in the directories listed in the 
PYTHONPATH environment variable.
Error Handling in Python. The Python binding installs a special error handler which 
translates PDFlib errors to native Python exceptions. The Python exceptions can be 
dealt with by the usual try/catch technique:
try:
...some PDFlib instructions...
except PDFlibException:
print 'PDFlib Exception caught!'
Configuring the old-style Python binding without Unicode support. By default, the Py-
thon binding is Unicode-aware. For compatibility purposes we also supply a non-Uni-
code-aware version of the Python binding. Although this is not recommended for new 
applications, you may want to use the old-style Python binding without Unicode sup-
port for older applications which do not properly deal with Unicode strings. In this situ-
ation you can configure the Python binding as follows:
>Rename pdflib_py.so to nupdflib_py.so
>Add the the following to your code:
from nupdflib_py import *
1. See www.python.org 
40
Chapter 2:  PDFlib Language Bindings
2.10REALbasic Binding
1
(This section is only included in the COM/.NET/REALbasic edition of the PDFlib tutorial.)
1. See www.realbasic.com 
Documents you may be interested
Documents you may be interested