open pdf from windows form c# : How to edit and delete text in pdf file Library SDK class .net azure ajax redp52350-part1720

Front cover
IBM Datacap Accounts 
Payable Capture
Jan den Hartog
Tom Stuart
How to edit and delete text in pdf file - delete, remove text from PDF file in, ASP.NET, MVC, Ajax, WinForms, WPF
Allow C# developers to use mature APIs to delete and remove text content from PDF document
delete text in pdf file online; remove text from pdf preview
How to edit and delete text in pdf file - VB.NET PDF delete text library: delete, remove text from PDF file in, ASP.NET, MVC, Ajax, WinForms, WPF
VB.NET Programming Guide to Delete Text from PDF File
delete text pdf preview; remove text from pdf online
C# PDF File & Page Process Library SDK for, ASP.NET, MVC
in Field Data. Field: Insert, Delete, Update Field. File Permissions. Password: Open Document. Edit Digital Signatures. Highlight Text. Add Text. Add Text Box. Drawing
pdf editor delete text; delete text pdf files
C# PDF metadata Library: add, remove, update PDF metadata in C#.
Evaluation library and components provide varieties of functionalities to edit and update PDF metadata in Remove and delete metadata from PDF file.
how to delete text from pdf document; how to edit and delete text in pdf file
© Copyright IBM Corp. 2015. All rights reserved.
Introduction to Accounts Payable Capture
The IBM® Datacap Accounts Payable Capture application is a 
learning application
. Using a 
number of techniques, it has the ability to learn new instances of known documents when 
they are introduced into the system. The Accounts Payable Capture workflow can be used for 
many types of documents and applications, not just invoices.
This IBM Redpaper™ publication discusses the role that IBM Datacap Accounts Payable 
Capture plays in Accounts Payable (AP). You are introduced to the different jobs in the 
workflow and examine the task profiles, rulesets, rules, functions, and actions that make it 
This paper guides you through the IBM Datacap Accounts Payable Capture application. The 
application is called a 
foundation application
because it is used as a starting point for 
capturing complex machine-printed forms, such as invoices, that might contain line items.
Because Accounts Payable Capture is continually evolving with new technologies and 
techniques, your version of the product might differ slightly from what is shown in this paper. 
However, most of the techniques described in this paper are applicable to any version of the 
product. After you have gained an understanding of how these technologies interact, you will 
be able to apply them to other data capture scenarios needing similar capabilities.
How Accounts Payable Capture works
IBM Datacap Accounts Payable Capture captures data from invoices and validates that data 
with business rules and with data stored in business applications. It then exports the 
document images, in PDF format, to the file system and the data to an XML file. In a 
production deployment, the document images would be exported to an image repository and 
the data to a business application.
In a typical application, a purchase order (PO) is entered into a Purchase Order system. After 
approval, the PO is sent to a vendor for fulfillment. The vendor ships the goods along with a 
shipping document.
The customer receives the goods and enters the shipping document into the business 
application as a Proof of Delivery (PoD). Next, the vendor sends an invoice to the Accounts 
Payable (AP) department. The AP department uses IBM Datacap Accounts Payable Capture 
to capture the invoice. Accounts Payable Capture interacts with the business application to 
obtain the most accurate data about the vendor and the items on the PO.
C# PDF Page Delete Library: remove PDF pages in, ASP.NET
BestC#.NET PDF edit control for deleting PDF pages in Visual Advanced component and library able to delete PDF page in to remove a range of pages from PDF file.
online pdf editor to delete text; how to delete text in a pdf acrobat
VB.NET PDF Page Delete Library: remove PDF pages in, ASP.
Free PDF edit control and component for deleting PDF pages Easy to delete PDF page in .NET WinForms application to remove consecutive pages from PDF file in VB
how to delete text from a pdf in acrobat; how to delete text in pdf converter professional
IBM Datacap Accounts Payable Capture
Once in the business application, a three-way match occurs. In this process, the PO line 
items, the PoD line items, and the invoice line items are compared. When these items match 
and the customer is confident that they have received the goods they ordered, the business 
application issues a check to the vendor.
Figure1 illustrates this process in a simple diagram.
Figure 1   AP process diagram
Jobs available in the workflow
There are a number of different jobs in the Accounts Payable Capture workflow. Although all 
of these jobs share common elements, they are different in some way.
Figure2 on page5 shows the jobs available in IBM Datacap Accounts Payable Capture.
C# PDF Text Extract Library: extract text content from PDF file in
C#.NET PDF text extracting library package, you can easily extract all or partial text content from target PDF document file, edit selected text content, and
delete text pdf document; how to delete text from pdf
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
size, images size reducing can help to reduce PDF file size effectively will also take up too much space, glyph file unreferenced can Delete unimportant contents
how to delete text in a pdf file; how to delete text in a pdf acrobat
Figure 2   Jobs in Accounts Payable Capture workflow
Figure2 shows the jobs in the Account Payable Capture workflow. Key information about the 
various jobs is as follows: 
 Jobs starting with the term 
