open pdf in webbrowser control c# : Erase text from pdf file software application dll winforms html azure web forms sg24625027-part2065

Chapter 11. Font mapping table 
253
A final point to note in the case of OfficeVision/400 is that you are probably still 
restricted to monospaced (fixed-pitch) host-resident fonts because the alignment 
of tabs and columns is incorrect if typographic fonts (variable-spaced) are used.
11.4  Additional useful tips
This section provides some additional useful tips about font substitution. 
11.4.1  Disabling resident font support
You can disable resident font support on the printer. Otherwise, normal font 
substitution occurs. To do this, follow these steps:
1. Ensure the printer writer is ended:
ENDWTR PRTNP17 *IMMED
2. Use the CRTPSFCFG or CHGPSFCFG commands. These may be changed 
without affecting other settings:
CHGPSFCFG PSFCFG(PRTNP17) RESFONT(*NO)
Or you can use AFP Manager as described in 10.2.1, “Resource 
configuration” on page 224.
11.4.2  Suppressing font substitution messages
Normally font substitution is logged in the job log, and a message, such as the 
following example, is sent to the message queue defined in the printer device 
description (usually QSYSOPR):
PQT2072  Font substitution was performed
At Version 4.0 Release 2.0, these messages may be suppressed, if desired, 
using the FNTSUBMSG keyword on the CRTLPSFCFG or CHGPSFCFG 
command. The default is *YES to continue generating these messages as at 
present. Otherwise, you can block the messages with this command:
CHGPSFCFG PSFCFG(NP17) FNTSUBMSG(*NO)
Messages indicating that font substitution failed are not blocked.
11.4.3  Cannot allocate object
You must also ensure that any writers to printers configured as *IPDS, AFP=*YES 
are ended before you attempt to change the font tables. Otherwise, you receive 
messages similar to these examples:
Cannot allocate object QPHFCS in library QUSRSYS
Font table QPHFCS in library QUSRSYS not changed
If this occurs, use the following command to locate which writers are still active:
WRKOBJLCK OBJ(QUSRSYS/QPHFCS) OBJTYPE(*FNTTBL)
Erase text from pdf file - delete, remove text from PDF file in C#.net, 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; how to delete text from a pdf in acrobat
Erase text from pdf file - VB.NET PDF delete text library: delete, remove text from PDF file in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
VB.NET Programming Guide to Delete Text from PDF File
erase text from pdf; how to delete text in pdf file
254
iSeries Printing VI: Delivering the Output of e-business
C# PDF Text Redact Library: select, redact text content from PDF
application. Free online C# source code to erase text from adobe PDF file in Visual Studio. NET class without adobe reader installed.
delete text pdf; how to copy text out of a pdf
C# HTML5 Viewer: Load, View, Convert, Annotate and Edit PDF
logo to PDF document, you and load and save it to current PDF file. Redact tab on viewer empower users to redact and erase PDF text, erase PDF images and erase
how to delete text from pdf document; how to delete text from a pdf
© Copyright IBM Corp. 2002. All rights reserved.
255
Chapter 12.  Using 
form definitions and page definitions
The use of form definitions and page definitions to format line data for an AFP 
application originated in the mainframe environment around 1983. Users of 
Infoprint Manager for AIX and Infoprint Manager for Windows NT and 2000 
commonly use these objects. The AS/400 system has supported data streams 
that use these objects since V2R1 and generated them natively since 
V3R2/V3R7. 
Before V5R1, few customers on the AS/400 or iSeries server used form 
definitions and page definitions to format their data. There were many other 
options for output formatting on the iSeries, such as DDS and APU, which could 
essentially generate comparable results. The original tool for generating form 
definitions and page definitions on the AS/400 system, Page Printer Formatting 
Aid (PPFA), required a reasonably high skill level. Prior to V5R1, you could not 
send spooled files using page definitions to an ASCII printer using Host Print 
Transform. 
These limitations are addressed by a number of enhancements and new products 
made available with V5R1. This chapter describes these changes and how they 
affect the use of form definitions and page definitions on the iSeries server. Basic 
concepts and implementation considerations for the iSeries server are also 
covered.
This chapter provides a very high level view of form definition and page definition 
processing. For additional detailed information on any of the topics described in 
this chapter, refer to 
IBM Page Printer Formatting Aid
, S544-5284. 
12.1  Form definition and page definition basic concepts
Form definition and page definition objects are used to enhance the formatting of 
line data in an AFP environment. They provide similar, but not identical, functions 
to the iSeries concept of using DDS and printer files to format print applications. 
12.1.1  Form definition basics
The form definition contains the specifications that deal primarily with the physical 
attributes of the printed output. It controls page origin and orientation, overlays, 
copies, paper source and output bin, simplex or duplex, print quality, and multi-up. 
The form definition also determines whether selected fields from the input data 
are suppressed.
Within a form definition, you may specify one or more copy groups, and within the 
copy groups, there may be specifications for one or more subgroups. These are 
described in 2.8, “Introduction to form and page definitions” on page 51.
12.1.1.1  Copy group
copy group 
defines the current physical page within a form definition. Note that 
it defines the physical page and could, therefore, include the formatting 
instructions for two sides of a piece of paper. A form definition might contain only 
one copy group. If a different copy group is invoked, it follows that printing must 
start on a new physical page. An alias for copy group is 
medium map
.
C# WPF Viewer: Load, View, Convert, Annotate and Edit PDF
Insert text box to PDF file. • Draw markups to PDF document. PDF Protection. • Add signatures to PDF document. • Erase PDF text. • Erase PDF images.
how to edit and delete text in pdf file; delete text pdf acrobat professional
C# WinForms Viewer: Load, View, Convert, Annotate and Edit PDF
Add text box to PDF file in preview. • Draw PDF markups. PDF Protection. • Sign PDF document with signature. • Erase PDF text. • Erase PDF images.
delete text from pdf online; how to erase text in pdf file
256
iSeries Printing VI: Delivering the Output of e-business
Common purposes for a copy group include the ability to choose from a different 
drawer on the printer. Another example is a switch between simplex and duplex. A 
final example is the printing of an overlay of standard terms and conditions on the 
reverse side of client copies of a purchase order. Switching between copy groups 
in the form definition is controlled by conditional processing in the page definition. 
12.1.1.2  Subgroup
subgroup
is a subset of a copy group. Up to 127 subgroups can be constructed 
within any one copy group. The easiest way to remember the function of the 
subgroup is to think of multi-part stationery (top copy, pink copy, blue copy, etc.), 
as commonly used on impact printers. To replicate this electronically, we can use 
multiple subgroups to repeat each printed page as required. The difference is that 
each copy may be altered subtly if required.
Chapter 2, “Advanced use of IBM Infoprint Designer for iSeries” on page 33, 
describes a sample application called BACK2. It specifies that each page of the 
original spooled file is to be printed twice. The first copy uses an Invoice overlay 
with a constant back containing the Terms and Conditions overlay. The second 
copy is drawn from a different paper drawer and uses the Packing Slip overlay. 
Figure 170 illustrates the form definition source you must generate if you are 
coding that application using PPFA (rather than the Infoprint Designer interface).
Figure 170.  Sample PPFA source for a form definition
A form definition is required for all AFP printing. On the iSeries server, if a form 
definition is not specified explicitly, one is built into the spooled file based on the 
printer file specifications. Form definitions are used with any printer file type, 
except one that is used to generate *USERASCII. The most common use of 
custom or user generated form definitions is with printer files that are designated 
as *LINE, and, in most cases, they are used along with a page definition.
12.1.2  Page definition basics
A page definition contains the specifications for the logical page layout. You can 
specify the positioning, rotation, suppression, and font of entire lines of data or 
specific fields within a line. Data fields may be printed as barcodes. Additional 
overlays and page segments may be placed on the page as determined by 
instructions in the page definition. 
SETUNITS  10.00 CPI  6.00 LPI LINESP  6.00 LPI ;
FORMDEF BACK2
OFFSET  0.00 MM   0.00 MM 
REPLACE YES
COMMENT '';
SUPPRESSION DFLT;
SUPPRESSION PACK;
COPYGROUP COPY1
DUPLEX NORMAL
CONSTANT BACK;
OVERLAY TERMS TERMS NORASTER;
OVERLAY PACK PACK NORASTER;
OVERLAY INVOIC INVOIC ;
SUBGROUP FRONT BIN 1 OVERLAY INVOIC SUPPRESSION DFLT;    /*Invoice*/
SUBGROUP BACK OVERLAY TERMS;    /*T’s & C’s*/
SUBGROUP FRONT BIN 2 OVERLAY PACK SUPPRESSION DFLT PACK; /*Packing*/
SUBGROUP BACK BIN 2;     /*Blank */
C# HTML5 PDF Viewer SDK to view, annotate, create and convert PDF
Able to protect PDF document from editing, printing, copying and commenting by setting PDF file permissions. Help C# users to erase PDF text content, images and
how to delete text from a pdf reader; pdf text watermark remover
C# PDF Image Redact Library: redact selected PDF images in C#.net
call our image redaction API to redact PDF images. as text redaction, you can specify custom text to appear How to Erase PDF Images in .NET Using C# Class Code.
delete text pdf files; how to delete text in pdf using acrobat professional
Chapter 12. Using form definitions and page definitions 
257
A page definition must have one page format that contains at least one subpage. 
The subpage contains format instructions for the line and field definitions. 
There are two ways to define the mapping within a page definition:
• Traditional line data processing
• Record format line data processing
12.1.2.1  Traditional line data processing
Until recently, traditional line data processing was the only way to define the 
formatting rules in a page definition. The input data must be presented in a fairly 
structured and predictable manner. For example, if a certain piece of information 
must be printed in a certain way (with a specific font at a specific location), it must 
be on the same relative line and position on each page in the original spooled file.
The basic element of formatting is the PRINTLINE command. Data records from 
the input are processed in sequence with the formatting rules in the page 
definition’s PRINTLINE commands. Groups of lines may be processed identically 
by using the REPEAT subcommand. 
The logic may be altered slightly by using channel codes. For example, the 
character “1” in the first column is usually an indication to start a new page. 
A simple page definition is shown in Figure 171. It was designed to simulate 
PAGRTT(*COR) or (*AUTO), which is commonly used on the AS/400 or iSeries 
server for system printing. Note the use of the CHANNEL and REPEAT 
subcommands in the PRINTLINE command. 
Figure 171.  Simple page definition
Fields within a line may be formatted individually. They are identified within the 
print record by the START and LENGTH subcommands. If a font is specified for 
the field, it overrides the font specified in the PRINTLINE. The placement of the 
field, if specified, is relative to the placement of the PRINTLINE.
Figure 172 illustrates how a PRINTLINE command can have individual fields 
formatted using the FIELD command. The first PRINTLINE is used to format the 
first line of data. The second PRINTLINE is used for the next five lines of data.
SETUNITS 1 IN 1 IN                     
LINESP 8.8 LPI;               
PAGEDEF STD132                         
REPLACE YES                         
WIDTH 10 IN HEIGHT 7.5  IN          
DIRECTION DOWN;                     
FONT CR13 CS 420090 CP V10500;         
PRINTLINE CHANNEL 1 REPEAT 66          
FONT CR13                           
POSITION MARGIN TOP;                
ENDSUBPAGE; 
How to C#: Special Effects
Erase. Set the image to current background color, the background color can be set by:ImageProcess.BackgroundColor = Color.Red. Encipher.
delete text pdf document; how to delete text in pdf file
Customize, Process Image in .NET Winforms| Online Tutorials
Include crop, merge, paste images; Support for image & documents rotation; Edit images & documents using Erase Rectangle & Merge Block function;
how to delete text in pdf document; pdf editor online delete text
258
iSeries Printing VI: Delivering the Output of e-business
Figure 172.  FIELD formatting within a PRINTLINE
12.1.2.2  Record format line data processing
Traditional line data processing works well enough for users migrating from 
impact to laser since the data likely prints in predictable places on any pre-printed 
forms that are in use at the time. However, it has not proven to be flexible enough 
to meet the needs of some customers who require more control in determining 
exactly how the data should be printed. 
Record format line data processing was developed for page definitions recently to 
include functions required by customers with more complex print requirements, 
such as financial statements for clients with multiple account types or telephone 
bills with multiple types of charges.
Record format line data processing includes features for:
• Automatic page management:
– Headers, footers, page numbering
– Grouped item overflow
– Subheadings
– Page overflow
• Simple graphics:
– Lines, boxes, circles, ellipses
– Filled areas
• Text enhancements:
– Delimited fields on input
– Right and left alignment on output
The main difference is that the basic element of formatting has changed from the 
PRINTLINE command to the LAYOUT command. Each record of data must have 
a 10 byte record ID that matches the corresponding LAYOUT command that is 
used to format it. (With V5R1, the DDS record name is mapped automatically to 
the 10-byte record format name. You can find more on DDS in 12.2.5, “DDS 
support for record format line data” on page 270.) The sequence of the LAYOUT 
commands in the page definition is not a consideration.
There are different layout types:
• Body: This is used for most data, such as detail lines. A page definition may 
have multiple body layouts for different detail record types, such as local or 
long distance phone charges.
• Page header: This is automatically printed on each page. You may use a 
default header or define your own.
PRINTLINE POSITION 1 IN 1 IN FONT TNR12;
FIELD START 1 LENGTH 4;
FIELD START 11 LENGTH 4
POSITION 4 IN 3 IN
FONT HELV10;
PRINTLINE POSITION 3 IN 4 IN FONT HELV10 REPEAT 5;
FIELD START 3 LENGTH 7 FONT TNR12;
FIELD START 10 LENGTH 4;
.NET Imaging Processing SDK | Process, Manipulate Images
Provide basic transformation functions, like Crop, Rotate, Resize, Flip and more; Basic image edit function support, such as Erase Rectangle, Merge Block, etc.
online pdf editor to delete text; how to copy text out of a pdf
Chapter 12. Using form definitions and page definitions 
259
• Page trailer: Similar to a page header, this prints at the bottom of each page.
• Group header: Group headers precede a group of body records. They may 
continue on the next page if necessary. They are in effect until a new body 
group is started or NOGROUP is specified.
Another major enhancement that is available with record format line data 
processing is the ability to use variable length fields in the data, separated by a 
character defined with the DELIMITER subcommand. The individual fields are 
selected by the FLDNUM subcommand rather than by the start position and 
length. In addition, selected characters within delimited fields may be selected by 
specifying the START and LENGTH with respect to the delimiter. This function 
may prove useful when dealing with languages that are more adept at string 
manipulation, such as Java.
Figure 173 shows examples that use LAYOUT for record formatting.
Figure 173.  Sample commands for record formatting 
Many other functions are supported when record formatting line data processing 
is used that are not supported with traditional line data processing:
• Field delimiter and subfield
• Automatic page numbering
• Automatic page overflow management
• Simple graphics: Lines, boxes, circles, ellipses
• Boxes or lines that enclose a variable number of input lines
• Right or left alignment of text fields on output
• Conditional processing testing of substrings of delimited fields
Figure 174 shows some examples of commands for the new graphical features 
available with record format line data processing.
Sample LAYOUT and FIELD Commands for Body, no delimiter characters:
LAYOUT C’layout1’ BODY GROUP 
DIRECTION ACROSS 
COLOR CYAN
OVERLAY MYOVL 0.5 0.25 OVROTATE 90;
FIELD START 1 LENGTH 20
ALIGN LEFT
POSITION 0 CURRENT
FONT FONT1;
Sample LAYOUT and FIELD Commands for BODY using field delimiter:
LAYOUT C’layout2’ BODY DELIMITER C’%’;
FIELD FLDNUM 1 
POSITION 0 NEXT
FONT FONT2;
Sample LAYOUT Command for GROUP HEADER:
LAYOUT C’headr1’ GRPHEADER XSPACE .2 
IN POSITION SAME .6 IN;
Sample Layout Command for PAGE HEADER:
LAYOUT C’pghd’ PAGEHEADER NEWPAGE
POSITION .6 IN ABSOLUTE .55 IN;
260
iSeries Printing VI: Delivering the Output of e-business
Figure 174.  Examples of commands for new graphic features
An example of output created using record format line data processing is shown 
in Figure 175. It illustrates the following features of record formatting (note the 
corresponding numbers):
1. Page header 
statmid
appears on each page. 
2. Body layout 
statsum
produces the summary information. Horizontal lines are 
created by using the DRAWGRAPHIC command.
3. Group header 
crheader
produces a “Credits” subheading. It is repeated if the 
group spans a page.
4. Body group 
crdata
contains the credit detail lines. The amount column is 
right-aligned.
5. Body group 
crtotal
prints the total credit information. The data is passed from 
the application. It is not calculated automatically.
6. A variable length vertical line in the Checks group is defined by the 
DRAWGRAPHIC LINE DOWN command.
7. ENDGRAPHIC commands end the vertical line.
8. Page trailer 
pgenum
ends the page, prints the page number, and prints a 
barcode. It is printed on each page.
Draw four identical lines, 0.25 in apart.
DRAWGRAPHIC LINE POSITION LPOS CPOS +1.0 DOWN 3.0 IN 
LINETYPE DASHDOT LINEWT MEDIUM
COLOR ORANGE COPY ACROSS 4 SPACED 0.25;
Circle, filled with dotted pattern.
DRAWGRAPHIC CIRCLE POSITION LPOS NEXT 
RADIUS 1.0 IN LINEWT MEDIUM LINETYPE SOLID
FILL DOT04;
Ellipse
DRAWGRAPHIC ELLIPSE POSITION LPOS NEXT
AXIS1 -2 -2 AXIS2 +2 +2 LINEWT MEDIUM
LINETYPE SOLID;
Using ENDGRAPHIC to make variable size box.
DRAWGRAPHIC BOX GRAPHID 01
BOXSIZE 3 IN POSITION 1.75 IN .3 IN;
ENDGRAPHIC GRAPHID 01 LPOS;
Neither traditional line data processing or record format line data processing 
provides a means to edit the data similar to the way DDS and some other 
iSeries high level languages such as RPG use Edit Words or Edit Codes. 
Currency, punctuation, or date diameter characters must be included in the 
original data being passed to the page definition. 
Note
Chapter 12. Using form definitions and page definitions 
261
Figure 175.  Output example produced using record formatting
For a complete listing of a page definition and corresponding data for a similar 
example, refer to 
IBM Page Printer Formatting Aid
, S544-5284.
12.1.3  Conditional processing
You can change the formatting of different pages of your output based on rules 
that you define in the page definition. This is called 
conditional processing
. Based 
on data that the page definition finds in a predictable location, you can choose a 
different set of rules for the physical aspect of the job, by selecting different copy 
groups from the form definition. For example, if the customer number begins with 
the letter “E”, use the copygroup that prints an English overlay; if it begins with an 
“F”, use the copygroup that prints a French overlay. 
Similarly, you may use conditional processing to select a different layout for the 
data, or page format, from the page definition. An example of this function is 
printing the data from a total or summary page differently from the way the detail 
You 
cannot
mix LAYOUT commands and PRINTLINE commands in the same 
page definition.
Note
262
iSeries Printing VI: Delivering the Output of e-business
pages print. Conditional processing may also be used to force printing on a new 
side or a new sheet of paper in multi-up or duplex applications cases. 
Section 2.9.3.2, “Example of simple conditional processing” on page 62, 
describes a scenario where a different page format is used depending on the 
information that prints in the total box on the form. If it has the word “Continued”, 
you should use the page format called “CONTD”. Otherwise, use the TOTAL page 
format. With Infoprint Designer, the setup of the condition is done interactively. 
The equivalent page definition commands you would enter using PPFA are shown 
in Figure 176.
Figure 176.  Sample conditional processing command
If the copy group from the form definition is affected by the results of the condition 
test, the word “CURRENT” is replaced by a COPYGROUP subcommand. 
Otherwise, the word CURRENT simply instructs you to keep using the same copy 
group that was in effect. 
There is a slight difference in the syntax for the CONDITION command when it is 
used with traditional line formatting versus record formatting. However, the overall 
concept and functions are similar.
12.1.4  Line data basics
The origin of line data goes back to impact printers that printed one line of 
information at a time. A physical tape with with holes in specific positions or 
channels was used to control spacing and skipping. 
On the iSeries server, the term 
line data 
specifically refers to spooled files that 
have DEVTYPE(*LINE) specified. The data may look similar to the default data 
that is generated when one uses DEVTYPE(*SCS), but SCS supports some 
embedded formatting instructions, such as font, cpi, and variable line spacing, 
where LINE does not.
Usually, LINE spooled files are generated with an extra byte at the beginning for 
the carriage control or forms control byte. In page definition terms, this is referred 
to as the 
channel code
The extra byte for the channel code is mandatory if you are embedding selected 
AFP instructions within the LINE data. The AFP instructions must begin with a 
Hex’5A’. An example of such an instruction is an Invoke Media Map to change the 
copy group used within a form definition. Channel codes are ignored if you are 
using record format line data processing, but may be necessary if you include 
AFP instructions in the data. 
CONDITION TOTALBOX START 70 LENGTH 9
WHEN EQ
'Continued' BEFORE SUBPAGE
CURRENT
PAGEFORMAT CONTD
OTHERWISE BEFORE SUBPAGE
CURRENT
PAGEFORMAT TOTAL;
Documents you may be interested
Documents you may be interested