devexpress pdf viewer control asp.net : Copy pdf page to clipboard SDK application service wpf html web page dnn dcve6-part977

3-Heights™ Document Converter, Version 4.6 
Page 61 of 90 
January 25, 2016
© PDF Tools AG - Premium PDF Technology 
TRANSFORM 
Default  empty  (none).  If  set,  a  custom  prepared 
transformation  utility  is  invoked  prior  document 
conversion (and after pre-validation). For details, refer 
to 5.4.5, “Document Transformations”. 
It is possible to restrain options to the scope of a particular application or document by 
prefixing the option key with the application name or the document name, separated by 
a colon. This is useful when multiple documents are passed in a single call to AppendDoc 
(e.g. in a ZIP file). 
Example: HTML:Outline=TITLE;URL:Outline=FILENAME;Outlook:Outline=%Subject% 
Document  options  can  also  be  used  at  the  job  level.  If  a  certain  option  value  is 
evaluated,  the  settings  specified  at  the  document  level  have  priority  over  settings 
specified at the job level. 
5.4.1.6  Passing Parameter Data for Custom Plug-ins 
The AppendDoc method accepts optional parameter data which is transported along with 
the document data. This can be useful for document conversion by a custom plug-in. 
Parameter data consists of an array of key/value pairs. A key is a  name  string that 
permits identification and retrieval of the value data, which is passed as a byte array. A 
server  side  plug-in  will  thus  be  able  to  retrieve  the  parameter  data  when  its 
“OnDocumentOpen” method is activated. 
To facilitate passing of parameter date with the “o2pclient.exe” command line tool, the 
O2PProxyAPI  DLL  supports  passing  of  parameter  data  by  a  special  treatment  of 
document options identified by a leading hash (#) sign. When specifying “#Data=path-
to-parameter-data” as the first document option, the API will read the contents of the 
file with the specified name and pass this as parameter data with name “Data”. The 
option is  removed  from  the  beginning  of  the  document  options  string  before  being 
forwarded to the server. 
5.4.2  Command Line Executable 
o2pclient.exe provides a command line interface to the Document Converter, using the 
API functions described in the previous section. 
When called without any arguments, it will print a usage message to standard output: 
Usage:    o2pclient  [ Options ] office.doc office.xls ... 
Options:  -sp url      service point URL overriding entry in .config file; 
NOTE: this must be first option on the command line. 
-l           list known file extensions 
-o out.pdf   specify name of output file (default: out.pdf) 
-j options   set job options 
-b options   set file options 
-v           verbose 
-ax file     add XML Metadata from file (unchecked) 
-share       pass files via shared file system 
Job options:  PDF.USERPASS=pass;PDF.OWNERPASS=pass;PDF.PERMISSION=-1; 
PDF.DATE=20070901120000 
File options: “Outline=’Bookmark Text “with quote”’”;xz.zip:Outline=Archive XY 
ive XY 
Copy pdf page to clipboard - copy, paste, cut PDF pages in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Easy to Use C# Code to Extract PDF Pages, Copy Pages from One PDF File and Paste into Others
delete pages from pdf preview; copying a pdf page into word
Copy pdf page to clipboard - VB.NET PDF Page Extract Library: copy, paste, cut PDF pages in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Detailed VB.NET Guide for Extracting Pages from Microsoft PDF Doc
delete page from pdf; delete pages from pdf file online
3-Heights™ Document Converter, Version 4.6 
Page 62 of 90 
January 25, 2016
© PDF Tools AG - Premium PDF Technology 
Input documents may contain “*” wildcard characters to easily pass multiple files for 
processing. The sequence will be determined by the lexical ordering as provided by the 
Windows file system. 
5.4.3  Watched Folder Service 
O2PWFS.exe is installed and configured as described in section 4.4. 
The service accepts job and document options that are specified in the corresponding 
Thread declaration in the INI file, or in a job control file. 
The INI file’s Thread level –w option serves to specify the folder path of the (watched) 
drop directory. The service creates the following subfolders within that directory: 
Failed 
dropped  files  are  moved  to  this  folder  when  a  failure  is 
encountered 
InProgress 
dropped files are moved to this folder while being processed 
Jobs 
dropped files are moved here; they are renamed to contain a 
prefix consisting of date and time, so they will be processed in 
the order they were dropped 
Logs 
log files for files that failed during processing are stored here; 
the  log file name consists  of the  original  file’s  name and  the 
extension .txt 
PDFs 
this directory contains the PDF output of successfully processed 
files 
NOTE: the thread option –o <path> can be used to specify an 
alternate path for this directory 
TIFFs 
this  directory  contains  TIFF  output  of  successfully  processed 
files  
NOTE:  the  name  of  this  directory  depends  on  the  FORMAT 
setting in the job options specified for the folder (unless option 
–o is specified – see note above). 
Succeeded 
this  directory  contains  dropped  input  files  that  have  been 
successfully processed (when “AutoDelete=false” is specified in 
the INI file) 
A job control file is a text file that is dropped into the watched folder, having the file 
extension “.control”. Each line of the text file either consists of an option setting, or a 
document file path. 
Note:  each  thread  uses  a  single  converter  job;  since  job  options  are  reset  before 
beginning processing of a new conversion, settings in a control file will be confined to 
the scope of the control file. 
Sample job control file: 
-b Outline=FILENAME;Outlook:Outline=%Subject% 
\\ComputerName\ShareName\document1.rtf 
.rtf 
\\ComputerName\ShareName\document2.xls 
.xls 
\\ComputerName\ShareName\document3.msg 
3.msg 
VB.NET Word: VB Code to Create Windows Word Viewer | Online
a Word document can be copied into clipboard and pasted viewer; Easy to zoom in / out target Word document page; it is possible for users to copy the document
delete page from pdf acrobat; delete pages from pdf preview
3-Heights™ Document Converter, Version 4.6 
Page 63 of 90 
January 25, 2016
© PDF Tools AG - Premium PDF Technology 
Notes: 
•    A suitable domain account must be specified for the watched folder service in the 
“login” tab to ensure that files on a network share can be accessed 
•    The watched folder service will move the control file to the succeeded folder (or 
deleted it) on job completion. The documents referenced in the control file are 
left untouched. 
5.4.4  Stamping 
PDF documents can be stamped while being processed. Stamp information is passed via 
an XML file. The XML file can be located on the server, or can entirely be passed via API. 
A detailed  description  of the  XML definition can be found  with  the “3-Heights™  PDF 
Security API” documentation, section 5.8. 
http://www.pdf-tools.com/public/downloads/manuals/seca.pdf  
5.4.4.1  Pre-installed Stamp Files 
Pre-installed stamp files are stored on the server, preferably in the installation folder of 
the converter service or a subfolder thereof.  
A pre-installed stamp file is applied via the “STAMP=stamp.xml” job option. “stamp.xml” 
is the name of the stamp file. This can be an absolute file path, or a path relative to the 
installation folder of the converter service. 
It is possible to define place  holders in the XML file that can be replaced with actual 
data. Example: “STAMP=stamp.xml?name=John Smith&&mail=john.smith@moon.ext”  
Any occurrences of [[name]] will be replaced by the actual string “John Smith” etc. 
Note: the converter service assumes the XML stamp file is encoded in UTF8. 
5.4.4.2  Passing Entire Stamp Files via API 
An entire stamp XML file can also be passed via the programming interfaces available 
(including the web service). Example: 
res = ws.convertFileWithData (docBytes,  
// bytes of input document 
“STAMP=param:x;ORIGINALNAME=p.doc”, // specify STAMP source (“x”) 
xmpBytes, 
// XMP metadata (may be null) 
“x”, 
// parameter name “x” (must match stamp source) 
stampBytes);  // stamp XML data (UTF8 encoded) 
5.4.4.3  References to Fonts and Images 
A stamp file  will  reference  fonts  for  text  stamps,  and image  files  for image  stamps. 
While  fonts  can  be  both  be  specified via  their  TrueType  name  and  via  a  file  name, 
images can only be specified via a file name. 
Since there  is  no  mechanism  to pass image contents along with  the  stamp file, this 
means that image data must be stored locally on the server. Images can thus either be 
pre-installed, or passed from the application via a shared folder. 
3-Heights™ Document Converter, Version 4.6 
Page 64 of 90 
January 25, 2016
© PDF Tools AG - Premium PDF Technology 
5.4.5  Document Transformations 
Document transformations can be used to process an input document in a special way 
prior  to  further  conversion  via  the  standard  built-in  components  of  the  converter 
service. This can be used in various ways, e.g. 
•    Apply an XSL transformation on an XML file to produce HTML that can then be 
converted via MS Word or Internet Explorer 
•    Use the source document to extract parameter data, and prepare a report from 
data in a database 
The  converter  service  will  perform  transformations  when  the  document  option 
“TRANSFORM=value” is applied. The ‘value’ string is either the name of a VBS script 
located in the installation directory of the converter service, or an arbitrary command 
that can be executed by Windows. To prevent security problems, the commands that 
are permitted must be configured in the [Options] section of the O2PWSC.ini file: 
[Options] 
AllowedTransforms = xsl.vbs : doXml.exe : ApplyXSL.exe * 
The value passed along with the TRANSFORM option will be validated against the value 
string for  AllowedTransforms. There must be an  exact (case sensitive) match  for the 
string  part  preceding  the  ‘*’  character,  otherwise,  an  error  will  be  raised,  and  the 
conversion will fail. The * placeholder allows you to pass additional parameters to the 
transformation tool which may vary from document to document. The colon character is 
used to separate valid alternatives (spaces before or after the separator are ignored). 
The  converter service  will append the  path name  of  the  input  document  as  the last 
command argument. 
When a VBS script is specified with the TRANSFORM option (e.g. TRANSFORM=t1.vbs), 
it is executed via cscript.exe. No extra parameters can be passed. 
In  any  case,  the  transformation  command  shall  write  to  output  a  line  starting  with 
“Output: “, followed by the full name path of the file that has been created as the result 
of the transformation. The converter service will continue by converting this file rather 
than the original input file. After conversion, the file will be deleted. 
5.5 
Optimization 
Transformations (see previous section) can be used to pre-process documents before 
they  proceed  to  conversion  to  PDF  or  TIFF.  The  optimization  of  the  resulting  PDF 
document however must be performed towards the end of the conversion process, prior 
to digital signing. As of version 4.6 of the Document Converter, it is thus possible to 
optionally apply a PDF optimization command using the “PDFOPTMIZE” job option. 
To make use of this feature, you must prepare one or several profiles. A profile specifies 
which  external tool shall  be  executed, and  with  which  options  shall  be  added  to its 
command line.  
Let us assume the O2PWSC.ini configuration file contains the following lines: 
[PdfOptimize] 
archive = -or -od -st -dt 200 -dr 200 -fb 6,7,10 -fc 1,8,10 -fi 2,10 -m -s –oc 
exepath = PDFOPTIMIZE.EXE 
3-Heights™ Document Converter, Version 4.6 
Page 65 of 90 
January 25, 2016
© PDF Tools AG - Premium PDF Technology 
This allows you to specify PDFOPTIMIZE=web in the job options string, having the effect 
that the command “PDFOPTIMIZE.EXE -or -od –st (+more options) <inpdf> <outpdf>” is 
executed, where “<inpdf>” is a placeholder for the intermediate PDF document obtained 
from  the  conversion  process,  prior  to  passing  it  to  the  last  step  involving  PDF/A 
conversion  and/or  signing;  “<outpdf>”  is  a  place  holder  for  the  file  path  where the 
optimized output shall be stored. 
The “exepath” entry shown above defaults to “pdfoptimize.exe”, which is the name of 
the  standard 3-Heights™  PDF  Optimization  Shell tool. After having installed  this  tool 
using  the  MSI installer kit, the System  PATH environment  variable  will  be extended. 
Then restart the Document Converter, so it will “see” this new command. If you choose 
to not have the PATH variable extended, you can specify the full path via the “exepath” 
setting. 
5.6 
Architecture Background 
This section presents an overview of the architecture and components of the Document 
Converter. This information will be helpful for troubleshooting as well as for planning 
and implementing advanced server configuration involving multiple computers. 
Dispatcher Service 
(O2PSRV) 
Additional  
Worker Sessions 
Watched 
Folder Service 
Command Line 
Tool 
O2PProxyAPI.DLL 
O2PProxNET.DLL
Work Session Control 
Program 
(O2PWSC) 
Web 
Application 
O2PProxyAPI.DLL 
O2PProxNET.DLL
O2PProxyAPI.DLL 
O2PProxNET.DLL 
The  service  executable  O2PSRV.EXE  controls startup,  job  dispatching  and  shutdown. 
Typical installations will have this executable registered as a service and configured to 
start automatically at system start. This process runs detached from a desktop or screen 
display. 
The session controller executable O2PWSC.EXE runs in  a converter  service session to 
control the office applications in an interactive (-like) environment. One or more such 
sessions  can  be  configured  to  accept  and  process  conversion  jobs  on  behalf  of  the 
central  dispatcher  process  (O2PSRV).  Typically,  sessions  running  O2PWSC  will  be 
3-Heights™ Document Converter, Version 4.6 
Page 66 of 90 
January 25, 2016
© PDF Tools AG - Premium PDF Technology 
opened automatically via RDP (Remote Desktop Protocol) when O2PSRV starts up, and 
terminate again when O2PSRV shuts down. 
O2PSRV and O2PWSC will usually run on the same server computer, but could also be 
distributed to several computers in a network. This can be useful for load balancing or 
for operational reasons. 
The recommended platform configuration is a Windows 2008 Server (Standard Edition) 
with Microsoft.NET Framework 4.0 installed. 
The following components will run on the client or middle tier: 
The watched folder service executable O2PWFS.EXE, as well as the e-mail folder service 
(if installed) 
The command line executable O2PCLIENT.EXE 
The GUI client application O2PCMApp.EXE 
The proxy interface O2PProxyAPI.DLL 
O2PWFS and O2PCLIENT actually use O2PProxyAPI.DLL  to pass  document  conversion 
jobs  to  the  Document Converter.  While  O2PWFS collects  polls  the  drop directory for 
documents to convert, the command line tool processes documents as specified on the 
command line. O2PProxyAPI.DLL exposes the service interface for these programs, just 
as  it  would  for  any  custom  application  program.  This  DLL  communicates  with  the 
Document Converter’s dispatcher process (O2PSRV) via the O2PProxyNET.DLL. 
Note: the “Ad hoc Converter Service” consists of a scaled down configuration, where the 
dispatcher  service  and  the  session  controller  are  “merged”  into  a  single  process. 
Execution is initiated by starting O2PWSC.exe with the command line option “-x”. The 
execution environment is the current user session from which it is started. Logging to 
the event log will not work. No additional worker sessions are started. 
Note: the “Ad hoc Converter Service” cannot start up successfully when the dispatcher 
service is running due to conflicting access to the configured network port. Make sure 
the dispatcher service is stopped (or disabled). 
5.7 
Plug-ins 
The Document Converter can be extended by custom plug-ins. These are DLLs that are 
configured to be loaded at startup. They must implement a set of functions to support 
the conversion of documents of the plug-in specific format. 
The  SDK  folder  distributed  with  the  Document  Converter  contains  the  C  header  file 
(o2pplugin.h). Please refer to the documentation within the header file. 
To activate any plug-in, add the configuration line “Plugins = <name>.DLL” into the 
[Options] section of the O2PWSC.ini file. If there are multiple plug-in DLLs, list them all 
on one line, separated by a space character. The plug-in DLL shall be located in the 
installation directory of the Document Converter. 
Plug-in DLLs are loaded during initialization of the O2PWSC executable. 
3-Heights™ Document Converter, Version 4.6 
Page 67 of 90 
January 25, 2016
© PDF Tools AG - Premium PDF Technology 
5.7.1  ScriptPlugin DLL 
PDF Tools AG provides a standard plug-in DLL: ScriptPlugin.DLL is a generic plug-in that 
builds a bridge between the C interface and Visual Basic Script. A sample script in VBS is 
also provided and illustrates how AutoCAD 2008 could be integrated. 
To activate this plug-in, add the configuration line “Plugins = ScriptPlugin.DLL” into 
the  [Options]  section  of  the  O2PWSC.ini  file,  and  adjust  the  VB-script  in 
ScriptPlugin.script according to your needs. 
It  is  possible  to  load  and  use  multiple  plug-in  DLLs.  If  you  have  three  different 
applications needing three different VB-scripts, just make copies of the ScriptPlugin.DLL 
and  name it  according  to  your  preferences  –  e.g.  AutoCAD-Plugin.DLL,  and  use  the 
same names for  the scripts (e.g. AutoCAD-Plugin.script). On the “Plugins=” line, just 
append the names of the additional plug-in DLLs, separated by a white space, semicolon 
or colon. 
5.7.2  NetPlugin DLL 
A Microsoft.NET assembly can also host a custom plug-in. It must implement the IPlugin 
interface and provide a constructor that takes an IContainer argument. These interfaces 
are defined in the NetPlugin.DLL, which must be referenced. In addition, the name of 
the assembly must match the name pattern “*NetPlugin*.dll”, and NetPlugin.DLL must 
be listed in the “Plugins” line in the [Options] section as described above. 
NetPlugin.DLL  is  installed  by  default  into  the  installation  directory  of  the  Document 
Converter. 
A source code sample is provided on request. 
5.8 
Debugging 
5.8.1  Debugging of the Dispatcher Service 
Starting problems related to the  dispatcher service can be debugged in the following 
way: 
Make sure the O2PSRV service is stopped (cmd> sc stop O2PSRV) 
Start O2PSRV.exe with the –debug option 
Start a Command Prompt window (run “cmd.exe”) 
Change the current directory to the installation directory of the Document Converter 
Type “O2PSRV –debug” 
3-Heights™ Document Converter, Version 4.6 
Page 68 of 90 
January 25, 2016
© PDF Tools AG - Premium PDF Technology 
You  should  see  the  remote  desktop 
windows pop up, showing an automatic 
login  with  the  configured  service 
account credentials. After completion of 
the  login,  the  work  session  controller 
should automatically be started. 
Common problems that can be detected this way are errors in the configuration of the 
service account credentials or the remoting configuration of the server. 
To terminate the converter dispatcher, click the window’s close button or type ESC. 
An alternative method on Windows 2008 Server or newer platforms consists of 1) check 
the Dispatcher Service’ “Allow service to interact with desktop” checkbox 
3-Heights™ Document Converter, Version 4.6 
Page 69 of 90 
January 25, 2016
© PDF Tools AG - Premium PDF Technology 
and 2) start the “Interactive Services Detection” service (UI0Detect). This will bring up 
the following message: 
You can now click on “Show me the message” to view the dispatcher service’s windows. 
5.8.2  Debugging of Worker Sessions 
Worker sessions can be debugged in two ways, 
3-Heights™ Document Converter, Version 4.6 
Page 70 of 90 
January 25, 2016
© PDF Tools AG - Premium PDF Technology 
1) by grabbing the RDP session using the Terminal Services administrative tool on the 
server hosting the worker session 
2) by running O2PWSC.exe interactively with the command line option –x 
The  first  method  can  be  used  to  identify  a  problem  with  a  running  instance  in  the 
production environment. 
The second method is useful to identify problems during startup of the service. 
Figure: Output window of the O2PWSC (work session controller) program 
5.8.3  Options 
The  O2PWSC.INI  file  supports  the  following  settings  for  debug  use  in  the  [Debug] 
section: 
DELAYEDCLOSE=true 
Wait  two  seconds  before  closing  an  application  popup 
(default false; no delay) 
CLOSECRASHBOXES=false  Do not close popup messages shown by windows when an 
application crashes (default true: close boxes) 
The job option “KeepTempFiles=true” can be specified to suppress deletion of temporary 
files.  This  can  be  useful  to inspect  files  that  are  temporarily  created  e.g.  as  partial 
conversion results.  
5.9 
PDF/A 
The  Document  Converter  supports creation  and  conversion  of documents to produce 
PDF/A compliant output. 
Essentially, the PDFA job option must be set to produce PDF/A compliant output. If job 
inputs include PDF/A compliant documents, the Converter Service may need to override 
Documents you may be interested
Documents you may be interested