use a web browser to scan and upload, but the remaining 
tasks in the job are identical to their Datacap Desktop workflow counterparts.
 Jobs containing 
use a virtual scanning technique.
 Jobs called 
are used to drive a physical scanner. You cannot set up the Datacap 
Desktop tasks without a scanner attached to the machine and drivers to operate it. By 
default, the Scan task is not present. Instead, these jobs begin with 
Batch Profiler
require you to add a physical Scan task as a batch creation task and as the first task in the 
 Any jobs that end with 
have an optional FlexID task before Batch Profiler to 
manually identify key pages in the batch.
 The jobs that end with 
-Dot Matrix
are identical to jobs with a similar name in all respects 
except for the name of the job itself. When a batch is processed, during the recognition 
phase, the job name is queried. If the job ends with “-Dot Matrix”, the recognition engine is 
configured, using rules, for dot-matrix recognition.
 Any jobs that end with 
-Multipage TIFF
are also identical to the jobs with a similar name, 
aside from the name itself. At run time, the name of the job is queried to enable rules that 
do page identification based on the structure of the multipage TIFF input files.
Using nearly identical jobs with different names is useful for applications where minor 
changes in the execution of rules can be achieved by using different jobs.
C# PDF File Compress Library: Compress reduce PDF size in
size, images size reducing can help to reduce PDF file size effectively will also take up too much space, glyph file unreferenced can Delete unimportant contents
how to erase pdf text; online pdf editor to delete text
C# PDF Sticky Note Library: add, delete, update PDF note in
Allow users to add comments online in ASPX webpage. Able to change font size in PDF comment box. Able to save and print sticky notes in PDF file.
pdf editor online delete text; how to delete text from a pdf reader
IBM Datacap Accounts Payable Capture
When each task profile gets executed
In most cases, task profiles are run by tasks, but Accounts Payable Capture pioneered the 
use of running task profiles, on demand, from a Verify panel. By using rules, which you run by 
clicking a button in a Verify panel, you can reuse task profiles in multiple places during the 
execution of your application. You can also have a single codebase for most of your 
application. Calling rules from a Verify panel is preferable to coding and maintaining the same 
functionality in the panels themselves.
Figure3 shows the task profiles used in Accounts Payable Capture.
Figure 3   Task profiles in Accounts Payable Capture
The first four task profiles are run by workflow tasks. Except for the Validate task profile, the 
task profiles are named the same as the tasks that call them.
The Validate task profile is called from a data entry panel during the Verify task.
FingerprintAdd is called when you add a fingerprint manually on the Zones tab in Datacap 
Studio. With an Accounts Payable Capture workflow, you do not do this often. Instead, the 
Accounts Payable Capture workflow can add fingerprints to the system automatically, and 
with greater accuracy, than is possible with the manual interface in Datacap Studio.
Sticky is called from the Verify panels when the Verify panel detects a <New> fingerprint that 
it has learned zones for, from a previous image in the batch. 
CalculateBlank and Find Details run from buttons on various Verify panels.
ReRecog allows the operator to send a page or multiple pages back for recognition in a 
different language. This action is useful if one or more pages are in an unexpected language 
and automatic recognition fails.
A walkthrough of the task profiles
The rest of this paper takes you through the task profiles of the Accounts Payable Capture 
workflow, as used in IBM Datacap Accounts Payable Capture at the time of writing.
Before you attempt the walkthrough, you must understand the concepts of rulesets, rules, 
functions, actions, how they are attached to the Document Hierarchy (DCO), and how they 
are run. 
This section highlights the following task profiles:
 The VScan task profile
 The Batch Profiler task profile
 The Verification process
 The Export task profile
