mvc open pdf in browser : How to extract text from pdf image file SDK application API .net azure wpf sharepoint 0131473816_book58-part79

described later in this chapter. If you prefer, you can use CodeWarrior; how-
ever, you may find it harder to automate wxWidgets and application builds
with CodeWarrior.
On both Linux and Mac OS X, you can also use DialogBlocks (on the CD-
ROM), enabling you to create dialogs and other user interface elements easily
in addition to generating makefiles and building your application with GCC.
See Appendix C for more on DialogBlocks.
You may want to start off compiling wxWidgets and its samples with the
command-line tools and then graduate to an IDE for new applications when
you understand the basics.
D
OWNLOADING AND
U
NPACKING WX
W
IDGETS
The latest version of wxWidgets can be downloaded from the wxWidgets web
site, or  you  can  use the version  included  on  the CD-ROM. After you  have
downloaded the library source or copied it from the CD-ROM, you will need to
extract  the files to a  location of  your choice. Windows users  also have the
option of a self-extracting installer.
After you have unpacked wxWidgets, you may want to familiarize your-
self with the organization of the files. The structure is similar to other open
source projects,with separate directories for include files (
include
),source files
(
src
), compiled library objects (
lib
), documentation (
docs
), sample programs
(
samples
),and build information (
build
).Within some directories, there are fur-
ther classifications of files based on which operating system(s) they are for:
common
:Used  by  all platforms, such as strings, streams, and  database 
connectivity.
expat
:An XML parser library.
generic
:Widgets and dialogs implemented by wxWidgets for use where
native versions are not available.
gtk
:For GTK+.
html
:For the HTML controls designed for wxWidgets.
iodbc
:The iODBClibrary for platforms without native ODBC support.
jpeg
:The JPEG library for platforms without native JPEG support.
mac
:For the Mac, further subdivided into 
classic
(OS 9),
carbon
(OS 9 and
OS X), and 
corefoundation
(OS X).
msw
:For Microsoft Windows.
png
:The PNG image library for platforms without native PNG support.
regex
:A regular expression processor for platforms without native regu-
lar expression processing (or when Unicode is enabled).
tiff
:The TIFF image library for platforms without native TIFF support.
unix
:Used by all Unix-based platforms, including Linux and Mac OS X.
Downloading and Unpacking wxWidgets
545
How to extract text from pdf image file - Select, copy, paste PDF images in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support PDF Image Extraction from a Page, a Region on a Page, and PDF Document
how to extract images from pdf files; pdf image extractor c#
How to extract text from pdf image file - VB.NET PDF Image Extract Library: Select, copy, paste PDF images in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support PDF Image Extraction from a Page, a Region on a Page, and PDF Document
how to extract images from pdf file; extract photo from pdf
xrc
:wxWidgets’ XML resource library.
xml
:A C++ wrapper around the XML parser Expat.
zlib
:The zlib compression library for platforms without native zlib sup-
port.
C
ONFIGURATION
/B
UILD
O
PTIONS
wxWidgets can be built using almost countless permutations of configuration
options. However, four main options are available on all platforms:
 Release versus Debug: Debug builds include debug information and
extra checking code, whereas release builds omit debug information and
enable some level of optimization. It is strongly recommended that you
develop your application using a debug version of the library to benefit
from the debug assertions that can help locate bugs and other problems.
 Unicode versus non-Unicode: As discussed in Chapter 16, “Writing
International Applications,” Unicode facilitates the display of non-ASCII
characters  such  as  Cyrillic, Greek, Korean, Japanese, and  so  on.
wxWidgets  natively  supports  Unicode; there  is  no  penalty  for  using
Unicode in terms of available features (with the exception of wxODBC on
Unix), nor is any additional coding required. Windows 95, 98, and ME do
not have built-in Unicode support, but wxWidgets can be configured to
use the add-on MSLU library for these operating systems.
 Static versus Shared: A static version of the library is linked with the
