c# view pdf : How to move pages in pdf reader application SDK utility html winforms .net visual studio vwra1-part886

© PDF Tools AG – Premium PDF Technology 
3-Heights™ PDF Viewer API, March 24, 2016 10/61
2.4.1 Default Color Profiles
If no particular color profiles are set default profiles are used.  For device RGB colors a color profile named
"sRGB Color Space Profile.icm"
and for device CMYK a profile named
"USWebCoatedSWOP.icc"
are 
searched for in the following directories:
Windows
1.
%SystemRoot%\spool\drivers\color
2. directory
Icc
, which must be a direct sub-directory of where the
viewerOCX.dll
resides.
2.4.2 Get Other Color Profiles
Most systems have pre-installed color profiles available, for example on Windows at
%SystemRoot%\sys-
tem32\spool\drivers\color\
. Color profiles can also be downloaded from the links provided in the direc­
tory
bin\Icc\
or from the following websites:
http://www.pdf-tools.com/public/downloads/resources/colorprofiles.zip
http://www.color.org/srgbprofiles.html
https://www.adobe.com/support/downloads/iccprofiles/iccprofiles_win.html
2.5 Fonts
PDF documents may contain both embedded and non-embedded fonts.  When rendering non-embedded fonts 
the best result can be achieved, if the font is available on the system. Therefore it is important to make sure the font
directories contain all fonts required.
For more information on how to cope with font issues, please refer to sectionFont and Text Issues
.
2.5.1 Font Directories
The location of the font directories depends on the operating system. All fonts of all font directories are added. Font
directories are traversed recursively.
Windows
1.
%SystemRoot%\Fonts
2. directory
Fonts
, which must be a direct sub-directory of where the
viewerOCX.dll
resides.
2.5.2 Font Configuration File fonts.ini
The font configuration file is optional.  It can be used to control the mapping of fonts used in the PDF to fonts 
pre-installed on the system. 
The file
fonts.ini
must reside at the following location :
Windows: In a directory named
Fonts
, which must be a direct sub-directory of where the
viewerOCX.dll
resides.
How to move pages in pdf reader - re-order PDF pages in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Customizing Page Order of PDF Document in C# Project
reverse page order pdf online; how to move pages in pdf
How to move pages in pdf reader - VB.NET PDF Page Move Library: re-order PDF pages in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Sort PDF Document Pages Using VB.NET Demo Code
how to move pages within a pdf; how to reverse pages in pdf
© PDF Tools AG – Premium PDF Technology 
3-Heights™ PDF Viewer API, March 24, 2016 11/61
It consists of two sections:
[fonts]
and
[replace]
. Both sections are used to map fonts in the PDF to fonts in 
the installed font collection on the operating system. This comes into play when the font in the PDF document does 
not have an embedded font program, or the embedded font is not usable.
The mapping only works if the font types of the specified fonts are matching; e.g. if the font in the PDF is a symbolic 
font, such as“Symbol” or“ZapfDingbats”, the mapped font must be symbolic too.
The section
[fonts]
is only considered if the font-matcher does not find an appropriate font amongst the existing 
installed fonts. It is suggested to only use this section.
The section
[replace]
is stronger and applied before the font-matcher.  This means a font will be replaced as 
defined, even if the correctly installed font is available on the system.
Syntax: The syntax of the mapping file is as follows
[fonts]
PDF_font_1=installed_font_1{,font_style}
PDF_font_2=installed_font_2{,font_style}
[replace]
PDF_font_n=installed_font_n{,font_style}
PDF_font_* is the name of the font in the PDF. This name can be found in one of the following ways:
Use any tool that can list fonts. Such as 3-Heights™ PDF Extract or 3-Heights™ PDF Optimizer. Ignore possible 
prefixes of font subsets.  A subset prefix consists of 6 characters followed by the plus sign.  For example
“KHFOKE+MonotypeCorsiva”, in this case only use“MonotypeCorsiva” as font name in the mapping file.
Open the document with Adobe Acrobat, use the“MarkUp Text Tool”, mark the text of which you would like 
to know the font name, right-click it, select “Properties...”
installed_font_* is the font family name of the installed font. To retrieve this name, find the font in the Windows’
font directory and open it by double-clicking. The first line in the property window displays the font family name 
(this may vary depending on the operating system). The font family name does not include font styles; so an 
example of a font family name is“Arial”, but not“Arial Italic”.
font_style is an optional style, that is added coma-separated after the font family name. The style is always one 
word. Examples of font styles are “Italic”, “Bold”,“BoldItalic”. Omit the font style, if it is “Regular”or“Normal”.
Remove blanks from all font names, i.e. both the
PDF\_font
and the
installed\_font
.
Example:
[fonts]
Ryumin-Light=MSMincho
GothicBBB-Medium=MSGothic
[replace]
ArialIta=Arial,BoldItalic
2.6 Note about the Evaluation License
With the evaluation license the 3-Heights™ PDF Viewer API automatically adds a watermark to the displayed pages.
C# TIFF: How to Reorder, Rearrange & Sort TIFF Pages Using C# Code
Using this C#.NET Tiff image management library, you can easily change and move the position of any two or more Tiff file pages or make a totally new order for
pdf change page order; how to reorder pages in pdf reader
C# Word - Sort Word Pages Order in C#.NET
page reorganizing library control, developers can swap or adjust the order of all or several Word document pages, or just C# DLLs: Move Word Page Position.
how to rearrange pages in a pdf document; move pages in a pdf file
© PDF Tools AG – Premium PDF Technology 
3-Heights™ PDF Viewer API, March 24, 2016 12/61
3License Management
There are three possibilities to pass the license key to the application:
1. The license key is installed using the GUI tool (graphical user interface). This is the easiest way if the licenses are 
managed manually. It is only available on Windows.
2. The license key is installed using the shell tool. This is the preferred solution for all non-Windows systems and 
for automated license management.
3. The license key is passed to the application at run-time via the
SetLicenseKey
method. This is the preferred 
solution for OEM scenarios.
3.1 Graphical License Manager Tool
The GUI tool
LicenseManager.exe
is located in the
bin
directory of the product kit.
3.1.1 List all installed license keys
The license manager always shows a list of all installed license keys in the left pane of the window. This includes 
licenses of other PDF Tools products. The user can choose between:
Licenses available for all users. Administrator rights are needed for modifications.
Licenses available for the current user only.
3.1.2 Add and delete license keys
License keys can be added or deleted with the “Add Key” and “Delete”buttons in the toolbar.
The“Add key” button installs the license key into the currently selected list.
The“Delete” button deletes the currently selected license keys.
3.1.3 Display the properties of a license
If a license is selected in the license list, its properties are displayed in the right pane of the window.
C# PowerPoint - Sort PowerPoint Pages Order in C#.NET
library control, developers can swap or adjust the order of all or several PowerPoint document pages, or just change the C# DLLs: Move PowerPoint Page Position.
reordering pdf pages; how to move pages around in pdf file
C# PDF File & Page Process Library SDK for C#.net, ASP.NET, MVC
Barcoding. XImage.Barcode Reader. XImage.Barcode Generator. Others. RasterEdge XDoc.PDF allows you to easily move PDF document pages position, including
pdf move pages; move pdf pages online
© PDF Tools AG – Premium PDF Technology 
3-Heights™ PDF Viewer API, March 24, 2016 13/61
3.1.4 Select between different license keys for a single product
More than one license key can be installed for a specific product. The check-box on the left side in the license list
marks the currently active license key.
3.2 Command Line License Manager Tool
The command line license manager tool
licmgr
is available in the
bin
directory for all platforms except Windows.
A complete description of all commands and options can be obtained by running the program without parameters:
licmgr
List all installed license keys:
licmgr list
The currently active license for a specific product is marked with a star ’*’ on the left side.
Add and delete license keys:
Install new license key:
licmgr store X-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Delete old license key:
licmgr delete X-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Both commands have the optional argument
-s
that defines the scope of the action:
g
For all users
u
Current user
Select between different license keys for a single product:
licmgr select X-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
3.3 License Key Storage
Depending on the platform the license management system uses different stores for the license keys.
3.3.1 Windows
The license keys are stored in the registry:
C# PDF insert text Library: insert text into PDF content in C#.net
to PDF in preview without adobe reader installed in int pageIndex = 0; // Move cursor to (400F outputFilePath = Program.RootPath + "\\" output.pdf"; doc.Save
how to rearrange pages in a pdf file; rearrange pages in pdf reader
VB.NET PDF insert text library: insert text into PDF content in vb
PDF in preview without adobe reader component installed. Dim pageIndex As Integer = 0 ' Move cursor to String = Program.RootPath + "\\" output.pdf" doc.Save
how to reorder pages in pdf file; pdf change page order acrobat
© PDF Tools AG – Premium PDF Technology 
3-Heights™ PDF Viewer API, March 24, 2016 14/61
HKLM\Software\PDF Tools AG
(for all users)
HKCU\Software\PDF Tools AG
(for the current user)
4Programming Interfaces
4.1 Visual Basic
After installing and registering the PDF Viewer, you find a Visual Basic example
PDFViewer.vbp
in the directory
samples\VB\
. You can either use this sample as a basis for an application, or you can start from scratch.
If you start from scratch, first create a new Standard-Exe Visual Basic 6 project. Add the 3-Heights™ PDF Viewer API 
OCX component:
This will add the PDF Viewer API object icon, which looks like this:
Add PDF Viewer object and a command button, so that you receive a form that looks similar as the one shown 
below:
C# PDF Image Extract Library: Select, copy, paste PDF images in C#
Get image information, such as its location, zonal information, metadata, and so on. Able to edit, add, delete, move, and output PDF document image.
rearrange pages in pdf; reorder pdf pages online
VB.NET PDF Library SDK to view, edit, convert, process PDF file
Rapidly and multiple PDF document (pages) creation and edit methods file formats; merge, append, and split PDF files; insert, delete, move, rotate, copy
pdf rearrange pages; how to reverse pages in pdf
© PDF Tools AG – Premium PDF Technology 
3-Heights™ PDF Viewer API, March 24, 2016 15/61
Now double-click the command button, add an open function and your PDF Viewer API is already completed. The 
open function is the first function described in the next chapterUser’s Guide
.
4.2 .NET
The 3-Heights™ PDF Viewer API does not provide a native .NET interface. In a .NET project the component is used 
through its COM interface.
Therefore the component first needs to be registered as described in the chapterCOM Interface
.
When using the component in a new project, add the PDFViewer Class to the Toolbox. To do so, right-click on the 
expanded MS Studio’s Toolbox and select “Choose Items...”. In the dialog select the COM component“PDF Viewer
Class”as shown in the screenshot below:
© PDF Tools AG – Premium PDF Technology 
3-Heights™ PDF Viewer API, March 24, 2016 16/61
After this step the PDFViewer Class is available in MS Studio’s Toolbox as indicated in the screenshot below:
Use this class to draw a PDFViewer component onto a form.  This step creates the COM-Interop DLL
In-
terop.VIEWEROCXLib.dll
and refers to it as
AxVIEWEROCXLib
in the project. The screenshot below shows 
this.
© PDF Tools AG – Premium PDF Technology 
3-Heights™ PDF Viewer API, March 24, 2016 17/61
The
Interop.VIEWEROCXLib.dll
is automatically generated when launching an MS Studio project that uses 
the
PDFViewer
Class and
ViewerOCX.dll
is registered on that OS.
4.3 MFC
Please refer to the sample “mfcviewer”, which is created using the MFC wizard and is provided with the software 
package.
5User’s Guide
Most samples in this guide are written in Visual Basic.  The call sequence, however, for any other programming 
language is the same.
5.1 Open a PDF Document
Documents can be opened either from file using the method
Open
or from memory using the method
OpenMem
.
A password is required and must be provided if the file is encrypted with a user password. For documents that have 
no user password set, use the default password - an empty string. Here is a simple VB example that shows how to 
open a PDF file from disk.
Example: Open PDF from File System.
private Sub Open_Click()
If Not ViewerControl.Open(App.Path & "\input.pdf", "") Then
MsgBox "Failed to open input file"
© PDF Tools AG – Premium PDF Technology 
3-Heights™ PDF Viewer API, March 24, 2016 18/61
End If
End Sub
ViewerControl is an object of type PDFViewer. Its name is defined by the name of the viewer control. The sample 
checks whether opening the input file was successful or not. If not, it shows a message box.
OpenMem
is usually used when a PDF document is already available in memory, e.g. is read from a data base or is 
passed in-memory from another application.
The following example shows how a PDF document can be opened form memory by reading it from file and writing 
it in a byte array and then reading that byte array using
OpenMem
.
Example: Open PDF from Memory.
Private Sub OpenMem_Click()
Dim bChar() As Byte
Dim lFileLenght As Long
Open App.Path & "\input.pdf" For Binary As #1
lFileLenght = LOF(1)
ReDim bChar(lFileLenght - 1)
Get #1, , bChar
Close #1
ViewerControl.OpenMem bChar, ""
End Sub
Using
OpenMem
is especially useful if the file is already in memory. This can either happen when the application 
just created the file or if the same file is used multiple times.
5.2 Navigate
There are various ways how the user can navigate in a document with the viewer control. The application program­
mer has all options to enable, disable or limit the user’s navigation. The following features can be used to navigate:
Use the property
Page
to set page number to be displayed. The page range goes from 1 to
PageCount
.
Use the mouse in cursor mode eCursorModeMove (default) to scroll the page by pressing the left mouse button 
and moving the mouse up and down. Change the curser mode using the property
CursorMode
.
Use horizontal and vertical scroll bars. Scroll bar functionality can be disabled using the property
ViewerOp-
tions
and disable (AND NOT
2
) eViewerOptionScrollbars.
Use the mouse wheel to scroll. The mouse wheel can be disabled using the property
ViewerOptions
and 
enable (OR) eViewerOptionDisableMouseWheel.
Use the method
Goto
to move to a specific location and zoom level within the document.
Use the outlines (bookmarks) or thumbnails from the navigation panel at left hand side of the control to random 
access a position.
The navigation panel can be disabled using the property
ViewerOptions
and disable eViewerOption­
Pages and eViewerOptionOutlines from it.
Enable eViewerOptionPages, disable eViewerOptionOutlines to show thumbnails
Enable eViewerOptionOutlines, disable eViewerOptionPages to show outlines; if there are not outlines in 
the document, the navigation panel is not displayed.
Internal and external links within the content of the PDF document can also be used to navigate.
2
Options are enabled using bitwise OR and disabled using bitwise AND NOT. See also chapter TPDFRendererOption.
© PDF Tools AG – Premium PDF Technology 
3-Heights™ PDF Viewer API, March 24, 2016 19/61
Internal links (Goto) are disabled using eViewerOptionDisableGoto.
External links (GotoR) are disabled using eViewerOptionDisableGotoR.
URI are disabled using eViewerOptionDisableURI.
The search functions can indirectly be used to navigate.
5.3 Start a Print Job
A print job can be started using
BeginDocument
. The parameter of
BeginDocument
is the name of the print
job. To define the end the print job, use
EndDocument
.
The method
PrintDocument
starts a print job, prints, and ends the print job. It cannot be combined with other
calls, such as
BeginDocument
or
EndDocument
.
5.3.1 What Is a Print Job?
A print job is a series of pages that are printed as one job. All pages of a print job are printed before the next print
job starts.
The order in which individual print jobs are processed by the printer device is defined by the spooler. The order in 
which print jobs are created doesn’t have to be the same order as they are printed. Small print jobs may receive 
higher priority and can overtake large print jobs. An exception to this are linked print jobs.
5.3.2 Individual Pages
The 3-Heights™ PDF Viewer API can print the document on display or a page thereof. It is not intended to be used 
for automated bulk printing.
The following sample shows how to open a printer, how to start and name a print job and how to print two copies.
It assumes a document is already opened and displayed.
Example:
Private Sub Print_Click()
' replace the printer name with your printer name
ViewerControl.OpenPrinter "HP LaserJet 4050 Series PS"
' start a new print job called "MyJob"
ViewerControl.BeginDocument "MyJob"
' loop through the number of copies
NumberOfCopies = 2
For iCopies = 1 To NumberOfCopies
' loop through the pages
For iPage = 1 To ViewerControl.PageCount
ViewerControl.PrintPage iPage
Next iPage
Next iCopies
' end the print job
ViewerControl.EndDocument
' close the printer and delete the temporary font files
ViewerControl.ClosePrinter
Documents you may be interested
Documents you may be interested