The VScan task profile
The VScan task profile brings documents into the system programmatically, without user 
intervention. Other methods exist for bringing documents into the system in an Accounts 
Payable Capture workflow as well. For those methods, the jobs listed as Main require the use 
of a physical scanner. 
Other common Accounts Payable Capture tasks, although not used in the foundation 
application at the time of writing, pull documents from an email system or a fax server.
The VScan task profile runs in the Demo jobs that are not designated as 
in the Accounts 
Payable Capture workflow (Figure4).
Figure 4   The VScan task profile
By default, the VScan task profile contains one ruleset, that is also called VScan. It is 
common to add additional rulesets to this task profile if your input images are PDF, JPEG, 
Grayscale, Color, or some other image type that must be converted to bi-tonal TIFF. If you 
place the convert actions in the Batch Profiler task profile, rolling back batches to the start of 
Batch Profiler becomes an issue because the images try to go through the conversion 
process again.
The VScan ruleset
The VScan ruleset, shown in Figure5 on page8, reads single or multipage TIFF files from 
the input directory.
Tweak your application using the VScan ruleset: Set up, develop, and tweak your 
applications using the VScan ruleset. When tweaking the system for optimal performance, 
it is advisable to process the same images a number of times so that you can tell if the 
modifications you make have the wanted effect. This approach is preferred to running 
multiple batches through a scanner, where each page might be scanned in slightly 
IBM Datacap Accounts Payable Capture
Figure 5   The VScan ruleset
SetSourceDirectory indicates that VScan must look for images in the input folder specified in 
VScan source folder under Datacap Application Manager→ APT→ Application 
settings→ Main. It is preset to accept a maximum of 50 images and to burst any multipage 
TIFF files into single-page TIFF files.
The Batch Profiler task profile
The Batch Profiler task profile is the main background processing task profile. It is used in 
every job in the Accounts Payable Capture workflow and performs all processing between 
image acquisition into the system and the verify process.
A few of the rulesets, such as Purchase Order Line Reconciliation (POLR) and 
VendorNumLookup, are specific to invoice processing. They might not be needed in other 
learning applications.
Figure6 shows the ruleset composition of the Batch Profiler task profile.
Figure 6   The Batch Profiler task profile 
The PageID ruleset
Most Datacap applications that process structured documents, such as single-page forms, 
use fingerprinting as the primary page identification technique. However, in situations where a 
batch might contain several different, multipage documents, and where it is not known 
whether a piece of data will be found on the first page or on a subsequent page, a different 
approach for page identification is required.
Learning applications usually have three working page types: 
 Main_Page (required)
 One or more optional Trailing_Page types
 Attachment page types.
Figure7 shows the document structure in Accounts Payable Capture.
Figure 7   The document structure in Accounts Payable Capture
Accounts Payable Capture uses page identification actions from a library called PageID.rrx in 
the rules directory of Accounts Payable Capture:
 “Identification by barcode separator document” on page9
 “Identification by filename variable” on page9
