PDF417 Frequently Asked Questions
- General
-
How does generating and printing PDF417 symbols differ from other barcodes?
Unlike many one-dimensional barcodes (like Code 128 or Code 39), PDF417 symbols cannot be printed by simply using a special font. While we do provide a custom font for printing a PDF417 symbol, this is done to simplify the task of printing the symbol. The majority of the work is performed by the encoder, a callable library routine. The encoder is a sophisticated piece of software that performs all of the necessary formatting, data compaction, and error correction that goes into a PDF417 symbol.
-
In general, how does the PDF417 encoder work?
The PDF417 product consists of two components; a callable library routine, and a special PDF417 font. Your application program must call this library routine with the data you wish to "encode" in the PDF417 symbol. The library routine returns a buffer of characters (510 characters to be precise). Your application program then sends these characters to the printer, using the PDF417 font. The complexity of this final step depends on your printing environment.
-
How does generating and printing PDF417 symbols differ from other barcodes?
- MVS, OS/390 and z/OS
- What's the minimum version of MVS supported?
The encoder has been tested as far back as MVS 5.2.2. The encoder may work on earlier version; however, we do not have the facilities for testing these versions. The C runtime libraries must also be present (e.g., as part of LE/370) and must be compiled in AMODE=31 (the default). Your calling program must also be running above the line to call the encoder directly.
- What's the minimum version of OS/390 supported?
The encoder is currently support by all versio ns of OS/390. The C runtime libraries must have been installed and compiled in AMODE=31 (the default). Your calling program must also be running above the line to call the encoder directly.
- What programming languages are supported?
The PDF417 encoder is distributed as an application callable load library (written in C). COBOL II and C are directly supported. Other languages like RPG and PL/I, while not documented, should work with the encoder. Sample programs written in a variety of languages are provided.
- How is the PDF417 encoder linked with my application?
Our PDF417 routine is shipped as a load library and can be linked either statically or dynamically with your application. When the library is first installed on your system it must be linked with your C runtime libraries. JCL for this step is provided.
- What's the minimum version of MVS supported?
- AS/400
- What's the minimum version of OS/400 supported?
The minimum version is V4R1M0.
- Are Original Programming Model languages (COBOL/400, RPG/400) supported?
Yes. The PDF417 encoder is distributed as an ILE service program. However, a special ILE interface programs have been provided for OPM and EPM environments that invoke the service program for the calling program. Sample COBOL/400 and RPG/400 programs are supplied which demonstrate the calling convention.
- Are Integrated Language Environment (ILE) languages (ILE COBOL, ILE RPG) supported?
Yes. The PDF417 encoder is distributed as an ILE service program. The CRTPGM command is used to link the service program with your ILE modules. A sample ILE COBOL program is supplied which demonstrates the calling convention.
- How do I print the PDF417 symbol from an AS/400?
The PDF417 encoder returns a rectangular array of characters which need to be printed using our special PDF417 font. Furthermore, these lines must be printed using a line spacing that depends on the module size you choose for your output symbol. The simplest way on an AS/400 to print is using a DDS to an AFP capable printer. The DDS for the PDF417 record may look something like this:
A CDEFNT(X0PD3309) A PDFOUT01 37A POSITION(1.700 1.350) A PDFOUT02 37A POSITION(1.730 1.350) A PDFOUT03 37A POSITION(1.760 1.350) A PDFOUT04 37A POSITION(1.790 1.350) A PDFOUT05 37A POSITION(1.820 1.350) A PDFOUT06 37A POSITION(1.850 1.350) A PDFOUT07 37A POSITION(1.880 1.350) A PDFOUT08 37A POSITION(1.910 1.350) A PDFOUT09 37A POSITION(1.940 1.350) A PDFOUT10 37A POSITION(1.970 1.350) A PDFOUT11 37A POSITION(2.000 1.350) A PDFOUT12 37A POSITION(2.030 1.350) A PDFOUT13 37A POSITION(2.060 1.350) A PDFOUT14 37A POSITION(2.090 1.350) A PDFOUT15 37A POSITION(2.120 1.350) A PDFOUT16 37A POSITION(2.150 1.350) A PDFOUT17 37A POSITION(2.180 1.350) A PDFOUT18 37A POSITION(2.210 1.350) A PDFOUT19 37A POSITION(2.240 1.350) A PDFOUT20 37A POSITION(2.270 1.350) A PDFOUT21 37A POSITION(2.300 1.350) A PDFOUT22 37A POSITION(2.330 1.350) A PDFOUT23 37A POSITION(2.360 1.350) A PDFOUT24 37A POSITION(2.390 1.350) A PDFOUT25 37A POSITION(2.420 1.350)
Sample COBOL, C, and RPG programs are all provided for the AS/400.
- What's the minimum version of OS/400 supported?
- Printing
- How is a PDF417 symbol printed?
Normally, the PDF417 encoder uses font rendering to print the PDF417 symbol. The actual "output" of the encoder library is simply a series of characters (usually 0's, 1's, 2's, 3's, and a single 5 ). This data is organized as 17 lines of 30 characters each. When printed using the provided PDF417 font, the correct symbol is "rendered" by the printer.
For example, the output of the encoder may look like the group of characters shown below. When rendered in the provided font, the result is the PDF417 symbol image shown to the right.
OOEDGEALCJBNALBHNIC LFB KCJILAOMADH OOEDGMDCCBOKINOGJKLDOGDF KOEAMOMADH OOEDFJGLCCHEMKHILLOJHGICLKE OIOMADH OOEDGMBOK ECAIJA OCBNDE HBKNOIOMADH OOEDGELAKDNAAMF DLCGJGMAFCJNAIOMADH OOEDGJOBCFENAIHENKHHLGNDFKJOIAOMADH OOEDECMNBB IA LLDNNLLGMJOBILNAOMADH OOEDGJDHCMADALKIHNOGMGHFLKNIFAOMADH OOEDECCNCMCMADDANLNDGENLLCODNMOMADH OOEDFHNGJAIJAHFJ LJF E FCBHLAIOMADH OOEDGDNAKACJACGM ODHDFBGBCJGAIOMADH OOEDEA OBHBOACHHFIHDNGCNIJHLOIOMADH
- Which AFP/IPDS printers are supported?
All AFP capable IPDS printers are supported (both 240 and 300/600 /1200 DPI). It is important to note though that your operating environment must have AFP support installed and operational (specifically, our software requires a PSF host).
3800 series printers are supported only if they are operating in page mode and AFP is present on the system.
- Which Xerox printers are supported?
We have the ability to generate fonts for most Xerox printers. In particular, 9700-series 5-word fonts are provided. While we can generate fonts for other printer series (e.g., 2700 and 3700) we do not have the ability to test these, nor can we necessarily deliver these fonts on the appropriate media. Call Silver Bay Software for individual evaluation of your printer environment.
- Which PCL printers are supported?
We provide soft fonts for HP PCL printers. These fonts will work on virtually any HP compatible laser printer. Furthermore, we provide some basic documentation on downloading and printing with soft fonts. However, this documentation does not address generating PCL on all possible platforms (e.g., MVS and OS/400).
- How is a PDF417 symbol printed?