application at compile time, whereas a shared version is linked at run-
time. Using  a  static  library  results  in  a  larger  application  but  also
relieves the end user of the need for installing shared libraries on his or
her computer. On Linux and Mac OS X, static libraries end in 
.a
,and on
Windows,they end in 
.lib
.On Linux and Mac OS X,shared libraries end
in 
.so
,and on Windows, they end in 
.dll
.Note that there are certain
memory and performance implications of static and shared libraries that
are not specific to wxWidgets; they are beyond the scope of this book.
 Multi-lib versus Monolithic:The entire wxWidgets library is made up
of modules that separate the GUI functionality from the non-GUI func-
tionality as well as separate advanced features that are not frequently
needed. This separation enables you to use wxWidgets  modules selec-
tively  depending  on  your  specific  needs. Alternatively, you  can  build
wxWidgets  into  one  “monolithic” library  that  contains  all  of  the
wxWidgets modules in one library file.
You can build and simultaneously use more than one version and/or configura-
tion of wxWidgets. The way you access the different builds depends on your
platform, but all library files are created using a standard naming convention:
546
Installing wxWidgets Appendix A
C# PDF Text Extract Library: extract text content from PDF file in
PDF file. Ability to extract highlighted text out of PDF document. Supports text extraction from scanned PDF by using XDoc.PDF for .NET Pro. Image text extraction
extract images from pdf file; some pdf image extractor
VB.NET PDF Text Extract Library: extract text content from PDF
Extract and get partial and all text content from PDF file. Extract highlighted text out of PDF document. Image text extraction control provides text extraction
extract image from pdf in; extract images from pdf c#
wx<library><version><u><d>
where 
u
and 
d
indicate Unicode and debug, respec-
tively. For example, the file 
wxbase26ud.lib
is the Unicode debug base library
for wxWidgets 2.6, and 
wxmsw26u_core
contains the core GUI elements for a
Unicode release build on Windows.
After building wxWidgets, you can confirm that the library is built cor-
rectly by compiling and running one of the samples. The samples are located
in the 
samples
folder of the main wxWidgets directory, with each sample in its
own subfolder. You might try 
samples/minimal
first because it’s the simplest.
For each compiler, directions for building one of the samples are included in
docs/<platform>/install.txt
.There are also more complete applications in the
demos
directory, and though they are not discussed here, they are built almost
identically to the samples in most cases.
It is important to note that you can build wxWidgets with makefiles on
any platform but still use an IDE to develop your projects. For example, you
can use the Microsoft Visual C++ command-line compiler to build wxWidgets
but still use Microsoft Visual Studio to create your applications.
W
INDOWS
—M
ICROSOFT
V
ISUAL
S
TUDIO
Many IDEs and compilers are available for Windows. The dominant IDE on
Windows is Microsoft Visual Studio;wxWidgets requires at least Visual Studio
5. Microsoft has released Visual Studio 2005 Express for home enthusiasts
and students, and it features all of the common Visual Studio tools, omitting
only  the high-powered tools typically  used in large projects or a corporate
environment.Although it is a free beta download at the time of writing, it will
cost around $50 once it is officially released. See 
http://lab.msdn.microsoft.
com/vs2005
/.
You must have the Windows Platform SDK installed in order to build
wxWidgets,which is a free download from 
http://www.microsoft.com/msdowload/
platformsdk/sdkupdate
.
When using the Platform SDK and the free compiler, install both the
Core and Internet modules, and build wxWidgets with the run-time library
linked statically (pass 
RUNTIME_LIBS=static
to 
make
or set Runtime Linking to
Static in your DialogBlocks configurations). If using a project file, you will
need to modify this setting manually, both in the wxWidgets and application
project files. You  may also need to remove  the library 
odbc32.lib
from the
linker settings because the Platform SDK does not contain this library.
The SDK is already included with any of the professional  versions of
Visual Studio.
Regardless of which version of Visual Studio you are using, the process
for building wxWidgets is the same. From your wxWidgets installation, open
the 
wx.dsw
workspace from the 
build\msw
directory. If you are using a version
later than 6.0, you may be prompted that the sub-projects must be converted
to the current Visual C++ project format. Allow Visual Studio to proceed with
Windows—Microsoft Visual Studio
547
C# PDF insert image Library: insert images into PDF in C#.net, ASP
Create high resolution PDF file without image quality losing in ASP.NET application. Add multiple images to multipage PDF document in .NET WinForms.
extract images from pdf acrobat; extract image from pdf acrobat
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
Reduce image resources: Since images are usually or large size, images size reducing can help to reduce PDF file size effectively.
extract image from pdf java; some pdf image extract
the conversion; if you need the files in their original format, you can always
extract the originals again. After all the projects in the workspace have been
opened, you can browse the sources and classes.
If  you  are  using  Visual  C++  version  7  or  8  (.NET  or  2005), build
wxWidgets by selecting Build Solution from the Build menu. Different solu-
tions  are used to build different  library configurations, selectable from the
Configuration Manager from the Build menu. Simply select which configura-
tion you want to use, such as Debug, Unicode Release, or DLL Unicode Debug.
If you are using Visual Studio 5 or 6, build wxWidgets by selecting Batch
Build from the Build menu and checking the desired library configurations.
The wxWidgets project is set up to allow building release and debug versions
of  both  Unicode  and  non-Unicode libraries, both  static and shared  (DLL).
Ensure that you are building all of the sub-projects for the configurations that
you want to use.
Most developers only need to build the release and debug libraries, or if
you have a need for Unicode, the Unicode release and Unicode debug libraries.
As a rule, using the static (non-DLL) libraries makes it easy to distribute a
single-file  application rather than  needing to  also  distribute (or  otherwise
require) the correct wxWidgets DLL. Using the DLL builds can also result in
quirks  relating  to  application  startup, so  they  should  be  used  only  when
needed and only if you have a thorough understanding of how DLLs are uti-
lized by both wxWidgets and Windows.
The compiled library files are placed into the 
lib
directory under your
wxWidgets directory. Two directories are created:
vc_dll
and 
vc_lib
,for the
shared and static builds, respectively.
If the process of building via project files seems fiddly (the number of con-
figurations in the project file can be confusing!), consider using the command-
line alternative as described in the section “Windows—Microsoft Visual C++
Command Line,” or build wxWidgets via DialogBlocks.
Compiling a wxWidgets Sample Program
Workspace and project files are included for every wxWidgets sample. Use
Visual Studio to open a workspace for one of the samples (in the 
samples
direc-
tory  within  your  wxWidgets  installation), and  then  select  a  configuration
matching any of the wxWidgets library builds that you compiled. For example,
if you have  built the Unicode  debug library, compile the  sample using the
Unicode debug build. The samples are created to look within the wxWidgets
tree for the include and library files in their default locations. As long as the
library  built  successfully  and the  structure  of  the source  tree  hasn’t  been
altered, the samples will build successfully as well.
548
Installing wxWidgets Appendix A
VB.NET PDF insert image library: insert images into PDF in vb.net
VB.NET code to add an image to the inputFilePath As String = Program.RootPath + "\\" 1.pdf" Dim doc New PDFDocument(inputFilePath) ' Get a text manager from
extract images from pdf files without using copy and paste; extract photos from pdf
C# PDF File Split Library: Split, seperate PDF into multiple files
Application. Best and professional adobe PDF file splitting SDK for Visual Studio .NET. outputOps); Divide PDF File into Two Using C#.
how to extract pictures from pdf files; pdf image extractor online
Windows—Microsoft Visual C++ Command Line
549
Note
If you built wxWidgets and a sample from the command line, as described
in the next section, trying to run and debug the sample in Visual Studio
may result in a question about rebuilding libraries. Answer No to this
question to continue running the sample.
W
INDOWS
—M
ICROSOFT
V
ISUAL
C++ C
OMMAND
L
INE
Microsoft’s  C++  compiler is part of  any Visual C++ installation  (or can be
downloaded free from Microsoft) and can be used from the command line.The
Microsoft compiler makefile is in the 
build\msw
directory. From there, invoke
the Microsoft compiler using a command such as the following ones, which
demonstrate how to toggle all of the major configuration options:
nmake -f makefile.vc UNICODE=0 SHARED=0 BUILD=release MONOLITHIC=0
nmake -f makefile.vc UNICODE=0 SHARED=0 BUILD=debug MONOLITHIC=0
The  compiled  library  files  are  placed  into  the  lib  directory  under  your
wxWidgets directory. Two directories are created:
vc_dll
and 
vc_lib
,for the
shared and static builds, respectively.
If  you  need  ODBC  or  OpenGL  functionality, set 
wxUSE_ODBC
or
wxUSE_GLCANVAS
to 1 in 
include\wx\msw\setup.h
before compiling, and also pass
USE_ODBC=1
or 
USE_OPENGL=1
on the 
nmake
command line.
To remove the object files and libraries, append the target 
clean
to the
same command line. However, be aware that this won’t clean up the copy of
setup.h
that is placed under the 
vc_lib
and 
vc_dll
directories, so if you make
any edits  to 
include\wx\msw\setup.h
, delete  the 
vc_lib
or 
vc_dll
directories
yourself before recompiling.
Compiling a wxWidgets Sample Program
If you change into one of the sample program directories, you will see a make-
file for Microsoft’s compiler called 
makefile.vc
.The sample programs are built
using the  same  command  and  switches  as  the  library itself, and they  are
designed to look within the wxWidgets tree for the include and library files in
their default locations. Be sure that you specify flags for a configuration of the
library that has been built, or the sample will fail to link. That is, if you have
only built a Unicode static release version of wxWidgets, use the same build
options for the sample.For example:
cd samples\widgets
nmake -f makefile.vc UNICODE=1 SHARED=0 BUILD=release MONOLITHIC=0
vc_mswd\widgets.exe
C# PDF File Compress Library: Compress reduce PDF size in C#.net
Reduce image resources: Since images are usually or large size, images size reducing can help to reduce PDF file size effectively.
extract image from pdf c#; how to extract images from pdf
VB.NET PDF File Merge Library: Merge, append PDF files in vb.net
When you have downloaded the RasterEdge Image SDK for also provided you with detailed PDF processing demo Imaging.Demo directory with the file name RasterEdge
extract pdf pages to jpg; pdf image text extractor
550
Installing wxWidgets Appendix A
As with the library makefile, you can clean a sample by appending the clean
target,for example:
nmake -f makefile.vc UNICODE=0 SHARED=0 BUILD=debug clean
W
INDOWS
—B
ORLAND
C++
Borland’s command-line C++ compiler (BC++) is a free download, but it is
also  part  of  Borland’s  professional  C++Builder  IDE. Building  wxWidgets
with BC++ is done from the command line, using flags to the compiler to
specify the library build configuration. The BC++ makefile is in the 
build\msw
directory. From there, invoke the BC++ compiler using a command such as
the  following, which  demonstrates  how  to  toggle  all  of  the  major  build
options:
make -f makefile.bcc UNICODE=0 SHARED=0 BUILD=release MONOLITHIC=0
The  compiled  library  files  are  placed  into  the 
lib
directory  under  your
wxWidgets directory.Two directories are created:
bcc_dll
and 
bcc_lib
,for the
shared and static builds, respectively.
To remove the object files and libraries, append the target 
clean
to the
same command line. However, be aware that this won’t clean up the copy of
setup.h
that is placed under the 
bcc_lib
and 
bcc_dll
directories, so if you
make any edits to 
include\wx\msw\setup.h
,delete the 
bcc_lib
or 
bcc_dll
direc-
tories yourself before recompiling.
Compiling a wxWidgets Sample Program
If you  change  into one of  the sample  program  directories, you  will see a
makefile for BC++ called 
makefile.bcc
.The sample programs are built using
the same command and switches as the library itself and are designed to look
within the wxWidgets tree for the include and library files in their default
locations. Be sure that you specify flags for a configuration of the library that
has been built, or the sample will fail to link.That is, if you have only built a
Unicode static release version of wxWidgets, use the same build options for
the sample. For example:
cd samples\widgets
make -f makefile.bcc UNICODE=1 SHARED=0 BUILD=release MONOLITHIC=0
bcc_mswd\widgets.exe
As with the library makefile, you can clean a sample by appending the clean
target,for example:
make -f makefile.bcc UNICODE=0 SHARED=0 BUILD=debug clean
W
INDOWS
—M
IN
GW 
WITH
MSYS
MinGW is a GNU toolset that includes Windows headers and import libraries
for  building Windows applications. MSYS  provides  an  environment closely
resembling a Linux or Unix shell in which to use MinGW. The process for
using MinGW is very similar to the process described later for GCC.
It is recommended that you create a subdirectory within the wxWidgets
directory for each configuration that you want to build.Most developers create
directories using the same naming conventions as wxWidgets; if you want to
compile  the  library  in Unicode  debug  mode, you  might  create  a  directory
named 
buildud
or 
build26ud
depending on how many different configurations
you want to have.
After you have created your build directory, change into the build direc-
tory. The 
configure
script, now located one directory up, takes many different
parameters, the most important ones being those that control the main build
options. For example, you could run
../configure --enable-unicode --disable-debug --disable-shared --disable-
monolithic
The 
configure
script will analyze the build environment and then generate the
makefiles for use with MinGW. When 
configure
has finished, it will display a
summary of the library build configuration.
Configured wxWidgets 2.6.0 for `i686-pc-mingw32’
Which GUI toolkit should wxWidgets use?                msw
Should wxWidgets be compiled into single library?      no
Should wxWidgets be compiled in debug mode?            no
Should wxWidgets be linked as a shared library?        no
Should wxWidgets be compiled in Unicode mode?          yes
What level of wxWidgets compatibility should be enabled?
wxWidgets 2.2      no
wxWidgets 2.4      yes
Which libraries should wxWidgets use?
jpeg               builtin
png                builtin
regex              builtin
tiff               builtin
Windows—MinGW with MSYS
551
552
Installing wxWidgets Appendix A
zlib               builtin
odbc               no
expat              builtin
libmspack          no
sdl                no
Many other individual features can be enabled or disabled using the 
configure
script, a list of which can be found in the wxWidgets documentation or by
passing 
--help
to  the 
configure
script. After 
configure
has  generated  the
makefiles, build the library by running 
make
in the same directory as the one
in which you ran 
configure
.The compiled library files are placed in the 
lib
subdirectory of the directory used for the build, not the 
lib
directory at the
root of the wxWidgets tree. You may optionally use 
make install
as root after
the build has completed, to copy the library and the necessary headers into
/usr/local
so  that  all  users  may  have  access  to  compile, build, and  run
wxWidgets programs.
Compiling a wxWidgets Sample Program
The 
configure
script creates a 
samples
directory in your build directory, with
further subdirectories for each sample. If you change into one of the sample
program directories, you will see a makefile, which has been generated for
your build directory and build configuration. Run 
make
to build the sample.
For example:
cd /c/wx/build26ud/samples/minimal
make
./minimal
W
INDOWS
—M
IN
GW 
WITHOUT
MSYS
MinGW  can  also  be  used  from  Microsoft’s  command  line  (
cmd.exe
or
command.com
). You can control your build style by using flags to the compiler.
The MinGW makefile is in the 
build\msw
directory.From there, invoke MinGW
using a command such as the following, which demonstrates how to toggle all
of the major build options:
mingw32-make -f makefile.gcc UNICODE=1 SHARED=0 BUILD=release \
MONOLITHIC=0
(The backslash is only there to denote that the command should be typed all
on one line.)
The compiled library files are placed into the lib directory under your
wxWidgets directory. Two directories are created:
gcc_dll
and 
gcc_lib
,for the
shared and static builds, respectively.
To remove the object files and libraries, append the target 
clean
to the
same command line. However, be aware that this won’t clean up the copy of
setup.h
that is placed under the 
gcc_lib
and 
gcc_dll
directories,so if you make
any edits to 
include\wx\msw\setup.h
,delete the 
gcc_lib
or 
gcc_dll
directories
yourself before recompiling.
Note
If you are using MinGW without MSYS but have MSYS installed, the
MSYS  directories  should  not  be  in  your  path; otherwise, the  wrong
version of make could be used. If the wrong version of make is used, you
will get cryptic error messages for processes that are otherwise correct.
This conflict occurs because MinGW and MSYS share common file names
for non-identical files that are not interchangeable.
Compiling a wxWidgets Sample Program
If you change into one of these sample program directories, you will see a
makefile for MinGW called 
makefile.gcc
.The sample programs are built using
the same command and switches as the library itself and are designed to look
within the wxWidgets tree for the include and library files in their default
locations. Be sure that you specify flags for a configuration of the library that
has been built, or the sample will fail to link. That is, if you have only built a
Unicode static release version of wxWidgets, use the same build options for
the sample. For example:
cd c:\wx\samples\minimal
mingw32-make -f makefile.gcc UNICODE=1 SHARED=0 BUILD=release \
MONOLITHIC=0
minimal.exe
(The backslash is only there to denote that the command should be typed all
on one line.)
To clean the sample, append 
clean
to the 
make
command.
L
INUX
,U
NIX
,
AND
M
AC
OS X—GCC
GCC is the de facto standard compiler on Linux and many Unix platforms,
including Darwin, the BSD  foundation  for Mac OS X. Building  wxWidgets
with GCC simply requires following the typical 
configure
and 
make
routine
common on Unix and Unix-like environments.
It is recommended that you create a subdirectory within the wxWidgets
directory for each different configuration that you want to build. Most develop-
ers create directories using the same naming conventions as wxWidgets; if you
want to compile the library in Unicode debug mode, you might create a directory
Linux, Unix, and Mac OS X—GCC
553
named 
buildud
,
build26ud,
or even 
buildGTK26ud
depending on how many dif-
ferent configurations you want to have.
After you have created your build directory, change into the build direc-
tory. The 
configure
script, now located one directory up, takes many different
parameters, the most important ones being those that control the main build
options. For example, you could run
../configure --enable-unicode --disable-debug --disable-shared \
--disable-monolithic
(The backslash is only there to denote that the command should be typed all
on one line.)
The 
configure
script will analyze the build environment and then gener-
ate the makefiles for use with GCC. When 
configure
has finished, it will dis-
play  a summary of  the library  build  configuration. The previous 
configure
options would produce the following summary on Linux:
Configured wxWidgets 2.6.0 for `i686-pc-linux-gnu’
Which GUI toolkit should wxWidgets use?                GTK+ 2
Should wxWidgets be compiled into single library?      no
Should wxWidgets be compiled in debug mode?            no
Should wxWidgets be linked as a shared library?        no
Should wxWidgets be compiled in Unicode mode?          yes
What level of wxWidgets compatibility should be enabled?
wxWidgets 2.2      no
wxWidgets 2.4      yes
Which libraries should wxWidgets use?
jpeg               sys
png                sys
regex              builtin
tiff               sys
zlib               sys
odbc               no
expat              sys
libmspack          no
sdl                no
Many other individual features can be enabled or disabled using the 
configure
script, a list of which can be found in the wxWidgets documentation or by
passing 
--help
to the 
configure
script. Most significantly, you can also choose
to override the default GUI toolkit (GTK+ 2) with GTK+, Motif,or X11.
After 
configure
has generated the makefiles, build the library by running
make
in the same directory as you ran 
configure
.The compiled library files are
placed in the 
lib
subdirectory of the directory used for the build, not the 
lib
directory  at  the  root  of  the  wxWidgets  tree. You  may  optionally  use 
make
install
as root after the make has completed to copy the library and the nec-
essary headers into 
/usr/local
so that all users may have access to compile,
build, and run wxWidgets programs.
554
Installing wxWidgets Appendix A
Documents you may be interested
Documents you may be interested