open pdf in webbrowser control c# : Erase text in pdf document software Library cloud windows .net winforms class sg24625030-part2069

© Copyright IBM Corp. 2002. All rights reserved.
283
Chapter 14.  
E
nd
-t
o
-e
nd example
This chapter examines a case study of a customer who wants to use some of the 
new functions available for print and presentation to e-mail personalized invoices 
to their customers. Assume you are an employee for the Super Sun Seeds 
Company and it is your responsibility to implement their e-business strategy, 
including delivering output electronically. 
The Super Sun Seeds Company currently produces invoices on an IBM laser 
printer. Infoprint Designer is used to generate two copies, one for the customer 
and one for packing. The company has decided to take this one step further. As 
part of their e-business strategy, the Super Sun Seeds Company wants to deliver 
the invoices to their customers electronically, as a Portable Document Format 
(PDF) attachment in an e-mail. You need to devise a method to take the output 
from their current application, split it into individual invoices, and match each one 
with the corresponding e-mail address. 
This chapter describes the steps to produce the desired results, including:
• Modifications to the Infoprint Designer project
• A single, one-time modification to the application
• Using CRTAFPDTA to index the data
• Using PRTAFPDTA to re-spool the indexed file
• Displaying the file using the AFP Viewer
• Creating a PSF configuration object and an output queue for PDF conversion
• Creating an exit program to look up e-mail addresses
• Monitoring for undeliverable mail
• Other maintenance tasks
This chapter is intended for system analysts, developers, and programmers. 
Certain iSeries server skills are assumed. Programming skills in RPGLE are 
required to implement the user exit program.
The products used in the example are:
• PSF/400 for iSeries (V5R1) (This is only needed if the documents are printed 
to an IPDS printer along with being sent electronically.)
• Infoprint Server for iSeries
• Infoprint Designer for iSeries
• A product capable of reading e-mails, such as Lotus Notes or Microsoft 
Outlook
• Adobe Acrobat Reader
• AFP Viewer, within Client Access Express/400
14.1  Overall flow of the end-to-end application
The overall flow of the data from the application generating the original spooled 
file to an e-mail being sent to a customer is shown in Figure 182.
Erase text in pdf document - 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
how to delete text in pdf using acrobat professional; delete text pdf file
Erase text in pdf document - 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
how to delete text in pdf file online; how to remove highlighted text in pdf
284
iSeries Printing VI: Delivering the Output of e-business
Figure 182.  From application to e-mail
The process shown in Figure 182 is explained in the following steps: 
1. The application produces the data that is spooled to a printer file defined as 
DEVTYPE(*LINE). The printer file also references the form definition and page 
definition that were created using Infoprint Designer for iSeries. 
2. The CRTAFPDTA command is run against this spooled file. This creates a 
physical file member that contains the resolved AFPDS spooled file, the 
external resources, and the index records.
3. The PRTAFPDTA command is used to create a 
new
spooled file that is in 
AFPDS format. The new spooled file now contains the all the external 
resources and index records.
4. This new spooled file is moved to the PDF conversion output queue and 
Infoprint Server converts it to PDF format.
5. The user exit program for e-mail does a lookup operation to the LOOKUP file 
using the information in the index records to select the appropriate e-mail 
address for each customer. Each separate invoice is sent to a different 
destination. 
Infoprint 
Designer
Application 
*LINE
FORMDF(email)
PAGDFN(email)
CRTAFPDTA 
File: AFPOUT
Member: 
OUTPUTMGR
PRTAFPDTA 
USER
OUTQ
IFS
*AFPDS
contains resources 
and index records
PDF
OUTQ
PDF 
Conversion 
email
Exit 
Program 
File: LOOKUP
Customer 100
Customer 136
Customer 141
simon_h@improved_prt.uk
jacques_h@organic.ch
mira_s@los_arboles.ca
AFP 
Viewer
1
2
3
4
C# WPF Viewer: Load, View, Convert, Annotate and Edit PDF
PDF Protection. • Add signatures to PDF document. • Erase PDF text. • Erase PDF images. • Erase PDF pages. Miscellaneous. • Select PDF text on viewer.
delete text from pdf preview; remove text watermark from pdf online
C# WinForms Viewer: Load, View, Convert, Annotate and Edit PDF
PDF Protection. • Sign PDF document with signature. • Erase PDF text. • Erase PDF images. • Erase PDF pages. Miscellaneous. • Select PDF text on viewer.
remove text watermark from pdf; erase text from pdf file
Chapter 14. End-to-end example 
285
This chapter describes each of these steps and any one-time setup tasks.
14.2  Infoprint Designer changes
The needs of an e-mail application are slightly different than the original printed 
application. Some changes to the Infoprint Designer project are made to 
accommodate this new means of output. 
14.2.1  Creating a new Infoprint Designer project for e-mail
To create the e-mail project, start with the COND.prj, which uses conditional 
processing to reformat the marketing message. (For details on the COND.prj, see 
2.9.3.1, “Concepts of conditional processing” on page 62.) The invoices that are 
sent via e-mail do not need the second copy that was used for a packing slip, and 
they don’t need the Terms and Conditions that would have printed on the back. 
Remove the extra Packing Slip subgroup from the form definition, redefine the 
copy group to print simplex, and eliminate the terms and conditions subgroup.
Store this project, the new form definition, page definition, and overlay under the 
name EMAIL. (These resources are 
not
included in the sample Infoprint Designer 
projects included with the product.)
You must perform this task only once. 
14.2.2  Using the new Infoprint Designer objects
As normal, to use the new resources that you just created using Infoprint 
Designer, the printer file must be changed with the Change Printer File 
(CHGPRTF) command, or overridden at run time with the Override with Printer 
File (OVRPRTF) command. This creates LINE data and references the new form 
definition and page definition. 
An example of the command to change the printer file (here called INVSCS) is:
CHGPRTF PRTF(INVSCS)
DEVTYPE(*LINE)
FORMDF(EMAIL)
PAGDFN(EMAIL) 
DUPLEX(*FORMDF) 
DRAWER(*FORMDF)
If you change the printer file, it only must be done once. If you choose to override 
the printer file instead, you must insert that command into the CL program that 
runs the application. Ensure that the AFP resources are in a library within your 
library list.
There are some additional changes that must be made to the Super Sun Seeds 
invoice program to accommodate the indexing function. They are described in 
14.3.4, “Changing the invoicing program to accommodate the index 
requirements” on page 287.
One final change to the application is to change the output queue to which the 
spooled file is directed. In the past, you directed the output to a queue that was 
directly associated to a physical printer. We recommend that the new e-mail 
spooled file be directed to an output queue that is not associated with an active 
printer writer. 
C# PDF Text Redact Library: select, redact text content from PDF
code to erase text from adobe PDF file in Visual Studio. NET class without adobe reader installed. Provide a best and easy way to darken text in PDF document in
how to delete text from a pdf; delete text pdf acrobat professional
C# HTML5 Viewer: Load, View, Convert, Annotate and Edit PDF
you need to add your own signatures such as logo to PDF document, you and Redact tab on viewer empower users to redact and erase PDF text, erase PDF images and
delete text pdf files; delete text pdf preview
286
iSeries Printing VI: Delivering the Output of e-business
14.3  Planning for the index function
For more information on the index function of the CRTAFPDTA command, see 
Chapter 5, “Infoprint Server for iSeries: CRTAFPDTA” on page 149.
Super Sun Seeds invoices are produced using the INVSCS program. A copy of 
this program is shipped with the Infoprint Designer for iSeries product. You can 
find it in the IPDATA library. See 
Infoprint Designer for iSeries: Getting Started
G544-5773, for information on the IPDATA library and using the programs in it.
14.3.1  Why CRTAFPDTA is used
To send individual invoices within a single spooled file to different addresses, you 
must add index records to the spooled data. Chapter 4, “Using the Infoprint 
Server for iSeries PDF transform” on page 103, and the 
Infoprint Server for 
iSeries User’s Guide
, G544-5775, describe how to use the DDS keywords 
STRPAGGRP and ENDPAGGRP to add index records. However, these keywords 
require that the file be generated with DEVTYPE(*AFPDS), and cannot be used 
with a printer file that uses page definitions and is generated with 
DEVTYPE(*LINE). 
Super Sun Seeds is using Infoprint Designer for iSeries to develop this 
application. The layout component of Infoprint Designer produces page 
definitions that must be used with line data. Consequently they need to find an 
alternative to those DDS keywords. The CRTAFPDTA command, which is also 
part of Infoprint Server for iSeries, has the ability to generate index records for a 
spooled file that contains line data. 
14.3.2  Setting up a target file for CRTAFPDTA
The CRTAFPDTA command generates AFPDS files in an Integrated File System 
(IFS) directory. The index entries generated within the spooled file are used by 
the PDF generator to separate the one large spooled file to individual files for 
each customer and to look up the e-mail address based on the customer number. 
The CRTAFPDTA command directs its output to any directory in the IFS that you 
specify. However, in the next step of this process, PRTAFPDTA expects the data 
to be in a physical file. Before you run the CRTAFPDTA command, you must 
create the physical file that is to receive the output. You can create the file once, 
and then clear it out each time. Or, you can create a new file each time with a 
different name that identifies the run date or some other meaningful information. 
This example shows how to create the file called AFPOUT in library MYLIB. The 
record length is not critical, but it must be specified. You must specify 
LVLCHK(*NO) to prevent getting a Level Check error when you run the 
PRTAFPDTA command. You must allow for at least four new members to be 
added to the file:
CRTPF   FILE(MYLIB/AFPOUT) 
RCDLEN(80) 
LVLCHK(*NO) 
MAXMBRS(*NOMAX)
You can enter the IFS path to this physical file in each of the TOIDXSTMS, 
TOMRGSTMF, TORSCSTMF, and TOSTMF parameters in the CRTAFPDTA 
command. However, you may find it easier to make the AFPOUT file accessible 
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
erase pdf text; delete text pdf acrobat
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.
online pdf editor to delete text; how to delete text in pdf acrobat
Chapter 14. End-to-end example 
287
as your current directory and then indicate in each of those four parameters that 
you want the output to go to *DFT. This is done using CHGCURDIR. You can 
reference the file by its path in the IFS: 
CHGCURDIR DIR(‘/QSYS.LIB/MYLIB.LIB/AFPOUT.FILE’)
This step is included in the job that is run each time you want to perform the 
e-mail function.
14.3.3  Requirements of the CRTAFPDTA index function 
The indexing function essentially looks for two types of information: the trigger 
fields and the index fields.
The combination of fields defined as the trigger tell the indexing function where 
each new customer invoice should begin. This allows for a different number of 
pages per invoice. The first of the trigger fields defined has a second role of being 
an 
anchor point
. This means that all other trigger fields and index fields are 
defined by their relative location with respect to the first trigger field, or anchor 
point. 
The index fields are used to identify a distinct piece of data in each separate 
invoice. The combinations of fields used for the index are used by the e-mail exit 
program to look up the actual e-mail address of the recipient of the invoice. In this 
example, you use only one index field (the customer number).
14.3.4  Changing the invoicing program to accommodate the index requirements
In the case of Super Sun Seeds, one identifying feature to start each new invoice 
is the fact that “Page 1” prints on the bottom of the first page of each invoice, 
always on line 63. You may think that this would be the ideal trigger point or 
anchor. However, depending on how many of the invoice detail lines actually have 
data on them, there may be a different number of “records” in the spooled file 
before the record that has the page number on it. 
Consequently, CRTAFPDTA cannot use this field as the index trigger. This is a 
common occurrence when the application uses DDS keywords SKIPA or SKIPB, 
or other similar language instructions, to skip over an unknown or variable 
number of lines. 
To work around this problem, the application program and associated DDS are 
modified slightly to output the word “NEW” on the same line as the company 
name on the first page of a new invoice. This record line is always in the same 
relative position on the page, and the customer number is always four records 
after it. 
You did not map the word “NEW” when you redesigned the Infoprint Designer 
project as described in 14.2.1, “Creating a new Infoprint Designer project for 
These programming changes may not be necessary for all applications. If the 
trigger fields and index fields are always in the same relative positions to each 
other in your application, you do not have to modify the program.
Note
Customize, Process Image in .NET Winforms| Online Tutorials
for image & documents rotation; Edit images & documents using Erase Rectangle & More image processing & document clean-up functions. Image Manipulating. This
how to delete text from pdf with acrobat; how to erase in pdf text
.NET Imaging Processing SDK | Process, Manipulate Images
Support over 30 image & document formats; Support 1-bit, 4-bit, and 8-bit Indexed Basic image edit function support, such as Erase Rectangle, Merge Block, etc.
delete text from pdf acrobat; acrobat delete text in pdf
288
iSeries Printing VI: Delivering the Output of e-business
e-mail” on page 285. Therefore, it does not show on the final document that is 
delivered to the customer. 
When planning for the index function, you may find it helpful to copy the spooled 
file to a physical file using the Copy Spooled File (CPYSPLF) command and 
specifying CTLCHAR(*FCFC). Create the physical file with a record length one 
record longer than that of the spooled file, for example 81 or 133 record length for 
original spooled files that have used the common length of 80 or 132. The 
commands you use to do this are:
CRTPF FILE(mylib/CPYSPLF) RCDLEN(133) MAXMBRS(*NOMAX)
CPYSPLF FILE(INVSCS) TOFILE(mylib/CPYSPLF) JOB(number/user/name) SPLNBR(1) 
TOMBR(INVSCS) CTLCHAR(*FCFC) 
If you do not know the job information for your spooled file, use the F11 key from 
either a WRKSPLF or WRKOUTQ display.
If you view the file with the Display Physical File Member (DSPPFM) command, 
you see a good representation of how the spooled data is presented to the 
CRTAFPDTA process. Figure 183 shows the first page of the Super Sun Seeds 
invoice after the modification to add the word “NEW” at the beginning of each 
invoice. This becomes the first trigger field and is represented in the CRTAFPDTA 
command as 
IDXTRG((* 3 ‘NEW’))
. This tells the indexing program to look in any 
record, starting in position 3 for the string “NEW”. Note that the carriage control 
byte in column 1 is included in the position count. Note also that you must specify 
an asterisk 
(*) 
for the record number value of the first trigger field.
Figure 183.  Sample spooled file after CPYSPLF with CTLCHAR(*FCFC)
The customer number appears four records below the trigger field. It is 
represented in the CRTAFPDTA command as 
IDXTAGFLD((4 15 6))
. This tells the 
indexing program to look four records 
after
the anchor point set by the first trigger 
field. Then, starting in position 15, the program uses the next six characters as 
Display Physical File Member
File . . . . . . :  CPYSPLF 
Library  . . . . :   MSHNIER            
Member . . . . . :   INVSCS              Record . . . . . :   1                  
Control  . . . . .                       Column . . . . . :   1                  
Find . . . . . . .                                                               
*...+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8.
1                                                                                
-                                                                                
-                                                                                
-                                                                                
0 NEW       IMPROVED PRINTING CORP                  SAME                         
PERFORMANCE BOULEVARD                                                
PRINTERSVILLE                                                        
CO  45789-2637                                                       
-                100             31300         3/28/01             4/28/01       
0             BEST WAY           3/28/01       NET 30           YOUR PRINTER REP 
-                                                                                
1 CT   00000300  HIGH ALTITUDE WATERMELON          1.01         1.01  
1 PK   01100517  SPARTAN SEEDS                     2.39         2.39  
9 PK   04569870  NORTHERN LITE BLUE SPRUCE       858.32     7,724.88  
12 BX   11005004  BUSH GREEN SEEDS                  2.50        30.00  
12 CT   11005011  LASSO RED SEEDS                 892.23    10,706.76  
26 PK   11005018  EARLY BANTAM SEEDS                 .38         9.88  
5 BX   11057893  AFRICAN DAISY, SEEDS              2.35        11.75 
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.
how to edit and delete text in pdf file online; how to copy text out of a pdf
Chapter 14. End-to-end example 
289
the first index. The customer number, as shown in the example, appears to be 
only three characters long. However, by inspecting the DDS for the application, 
you can see that it can have up to six characters. If you set the index based only 
on the three characters visible in the one example, you may have problems at a 
future time. This shows where it is important to have the original application 
documentation available.
Be aware of the fact that CRTAFPDTA looks at the relative positions of the 
records
in the spooled file, not the relative lines that they may end up printing. 
The word “NEW” and the customer number are four records apart in the file, but 
print 6 lines apart, on lines 12 and 18 respectively. This is because there is a 
carriage control character “-” in position 1 of the record containing the customer 
number, which inserts a triple space at print time. 
This step, if necessary, is done as part of the one-time setup.
14.3.5  Running the CRTAFPDTA command
Now that you have set up a destination for the output of the CRTAFPDTA 
command, and have identified the trigger fields and index fields, you are ready to 
run the CRTAFPDTA command as shown below. The four files that are generated 
by this command are placed in the default directory, which is set up to be 
AFPOUT, as described in 14.3.2, “Setting up a target file for CRTAFPDTA” on 
page 286:
CRTAFPDTA  FROMSPLF(INVOICE) 
TOSTMF(*DFT) 
JOB(number/user/name) 
SPLNBR(*LAST) 
FORMDF(QGPL/EMAIL) 
PAGDFN(QGPL/EMAIL) 
TOIDXSTMF(*DFT) 
TORSCSTMF(*DFT) 
IDXTRG((* 3 ‘NEW’)) 
IDXTAGFLD((4 15 6)) 
IDXTAG((‘Customer Number’ (*IDXTAGFLD1))) 
RSCDTA(*FORMDF)
TOMRGSTMF(*DFT) 
After the command is run, there are four members in the physical file AFPOUT:
• OUTPUTAFP: The resolved AFPDS document
• OUTPUTIDX: The index records
• OUTPUTRSC: The external resources
• OUTPUTMRG: Merged output; this contains the information from the other 
three members
These names are automatically assigned by CRTAFPDTA because a value of 
*DFT was specified for each of the TOxxxSTMF variables. It is possible to specify 
different names for these files. See Chapter 5, “Infoprint Server for iSeries: 
CRTAFPDTA” on page 149, for more information.
You use the member OUTPUTMRG. It contains the AFPDS data, along with the 
form definition resource and the index records. The form definition is needed 
inline to view the spooled file using the AFP Viewer, as shown in 14.4.2, 
“Checking your file with the AFP Viewer” on page 291.
290
iSeries Printing VI: Delivering the Output of e-business
This step must be included in the job that runs for each e-mail.
14.4  Respooling the file using PRTAFPDTA
You cannot use the output of the CRTAFPDTA command directly by the PDF 
conversion process until you regenerate it back as a spooled file. The system 
command, Print AFP Data (PRTAFPDTA), is included with OS/400 that you use to 
do this:
PRTAFPDTA  FILE(AFPOUT) 
MBR(OUTPUTMRG) 
DEV(MYOUTQ) 
FORMDF(*INLINE) 
FIDELITY(*CONTENT)
The prompt for the parameter DEV implies that a physical device must be named 
as the destination for this command. An unqualified name of an output queue 
works just as well and may be preferred. 
The form definition that was captured in the OUTPUTRSC member is included 
inline with this command. This facilitates using it with the AFP Viewer. See 14.4.2, 
“Checking your file with the AFP Viewer” on page 291.
The spooled file that is generated from the PRTAFPDTA command has the same 
name as the member used to create it (in this case, OUTPUTMRG). This same 
name is ultimately used in the subject line of the e-mail. You may choose to 
rename the member prior to running the PRTAFPDTA command: 
RNMM FILE(AFPOUT) 
MBR(OUTPUTMRG) 
NEWMBR(EINVOICE)
This step must be included in the job that runs for each e-mail.
14.4.1  Directing the output of PRTAFPDTA
You may choose to direct the output of the PRTAFPDTA step directly to the output 
queue being used by the PDF process. However, it may be prudent to direct it to a 
temporary output queue and change the attribute to SAVE(*YES) as you move it 
to the PDF output queue. 
14.4.1.1  Changing the USRDTA parameter
You may also add some information to the User Data (USRDTA) attribute this 
time. The USRDTA parameter is picked up in the e-mail exit program and you may 
find a use for it there. For example, you may use this field to look up a greeting 
message to include in the body of the email. In doing so, the program does not 
have to be changed if the message changes.
To move the spooled file to the PDF output queue and to set other parameters as 
described in this section, use the Change Spooled File Attributes (CHGSPLFA) 
command.
CHGSPLFA 
FILE(EINVOICE) 
JOB(jobno/user/jobname) 
SPLNBR(n) 
OUTQ(*LIBL/PDF) 
Chapter 14. End-to-end example 
291
SAVE(*YES) 
USRDTA('HelloWorld') 
This step must be included in the job that runs for each e-mail.
14.4.2  Checking your file with the AFP Viewer
This may be a good time, especially while the application is under development, 
to verify that your index selection is correct. You can do this using the AFP 
Viewer. Start Operations Navigator from Client Access or Client Access Express. 
If you do not already have a session with your iSeries server, start the connection 
and log on. Select Basic Operations and then click Printer Output. Select your 
new spooled file from the list. 
The index function is illustrated when by selecting Search-> Find group. The 
complete index generated by the CRTAFPDTA is a combination of the customer 
number and a document sequence number. Figure 184 shows an example of 
what should appear.
Figure 184.  Using the AFP Viewer with an indexed spooled file
This step is helpful during the initial setup and testing of the e-mail process. It 
may also be used at any time with the production files.
14.4.2.1  Font mapping with AFP Viewer
When using the AFP Viewer, you may find you see messages indicating that it 
cannot find the requested fonts. This is because Infoprint Designer references 
fonts by what is known as the 
Alternate Coded Font Identifier
, where the AFP 
Viewer only maps the standard Coded Font names. To rectify the situation, the 
font mappings for the missing fonts must be appended to the bottom of the 
ICODED.FNT file that is used by the AFP Viewer. 
292
iSeries Printing VI: Delivering the Output of e-business
For the Super Sun Seeds case study, add the following entries to the table:
XZ4010=CZ4200,T1V10037
XZH0F0=CZH400,T1V10500
XZH0E0=CZH300,T1V10500
XZH010=CZH200,T1V10037
XZ5010=CZ5200,T1V10037
XZN0E0=CZN300,T1V10500
If you find that you are missing entries for other coded fonts, you can determine 
the corresponding character set and code page by using the Work with Font 
Resources (WRKFNTRSC) command and looking at the description of the 
iSeries coded font object as shown in Figure 185. 
Figure 185.  Displaying the description of a coded font object
This step is done as part of the one-time setup.
14.5  Converting the spooled file to PDF and sending it as an e-mail
There are a number of steps to do when preparing to convert a spooled file to a 
PDF file and send it to the appropriate destination via e-mail.
14.5.1  Enabling OS/400 to send e-mail
There are some system tasks the must be done to enable the iSeries server to 
send e-mail. These are described in Appendix A of the 
Infoprint Server for iSeries 
User’s Guide
, G544-5775. 
If your iSeries server is not already set up for e-mail, you must do this step as part 
of the one-time setup.
14.5.2  Configuring a PDF device and PSF configuration object
As described in 4.3, “Setting up your PDF virtual printer” on page 108, the PDF 
creation function depends on a Printer Device Description with the appropriate 
PSF configuration object being configured. Refer to that section for additional 
details on the parameters. 
For the Super Sun Seeds e-mail function, the Device Description and PSF 
configuration object are created as follows:
CRTDEVPRT  DEVD(PDF) 
DEVCLS(*LAN) 
TYPE(*IPDS) 
MODEL(0) 
LANATTACH(*IP) 
AFP(*YES) 
PORT(5013) 
Change Object Description (CHGOBJD)                      
Object . . . . . . . > XZN0E0        Name, generic*, *ALL          
Library  . . . . . >   QFNTCF      Name, *LIBL, *USRLIBL...      
Object type  . . . . > *FNTRSC       *ALL, *ALRTBL, *AUTL...       
Text 'description' . > 'Charset CZN300 and Codepage T1V10500 at 
10-pt’screen.
Display Font Resource Attributes        
System:   BLDASL1  
Font Resource  . . . : XZN0E0                                
Library  . . . . . :   QFNT10                              
Object attribute . . : CDEFNT                                
Text . . . . . . . . : Charset CZN300 and Codepage T1V10500 at 10-pt 
Documents you may be interested
Documents you may be interested