Identification by barcode separator document
Batches containing one or more single-page invoices need minimal batch preparation. 
However, batches containing one or more multipage documents need a barcoded separator 
sheet placed on top of each document. Usually these barcoded sheets are printed on 
light-colored paper so that, after scanning, the sheets can be located easily and removed for 
reuse if wanted. An additional barcoded separator sheet must be included between the main 
document and any attachment pages.
If a batch contains both single-page documents and multipage documents, the single page 
documents must be scanned first. After the application encounters a document separator, all 
subsequent documents in the same batch must also use document separators.
Identification by filename variable
Documents that are ingested electronically, for example using the VScan task, do not need 
separator pages. These documents are typically received as multipage PDF or TIFF files and 
are identified using a variable containing the name of the file. At run time, when a batch is 
processed, a variable is placed at page level in the data structure, indicating its origin. This 
variable is called 
The PageIDbyVariableChange action takes advantage of this feature by using three 
parameters to name the pages in the batch. The first parameter is the variable to “watch” for 
change, ScanSrcPath in this case. The second parameter is the page type you want to assign 
to the first page after the watched variable changes. The third parameter is the type you want 
to use for the remaining pages in the batch until ScanSrcPath changes again, indicating the 
beginning of a new document.
For example, consider an email message that contains three TIFF files. At the batch level, you 
place the PageIDbyVariableChange() action with the appropriate parameters:
Each TIFF file is a multipage invoice. When the images are processed, the TIFF files are 
separated into individual TIFF files and each page is assigned a ScanSrcPath variable 
containing a reference to the source image. If the email contained two three-page TIFF files, 
you now have a batch with six images, three of them with a ScanSrcPath variable referencing 
the first multipage TIFF and three images referencing the second multipage TIFF. 
IBM Datacap Accounts Payable Capture
The PageIDbyVariableChange action processes the batch. Therefore, when the first source 
image is referenced by the ScanSrcPath variable, it names the page Main_Page. All pages 
until the ScanSrcPath variable changes are given the Trailing_Page page type.
Figure8 shows how these actions are defined in the PageID ruleset.
Figure 8   The PageID ruleset
The PageID rule contains a single batch-level rule. When rulesets start processing the DCO, 
every image in the batch is assigned a batch-level object with a child page of type 
When VScan runs, it places the ScanSrcPath variable on each page containing the name of 
the source TIFF file. In a case where VScan breaks out images from a multipage TIFF or PDF 
file, several images in a row can have the same ScanSrcPath variable.
The Multipage Origin() function contains an action, Is_JobName(), which checks which job 
name you chose when running the batch. If the job name is Demo-Multipage TIFF, this action 
and the PageIDByVariableChange() is run, querying the ScanSrcPath on each 
image and naming the pages accordingly.
When the ScanSrcPath variable changes from one image to the next, the image with the new 
ScanSrcPath value is named according to the second parameter of the 
PageIDByVariableChange() action. In this case, it set assigns Main_Page as the page type. 
For every subsequent page in the batch containing the same value in ScanSrcPath, the 
images get the type specified in the third parameter, Trailing_Page in this case.
If you are not running the Demo-Multipage TIFF job, the Multipage Origin() function returns 
false and the function Barcoded Separators and FlexID is run instead. This function contains 
one action, PageIDByBCSep(), which reads the settings.ini file and uses that information 
to set the types on all the pages.
As mentioned in section “Identification by barcode separator document” on page9, you only 
need barcode separators in multipage documents in the batch. Single-page documents are 
placed at the start of each batch and get the page type specified in the second parameter, 
Main_Page in this case.
When PageID() is complete, all pages must be named. If a page is not typed as 
into the PageID ruleset, it is not renamed. This is because FlexID might have named the 
pages before PageID runs, and PageID must not overwrite what an operator has specified as 
the page type. However, if FlexID has run, the actions set the type on any Other page that has 
not been renamed in FlexID according to the PageID_LastType_ThisType section in the 
settings.ini file.
Documents you may be interested
Documents you may be interested