(http://www.faximum.com/technotes/226)
TITLE: #226 - OEM Documentation for PCL-5e Interpreter
KEYWORDS: PCL-5e pcltiff
RELEASE: Faximum PCL engine (Release 3.x)
Faximum ELS/PLUS v4
CLASSIFICATION: All
PROBLEM: This TechNote contains the documentation received by the
OEM supplier of the PCL-5e interpreter used in Faximum
software products starting with the PCL Engine (Release 3)
and Faximum ELS/PLUS Version 4.
CAUSE: N/A
SOLUTION: N/A
=================================================================
This documentation is a verbatim copy of the information provided
by the company that has provided Faximum Software with the
technology upon which Faximum has built its PCL Engine product.
Many parts of this documentation, especially the section on
installation, apply only to other versions of the PCL technology
(including those intended for non-UNIX platforms) and not to the
Faximum PCL Engine. With that said, however, it is felt that this
information in this document is still useful to advanced users and
is included here with the warning that not all the material
applies to the software you have installed.
=================================================================
PCL-5e to TIFF CONVERTER
USER'S MANUAL
Contents:
1.0 INTRODUCTION
1.1 PCL5e Notes:
1.2 Overview of pcltiff:
2.0 FONTS
2.1 The TrueType PCLT (Printer Control Language Table)
2.2 Character Complements and Symbol Sets
Unbound Scaleable Fonts
Supported Symbol Sets
Character Complements
3.0 PCL5EFAX Data Files
3.1 Table 1: Data Files
3.2 NOTES ON FONTS
3.3 Auxiliary Data Files
3.4 Utility Files
3.5 Program files
4.0 INSTALLATION
4.1 DOS and OS/2
4.2 UNIX
5.0 ADDING FONTS
5.1 Relocating and Adding Intellifont Libraries
5.2 Recataloging Internal Fonts
5.3 Adding TrueType Fonts
table 2
fdump.exe
5.4 Edit the tt.txt file
5.5 Run facedata.exe
5.6 Adding Symbol Sets
6.0 OPERATION
6.1 Program Execution
6.2 Initialization file
6.3 Command Line Options
6.4 Advanced Binary Options
6.5 Option Notes
6.6 Advanced Option Notes
APPENDIX A Internal Scalable Fonts
APPENDIX B Internal Symbol Sets
=================================================================
1.0 INTRODUCTION:
Pcltiff is an interpreter of the PCL5e printer language (as
described, for example, in "PCL5 Printer Language Technical
Reference Manual" by Hewlett Packard, 1990.) It converts PCL5
files to a rasterized image file, which can be tailored for
TIFF G3, G4, Brooktrout, PCX, and DCX formats. With a few
exceptions, it supports PCL5E (extended PCL5) which, among
other extensions, includes support for TrueType fonts.
1.1 PCL5E Notes:
PCL5E uses TrueType fonts, as well as the fonts used by PCL5. In
fact, with the introduction of the HP LaserJet 4, HP included the
16.66 pitch Line Printer font as the only onboard bitmap font.
The several variants of the Courier bitmap font were replaced with
Intellifont scaleable Courier fonts. TrueType fonts have become the
de facto standard for use with Windows programs.
With pcltiff, the printer driver does not have to convert TrueType
fonts to bitmap form for downloading. This is significant for
fax-normal or fax-fine output, since the bitmaps must be scaled
from the normal 300/600 dpi form to 204/196 or 204/98 form, often
with unpleasant results.
PCL5E has several other advantages:
600 dpi operation as well as 300 dpi
Arc fonts in addition to stick fonts
Bezier curves in HP-GL/2
Additional raster graphics compression
One of the most significant additions in the font world is the
introduction of user-defined symbol sets and unbound scaleable
fonts. (See section 4)
1.2 Overview of Pcltiff
Pcltiff is a complete emulation of the HP LaserJet 4 printer.
This means that its "on board" fonts include all of the fonts
found on the LJ4.
The user of pcltiff has the option of acquiring additional
Intellifont and TrueType fonts, including Windows TrueType fonts
and public domain TrueType fonts. PCL5E-to-FAX can be configured
to use any TrueType font as an internal font, as explained in
section 2.0.
-----------------------------------------------------------------
2.0 FONTS
2.1 The TrueType PCLT (Printer Control Language Table)
A TrueType font file consists of several tables, some of which
give complete instructions for producing the outline of each
glyph in the font. There may be only a handful of such glyphs,
such as those used in generating bar codes, or there may be
several thousand. Other tables are used to describe the font
as a whole. For example, the name table typically gives the
name of the font in several forms and languages.
Some tables are required and some are not. The PCLT, Printer
Control Language Table, is an important table for use with PCL5E,
but, unfortunately, is not a required table. It is, however,
part of all of the standard TrueType fonts supplied with the
pcltiff converter.
A TrueType font without a valid PCLT, and which is not one of the
LaserJet 4/5 internal fonts, requires the following to be an
internal font. The user must supply either the character
complements array or the symbol set number to be used with the
font, and the typeface ID. The HP PCL5 Comparison Guide includes
a list of internal fonts included with various printers. This
list is also given in Appendix A of this document.
2.2 Character Complements and Symbol Sets
Unbound Scaleable Fonts:
The concept of an unbound scaleable font was introduced in PCL5E
by HP. In PCL5 all downloaded fonts were "bound" to a particular
symbol set, or perhaps to a limited set of ISO symbol sets. Among
other things, this meant that the font could include at most 256
glyphs (or characters).
An unbound font, on the other hand, is not bound to a single
symbol set. It can support several symbol sets and can include an
indefinite number of glyphs. Most internal fonts are unbound.
Two notable exceptions are the TrueType Symbol and Wingding
fonts.
Supported Symbol Sets:
Fonts indicate their supported symbol sets in an array of 8 bytes
which together make up a string of 64 bits. In this string, each
bit is used to indicate a family of symbol sets supported by the
font. The lower 3 bits in byte 7 are used to indicate whether the
character codes are Unicode numbers (used with TrueType fonts)
or MSL numbers (used with AGFA Intellifont fonts).
Character Complements:
Normally, the user of PCL5E does not have to be concerned with
character complements. The only exception was noted above, i.e.
the case of a TrueType font which (1) has no PCLT, (2) is not one
of the standard fonts listed in Appendix A and (3) is not bound to
a particular symbol set. If the user does not indicate otherwise,
a default character complement is chosen such that the Basic Latin
symbol sets are supported. If the font is bound to a particular
symbol set, and this set is not one of the standard sets (see
Appendix B), then the set must be added to the internal symbol
sets as described below.
Appendix D of the HP PCL5 Comparison Guide has tables of symbol
list for various character complement bits. Note that bit 63 is
the left most bit in the first byte of the character complement
array of 8 bytes.
=================================================================
3.0 Pcltiff Data Files
In order to function properly, pcltiff requires several data files,
including font files. Some of these data files can be modified in
order to modify the internal fonts and/or symbol sets available to
the interpreter. The modifiable files are listed in Table 1.
Sections 3.3, 3.4 and 3.5 discuss the modification of files.
3.1 LJ.INI
LJ.INI specifies the location of various categories of files.
It must include the switches given in Table 1.
NOTE: Pay particular attention to if.fnt. It includes (internally)
the complete path to each Intellifont font. See Section 4.0.
(If the *.cdi or .cdm files are placed in a directory other than
\pcl5e\if, the program ixmak.exe should be executed with the
appropriate value for the if= switch in lj.ini.
NEW NOTE: If ixmak is run with the /p (or -p) switch only the
font name is included in if.fnt. This is now the preferred way
to operate since the path to the .cdi (or .cdm) can be indicated
in lj.ini regardless of where they were located when ixmak was run.
3.2 Data Files, listed by the default directory, as given in the
lj.ini file
Table 1: Data Files
type filename DESCRIP SWITCH NOTE
========================================================================
MODIFIABLE
DATA FILES:
lje\ char_set.ico character sc= 3
complements
if.fnt Intellifont sc= 5
library index
scalstuf.lj3 internal sc= 7
scaled fonts
uif.ss symbol sets sc= 10
Uni. List
utt.ss symbol sets sc= 10
MSL list
lj.ini sets defaults 6
UTILITIES facedata.exe modifies scalstuf.lj3 using data from tt.txt
fdump.exe Shows all glyphs of font sec. 5.4
ixmak.exe Modifies if.fnt
using data from if.txt
ufssmak.exe Modifies uif.ss, utt.ss
using data from ufssmak.txt
FONTS:
lje\bmfonts\ linep200.crt 200dpi Lineprinter bm= 2
linep300.crt 300dpi Lineprinter bm= 2
linep400.crt 400dpi Lineprinter bm= 2
linep600.crt 600dpi Lineprinter bm= 2
lje\if\ 93950.cdi Courier if= 5
93951.cdi Courier Italic if= 5
93952.cdi Courier Bold if= 5
93953.cdi Courier Bold Italic if= 5
93777.cdi Letter Gothic if= 5
93778.cdi Letter Gothic Italic if= 5
93779.cdi Letter Gothic Bold if= 5
92500.cdi CG Times if= 5
92501.cdi CG Times Italic if= 5
92504.cdi CG Times Bold if= 5
92505.cdi CG Times Bold Italic if= 5
94021.cdi Univers Medium if= 5
94022.cdi Univers MdIt if= 5
94023.cdi Univers Bd if= 5
94024.cdi Univers BdIt if= 5
94029.cdi Univers MdCd if= 5
94039.cdi Univers MdCdIt if= 5
94030.cdi Univers BdCd if= 5
94040.cdi Univers BdCdIt if= 5
90249.cdi Coronet if= 5
90270.cdi Clarendon Cd if= 5
94073.cdi Marigold if= 5
92506.cdi CG Omega if= 5
92507.cdi CG Omega It if= 5
92510.cdi CG Omega Bd if= 5
92511.cdi CG Omega BdIt if= 5
92545.cdi Garamond Antiqua if= 5
92546.cdi Garamond Krsv if= 5
92547.cdi Garamond Hlb if= 5
92548.cdi Garamond KrsvHlb if= 5
92639.cdi Albertus Md if= 5
92642.cdi Albertus Xb if= 5
91119.cdi AntiqueOlv if= 5
91846.cdi AntiqueOlv It if= 5
91118.cdi AntiqueOlv Bd if= 5
plugin.cdi universal plugin if= 5
pluginfp.cdi universal plugin if= 5
if.txt list of \cgfonts
used to make if.fnt
lje\ttf\ symbol.ttf Symbol tt= 9
arialb.ttf Arial Bold tt= 9
arialbi.ttf Arial Bold Italic tt= 9
ariali.ttf Arial Italic tt= 9
arial.ttf Arial tt= 9
times.ttf Times New Roman tt= 9
timesb.ttf Times New Roman Bold tt= 9
timesbi.ttf Times New Roman BoldIt tt= 9
timesi.ttf Times New Roman Italic tt= 9
wingding.ttf Wingdings tt= 9
tt.txt TT fonts text file tt= 9
lje\pcldata\ arcfnt.lj3 HP-GL/2 arc fonts st= 1
gray200.dat gray (200dpi) patterns pt= 4
gray300.dat gray (300dpi) patterns pt= 4
hatch200.dat hatch(200dpi) patterns pt= 4
hatch300.dat hatch(300dpi) patterns pt= 4
stick1.fon stick fonts-arb. Scale st= 8
stickfnt.lj3 stick fonts 300 dpi st= 8
stick23.lj3 stick fonts 200 dpi st= 8
lje\sym\ ufssmake.txt Symbol set text file ss=
*.sym 75 symbol set files ss= sec.5.7
DOS PROGRAMS ljedos.exe DOS PCL5e converter
ljedosd.exe DOS PCL5e converter demo
DOS4gw.exe Rational Systems DOS extender
PMINFO.EXE Reports on available protected mode resources
RMINFO.EXE Shows machine configuration
OS/2 PROGRAMS ljeos2.exe OS/2 PCL5e converter
ljeos2d.exe OS/2 PCL5e converter demo
DOS4gw.exe Rational Systems DOS extender
PMINFO.EXE Reports on available protected mode resources
RMINFO.EXE Shows machine configuration
UNIX PROGRAMS lje PCL5e converter
NOTES ON FONTS:
1. arcfnt.lj3:
This arc font file is in the form of a text file, describing each
character in the arc font set. The file is used if, and only if,
an arc font is used for labeling in HP-GL/2 mode.
2. linep200.crt,linep300.crt, linep400.crt, linep600.crt:
This is the single internal bitmap font used in PCL5E. In this
font, the glyphs are in either 200, 300 or 600 dpi form or are
scaled as required.
3. char_set.ico:
This file is used by pcltiff mainly to obtain character
requirement data for the on board symbol sets since this data
is not supplied by the UFST(r) symbol set files: uif.ss and
utt.ss. This file is produced whenever ufssmak.exe is run.
4. gray200.dat, gray300.dat, hatch200.dat, hatch300.dat:
Internal pattern fills are used both in the PCL and HP-GL/2
parts of PCL5E. PCL5E uses two sets of patterns for this: one
for fine and normal Fax resolutions, and one for resolutions
of 300 dpi and up. These files are in ASCII form, such that
they can be modified by the user to change characteristics
of the internal patterns.
5. if.fnt:
PCL5E uses the AGFA UFST(r) font scaling technology. The
if.fnt file is required by UFST to locate the internal
Intellifont font libraries and to store some information about
each library. The if.fnt file supplied with PCL5E, unless
specified otherwise, assumes that these libraries are located
in \lj4data on the current volume. A utility called ixmak.exe
is provided in case it is necessary to change if.fnt, either
because the libraries are on a different volume, different
directory or because additional Intellifont fonts are to be
made internal. See the section labeled Relocating and Adding
Intellifont libraries.
6. lj.ini:
The lj.ini file is used to locate the various data files
required and to set various configuration parameters. Pcltiff
searches for this file in the following order:
1) current directory
2) root
3) /lj
7. scalstuf.lj3:
This file is used at initialization of PCL5E-to-FAX to catalog all
of the internal scaleable fonts, both TrueType and Intellifont.
If if.fnt or ttf.txt is changed, the utility program, facedata.exe
should be run. See the section, Recataloging Internal Fonts.
8. stick1.fon, stickfnt.lj3, stick23.lj3:
The stick fonts are vector fonts used only in the HP-GL/2 mode of
PCL5//PCL5E. Several variants of this font are used - mainly to
save time if the default 9 pitch size of the font is used.
9. tt.txt:
This is a text file list of TrueType fonts which are to used as
internal fonts. Note that the plugin .ttf is not required to be
in this list although, if it is to be used, it should be located
in \lj4ttf or in the directory given by the "tt=" directory in
lj.ini. This text file can actually serve a dual purpose since it
can also be used to provide missing information about a TrueType
font. See the section Adding TrueType Fonts.
10. uif.ss, utt.ss:
These files contain, in binary form, the contents of the internal
symbol sets which are normally available on the HP LaserJet 4/5
series of printers, for MSL coding and Unicode coding,
respectively. These files are used by UFST(r). They need only be
modified if additional internal symbol sets are required. See the
section Adding Symbol Sets.
3.4 PCL5E AUXILIARY DATA FILES
The following files are supplied for the purpose of modifying
uif.ss, utt.ss, if.fnt or scalstuf.lj3.
if.txt:
list of Intellifont fonts to be placed in if.fnt, used with
ixmak.exe.
ufssmak.txt:
list of symbol set files used to make uif.ss, utt.ss; used with
ufssmak.exe
*.sym:
set of default symbol set files, used with ufssmak.exe
3.5 PCL5E-to-FAX UTILITY FILES
These files are used to modify the files listed in 3.4. They use
lj.ini to locate their input and output as indicated. Each
utility is shown in the form:
(input) => utility => (output)
where the input is shown as: the file name and the lj.ini switch
used to specify the directory in which the file resides.
(See also section 5.0, Adding Fonts)
(if= if.txt, *.cdi) => ixmak.exe => (sc= if.fnt)
(ss= ufssmak.txt, *.sym) => uffsmak.exe => (sc= uif.ss, utt.ss)
(sc= if.fnt, uif.ss, utt.ss, char_set.ico;
tt= tt.txt, *.ttf) => facedata.exe => (sc= scalstuf.lj3, char_set.ico)
=================================================================
4.0 INSTALLATION
4.1 INSTALLATION of LJE from zipfile (DOS, OS/2)
Unzip the file into the root directory. The zipfile includes
complete paths so that directories will be created and the files
will be placed in their proper directories.
4.2 INSTALLATION OF UNIX VERSIONS
Create the following directory:
lje
Within lje, create these directories:
ttf
if
pcldata
bmfonts
sym
The fonts are stored in tar-files which have been subsequently
compressed using gzip. To uncompress, run gzip -d filename. Then run
tar -xvf filename to extract files. Extract ttf.tar into ttf, if.tar
into if, et cetera.
The other files are stored in a tar-file. Within this file, the
executable is compressed using gzip. First run tar -xvf filename to
extract files, then run gzip -d to uncompress the executable. Put
these files into the lje folder.
4.3 PLEASE NOTE:
If you choose to use a different directory structure, then you must
edit the file lj.ini and then run the three utilities, ixmake,
ufssmake and facedata. (See sections 3.4 and 3.5). Lj.ini must be
in the same directory as the utility programs (or in the root
directory or /lj).
=================================================================
5.0 ADDING FONTS
5.1 Relocating and Adding Intellifont Libraries
If additional fonts are to be added as internal fonts or if these
fonts are not in the default location, the program ixmak.exe must
be run. This is a DOS box program which requires as input a list
of Intellifont library files.
The complete path to each library is made by concatenating the
path following the "if=" switch in lj.ini with the file name given
in the list. The list itself is a text file. The auxiliary data
file, if.txt, is a list of the internal Intellifont files used with
the HP LaserJet 4/5 series of printers. If the file name is
preceded with "#" that font library is not added to the internal
fonts.
NEW NOTE: If ixmak is run with the /p option only the name of the
various .cdi (or .cdm) files are stored within if.fnt. The complete
path to these files can then be specified by giving the path in
lj.ini when the interpreter is run.
5.2 Recataloging Internal Fonts
The program facedata.exe is used to recatalog internal fonts after
any of the following changes have taken place:
1. Addition of TrueType font files as internal fonts. (most likely use)
2. The set of internal TrueType fonts is modified.
3. The set of internal Intellifont fonts is modified using ixmak.exe.
4. Additional internal symbol sets are added using ufssmak.exe.
5. Current internal symbol sets are modified using ufssmak.exe.
This program requires as input many of the same files used by LJEFAX,
but produces the master font catalog file, scalstuf.lj3.
5.3 Adding TrueType Fonts
Place the desired TrueType font files into a common directory.
Reference this directory with the "tt=" switch in lj.ini. Add the
names of the files to tt.txt.
If the file includes a PCLT and/or is one of the standard fonts
listed in Appendix A, it is not necessary to supply missing information.
If not, supply the missing information. To do so, add additional
strings to the name of the file in tt.txt. Three "switches" are
used, with the value to be applied to a given quantity following
the switch with no intervening spaces.
Switch Definitions:
c character complement
Gives a series of bits to be turned off. If a bit is on, the symbol
set associated with this bit is not supported by the font. The bits
to be turned off can be given as individual bit numbers, as a range
of bits separated by commas, or a combination of both.
Ex: font supports all Latin symbol sets (bits 28-31)
c28-31
c28,29,30,31
c21,28-31
s symbol set
standard PCL form: number followed by upper case letter
s15Y
f typeface name
form: integer
f1234
NOTE: Use either the s switch or the c switch, but not both.
If if the face is bound, the character complement is 0 and the
symbol set number is non-zero. If the character complement is
non-zero, the symbol set number should be 0.
5.4 Assigning the character complement array
Perhaps the most difficult part of adding TrueType fonts when the
PCLT is not given is deciding what character complement array
should be assigned. Theoretically, it should be possible to
automate this process by using a program that analyzes the cmap,
a required table. This table acts as an index from Unicode to
internal index number for each glyph in the font.
In lieu of such a program, the utility program fdump.exe has been
included to display on a printer all of the glyphs in the font,
either by index number or by Unicode. (Unicode is printed below
each glyph in hex form)
This illustration of the font can be used as an aid in deciding
what bits should be set in the character complements array. Please
also see the HP PCL5 Comparison Guide.
Another utility program, ttfdump.exe, can be downloaded from the
Internet and used to display the contents of all of the tables in
the font. This program enables you to determine whether the PCLT
exists within the font.
Facedata.exe can also be used to create a text file containing
useful information about the font, including information on the
presence or absence of the PCLT.
5.5 Edit the tt.txt file
Edit tt.txt file to include the added fonts. Note that tt.txt uses
the same convention as if.txt: file names preceded by '#' are skipped.
5.6 Run facedata.exe
Run facedata.exe to produce the modified catalog file, scalstuf.lj3.
Facedata.exe, will accept a single command line paramter,
"-p or /p", which will cause a text file called charcode.txt to
be produced, in addition to its other outputs.
This file contains a listing of the character mapping table for
each TrueType font, as well as some of the contents of the font
master structure associated with the font. This file is placed
in the tt= directory.
5.7 Adding Symbol Sets
Normally it is not necessary to add additional internal symbol
sets to PCL5E-to-FAX. However, if a bound font is added which
requires a symbol set not listed in Appendix B, you must modify
either uif.ss or utt.ss in order for PCL5E-to-FAX to access the
font. The utility program ufssmak.exe is provided for this purpose.
First, obtain or produce the appropriate .sym file. Place it in
the same directory as the existing .sym files (\LJE\SYM\).
NOTE that there are two classes of .sym files: those coded for
MSL with a "td" prefix and those coded for Unicode with a "tt"
prefix.
Add the name of the new symbol set to the text file, ufssmak.txt.
Execute ufssmak.exe to produce the new uif.ss or utt.ss.
NOTES ON CREATING .SYM FILES:
The .sym files are text files. The easiest way to create a new
.sym file is to use one of the existing ones as a template. The
SYMBOL SET field has a two character symbol set identifier which
must be unique and which is used internally by UFST to index the
symbol sets.
There are two special symbol sets: "00" and "01" which are used
internally for handling user defined symbol sets which have been
downloaded. These identifiers should not be used for any other
symbol sets.
=================================================================
6.0 OPERATION
(UNIX NOTE: path names would use the forward slash "/" instead
of "\" and all system files are lower case.)
6.1 Program Execution:
Use the following Command Line syntax to execute the program:
lje -dfilename -eoutput.tif -[option][value] -[option][value]
-[option][value]
Options may be specified in the command line, or in the LJ.INI
file. Please read section 6.2 for directions on using the
initialization file and options. The only required command
parameter is the name of the input file which immediately
follows the -d option. The name of the output file given by the
-e option is required if it is not given in the lj.ini file
since there is no default value.
Examples:
lje -dtestfile.pcl -etesttif.tif -h204 -v196 -j968
[may be in any order]
lje -dtestfile.pcl -etesttif.tif
[options specified in lj.ini]
6.2 Initialization file:
LJ.INI is an optional file, used to specify the default settings
of the options recognized by the executable, and to indicate the
location of the font and pattern files. The LJ.INI file which is
provided with the software is listed below.
In the supplied LJ.INI, there are sample options which are
preceded by "#" so that they are not used. The file includes a
variety of sample TIFF output (j-option) formats, of which j=840
has been selected. LJ.INI does not include all possible options,
but may be modified to achieve the desired output. Options are
specified in the form "option = value", or to turn on a binary
option, "option =". Please read section 5.3 on Options, for a
description of parameters and values.
The search order for LJ.INI is:
1) current directory
2) root directory
3) \ LJ
The options in LJ.INI will be overridden by any options specified
in either the command line or the API, unless the "i" option (see)
is turned on (i=) in LJ.INI.
LJ.INI:
sc=\lje\
bm=\lje\bmfont\
st=\lje\pcldata\
pt=\lje\pcldata\
ss=\lje\sym\
tt=\lje\ttf\
if=\lje\if\
e=ts000001.tif
# create template
#b=0
#or with a template
#f=ts000001.bin
# Brooktrout with EOLs and EOB
#j=4936
# TIFF with EOLs and EOB
j=840
# TIFF with EOLs and EOB and template on each page
#j=9032
# multipage TIFF Group 3 with EOLs and EOB, Motorola format
#j=984
# multipage TIFF Group 3 with EOLs and EOB
#j=968
# DCX (multipage PCX)
#j=131
# single page PCX
#j=11
#t=2272
#s=0
t=0
#for letter set p=0 or omit since letter is default
#p=1
m=0
c=0
#h=204
#v=196
6.3 COMMAND LINE OPTIONS:
Note:
An option not followed by a value is binary, i.e. if present it
causes the non-default value to be used; an option followed by #
indicates an integer value, by #.# a decimal number, by $ a string,
by & a special value. In some cases the string should not start
with an integer.
Option Description, Range And Default Values
-a scaling method switch for raster graphics
range: 0=Ritex
1=smooth sequence (default)
-b template/document mode switch
range: 0=template
1=document (default)
-c# Solaris only: document timeout in seconds
range: 0 to 1000
0=infinity (default)
-d$ REQUIRED input file name
-e$ output file name
-f$ template file name
-g$ pagemap file name (see note)
-h# horizontal resolution (pixels/inch)
range: 50 to 600
200 = default
-i read .ini file after command line parameters received
range: 0=no (default)
1=yes
-j# TIFF parameter code (see note)
defaults: 72
-k# G3/2D encoding only: K-value (see note)
range: 2,3,4
-l$ left font cartridge file name
-m# Solaris only: page timeout in seconds
range: 0 to 300
0=infinity (default)
-n# default font number
range: 0-9999
6=Courier (default)
-o# default page orientation
range: 0=portrait (default)
1=landscape
2=inverse portrait
3=inverse landscape
-p# paper size code (see note)
range: 0=letter (default)
1=A4
2=B5
3=legal
4=executive page
5=A5
6=monarch envelope
7=com 10 envelope
8=C5 envelope
9=DL envelope
10=11x17
11=A3
12=custom size
-q scaling method switch for bitmap characters
range: 0=Ritex
1=smooth sequence (default)
-r$ right font cartridge file name
-s# output bitmap width in pixels (see note)
range: 0 to 32767
1728=default
-t# output bitmap height in pixels (see note)
range: 0 to 32767
0=default
-u$ font source switch
range: I=internal fonts (default)
L=left font cartridge
R=right font cartridge
S=soft fonts
-v# vertical resolution in pixels/inch(see note)
range: 50 to 600 200=default
-w# Solaris only: file descriptor for writing messages
-x# horizontal offset of image within bitmap (pixels)
range: 0-32768
0=default
-y# vertical offset of image within bitmap (pixels)
range: no limit
0=default
-z# file descriptor for reading messages or
name of log file
6.4 ADVANCED BINARY OPTIONS:
-!a if set, turns off form feed on bad PCL escape commands
-!d if set, causes raster graphics in PCL to be read as 600 dpi.
Emulates the 300/600 dpi front panel switch on a printer.
-!g if set, forces scaling to be done at the band level rather
than the object level
-!i if set, enables converter to emulate edge-to-edge printing.
-!q if set, enables converter to convert HPGL without being
embedded in PCL
-!s if set, forces turns off scale rounding
-!y if set, text path is vertical for Asian (Chinese, etc.) fonts
-!z if set, embedded copy counts are ignored
6.5 ADDED NON-BINARY OPTIONS
-*g# character cache maximum memory
if 0 or negative it is set to the default - 9 megabytes
-*o$ name of file containing an overlay macro
-*s# sets the Sleep value in milliseconds [0]
(OS/2 only)
-*y# text parsing message for one/two byte character encoding
of Asian fonts
range: 0, 21, 31, 38
-^a#.# font point size of proportional fonts
range: 4.0 to 999.75
12.0 = default
-^b#.# font pitch of fixed pitch fonts
range: .44 to 99.0 characers per inch
10.0 = default
-^c& symbol set to be used, e.g. 10U
8U = default
-^d# special output option (subject to additions)
1 - .ras type output (used mainly in UNIX)
-^e# ascii text extraction bit code (special implementation)
bit 0 set or not -> extract ascii
bit 1 set -> also output TIF
bit 2 set -> output ascii position (not implemented)
-^f$ ascii text output file name
"asc00000.txt" = default
6.6 OPTION NOTES
-a: Scaling method: Since PCL5 is not a resolution dependent
language, certain objects (raster graphic images and bitmap
characters) must be scaled to the desired resolution (commonly
from 300 dpi to 200 dpi for fax format). There are two scaling
methods: "Ritex" and "smooth sequence". Ritex scaling will
occasionally cause significant pixels to be missed. Smooth
sequence scaling will never omit pixels, but will OR them with
other pixels. The net result is that some raster graphics may
seem too dark. If this is the case, set a=0 to force Ritex scaling.
-b: The interpreter normally operates in document mode (b=1).
If b=0, it operates in template mode and produces a binary file.
This file is suitable for use as a template, which may be ORed
with either the first page or all pages of a document. (See -f
and -j for further discussion of templates.)
-c: Document timeout is only applicable to Solaris.
-d: Input file name is a required parameter on the command line.
-e: Output file name: There will be one output file for each page
of the input file unless multipage TIFF is specified. An output
file name must be specified, either on the command line or in the
lj.ini flle - here is no default.
For output files with nonnumeric or nonexistant file extensions,
subsequent output file names are derived by successively
incrementing the digit portion of the root name, if present. The
length of the digit portion is preserved by using 0 fill on the
left. If there is no such digit portion, then a digit portion is
added to the root incrementally for each page (001, 002, 003, et
cetera).
If the file extension is a number, the new file name is derived
by incrementing this number. Note that this form is required by
some Brooktrout boards.
Example:
p1: fx000999.tif a:\test500.tif abcdefgh.tif brookt.301
p2: fx001000.tif a:\test501.tif abcde002.tif brookt.302
p3: fx001001.tif a:\test502.tif abcde003.tif brookt.303
et cetera.
-f: Specify template file: If the interpreter runs in document
mode and a binary template file name (see option-b) is specified
using option -f, the template will be ORed with either the first
page or all pages of the primary document. The width and height
of the template bitmap need not be the same as that of the
document. The template will always be placed at the top of the
page.
Example: lje -dtest.pcl -etest000.tif -ftemplate.bin
-g: This option is used to force the interpreter to use page
sizes other than the default. The interpreter uses a set of 13
internal page sizes, along with the page size code (option -p),
to determine the size of the output bitmap. The default page size
code is 0 for "US letter" since the width of the letter size page
is that normally used in the US. For European use it may have to
be set to 1 for "A4". Note that the PCL5 input file may contain
an escape command which will cause the paper size to change from
its original setting.
The following structure should be used when creating a pagemap
file, to be used to replace the internal pagemap. The page width
and heights are expressed in units of 1/72". The map file, if used,
should be a binary file containing up to 13 width, height pairs.
typedef struct pgsz_tag
{
INT32 w;
INT32 h;
}PGSZ;
LOCAL PGSZ trays[] = {
{ 612, 792 }, /* letter */
{ 595, 842 }, /* a4 */
{ 516, 729 }, /* b5 */
{ 612, 1008 }, /* legal */
{ 522, 756 }, /* executivepage */
{ 421, 595 }, /* a5 */
{ 540, 279 }, /* monarcenvelope */
{ 684, 297 }, /* com10envelope */
{ 649, 460 }, /* c5envelope */
{ 624, 312 }, /* dlenvelope */
{ 792, 1224 }, /* 11x17 */
{ 842, 1191 }, /* a3 */
{ 1000, 1000} /* custom */
};
-h: Horizontal resolution of the output in pixels/inch. Most
raster graphics and bitmap fonts are designed for 300 dpi printers.
On the other hand, most fax machines have horizontal resolutions
of approximately 203 or 204 dpi and vertical resolutions of
approximately 196 (fine) or 98 (normal) dpi. There are two sets of
bitmap fonts supplied: one for 200 x 200 dpi and one for 300 x 300
dpi. The 200 x 200 dpi fonts are used for 204 x 196 and 204 x 98
resolutions as well as 200 x 200. For normal fax resolution,
further scaling is done within the interpreter. Scaled fonts and
most HPGL graphics are scaled exactly. For best fax results, it is
recommended that the default resolutions be used. See option !t.
-i: Read LJ.INI after command parameters. Normally the LJ.INI file
is read only before the command parameters are read. If i=1,
LJ.INI is also read after the command parameters, thus allowing
the .INI parameters to override those given on the command line.
-j: Output format. Set J=n in the LJ.INI file, where n is the
decimal value of the binary number represented by the bit settings
in a TIFF option word.
Bit settings and default values are listed in the following table:
BIT DESCRIPTION VALUES DEC. VALUE
*default j=72
** j=840
0, 1 Compression format 00 = G3/1D* 0
01 = G3/2D 1
10 = G4 2
11 = PCX/DCX 3
2 Code compression 0= no uncomp codes* 0
1= allow uncomp codes 4
3 Bitmap bit setting 0=white 0
1=black* 8
4 TIFF header format 0=little endian(Intel)* 0
(byte order) 1=big endian(Motorola) 16
5 Bit order 0=low order bits on right* 0
1=reverse fill order 32
6 Line ending 0=no restriction 0
1=lines end on byte boundary* 64
7 Multipage TIFF or DCX: 0=single page output* 0
1=multipage output 128
8 EOL bytes 0=no EOL bytes at end of line 0*
1=EOL bytes at end of line 256**
9 EOB bytes 0=no 0*
at end of G3image 1=yes 512**
10, Reserved for EOL type 00* 1024
11 (not used) 2048
12 Brooktrout header 0=TIFF header* 0
1= Brooktrout header 4096
13 Templates 0= template on 1st page only* 0*
1= template on every page 8192
examples:
J value Binary Description
-j72 0000 0000 0100 1000 default G3/1D
-j840 0000 0011 0100 1000 default, w/ EOL and EOB on
-j4936 0001 0011 0100 1000 default, w/ EOL and EOB on, Brooktrout headers
-j968 0000 0011 1100 1000 default, w/ EOL and EOB on, multipage TIFF
-j1016 0000 0011 1111 1000 EOL/EOB on, multipg, rev fill, big endian
-j3 0000 0000 0000 0011 PCX output
-j131 0000 0000 1000 0011 DCX output (multipage PCX)
PCX/DCX NOTES:
For PCX output, a separate PCX file is output for each page if the
multipage TIFF bit is not set. If multipage TIFF bit is set, output
will be a single DCX file containing all PCX components. For
monotone PCX files, if a bit is set, it is considered white. If
the opposite convention is desired, TIFF bit 3 should be set. Thus
j=3 is normal PCX, while j=11 gives inverted PCX.
-k: Applicable only with G3/2D encoding, the "K" value as specified
in section 4 , Coding, of CCITT Recommendation T.4: "Standardization
of Group 3 Facsimile apparatus for document transmission:
International Telephone and Telegraph Consultative Committee (CCITT,
Geneva: 1988). K = 2, 3, or 4, the number of scanlines encoded in
a group, in which the first line is encoded 1-dimensionally and
the remainder 2-dimensionally.
-l: Left font cartridge file. EP/Fax has the ability to attach
additional font "cartridges" in the form of special font files.
As in the LaserJet III printer, both left and right cartridges
can be attached.
-m: Page timeout is implemented only in Solaris.
-n: Default font setting. If a font is not specified (e. g.,
when printing ASCII files, which have no provisions for font
selection), or when the specified font is not found, the default
font will be 10 point Courier. This option enables one to specify
a different default font. The fonts are assigned numbers
internally and it is this number which should be used. These
numbers depend on the order in which fonts were loaded and what
fonts were loaded if other than the standard set is loaded. In
order to determine these "assignment" numbers set n equal to
1000 and specify a log file to record the output using the -z
option. The numbers 0 - 5 are assigned to the line printer font
and do not appear in the list.
-o: This option can be used to override the default page
orientation which is Portrait or 0. The other possible values are
Landscape (1),
-p: See -g.
-q: Scaling method switch for bitmap characters. See also -a.
Bitmap characters should usually be scaled using the smooth
sequence method, so the q option should not be used.
-r: Right font cartridge file. EP/Fax has the ability to attach
additional font "cartridges" in the form of special font files.
As in the LaserJet III printer, both left and right cartridges
can be attached.
-s: If this is set to 0, the bitmap width is a "minimal" one
which is determined mainly by the page size and horizontal
resolution. The default is the standard Fax Group 3 width. Note
that at 300 dpi output the default width will cause the page to be
clipped on the right.
-t: If this is set to 0, the bitmap height is one which is
determined mainly by the page size and vertical resolution. The
Fax Group 3 spec does not define a standard for this. If it is set
to a negative number, the bitmap height is determined not by the
size of the page but by the depth on the page where the last band
was placed. (See notes about fax output at end of this document.)
-u: This option forces the interpreter to select fonts from a
designated source, such as the internal fonts or downloaded (soft)
fonts.
-v: This option expresses the vertical resolution of the output
in pixels/inch. Most raster graphics and bitmap fonts are designed
for 300 dpi printers. On the other hand, most fax machines have
horizontal resolutions of approximately 203 or 204 dpi and vertical
resolutions of approximately 196 (fine) or 98 (normal) dpi. Four
sets of bitmap fonts are supplied: 200 x 200 dpi, 300 x 300 dpi,
400 x 400 and 600 x 600 dpi. The 200 x 200 dpi fonts are used for
204 x 196 and 204 x 98 resolutions as well as 200 x 200. For normal
fax resolution, further scaling is done within the interpreter.
Also see option !t.
Scaled fonts and most HPGL graphics are scaled exactly. For best
results it is recommended that the default resolutions be used.
-w: Only used in a multi-tasking environment to communicate with
a parent process.
-x and -y: These options are used to move the image to the left,
down or both within the output bitmap. This x/y offset is in pixels.
-z: See -w. If the character following z is not a digit, then
it is considered to be the first character of a log file name,
which is then used to log error and informative messages in a
non-multitasking environment.
6.6 ADVANCED OPTION NOTES:
!a: Turn off forced form feed: In order to emulate the behavior
of certain HP LaserJet printers the PCL5E interpreter will force
a form feed when selected bad escape sequences are received. This
feature may be turned off by setting this binary option.
!d: Turn on printer front-panel switch for 600 dpi raster graphics.
This will cause any 600 dpi raster graphics to be treated as such
by the interpreter. It is used with files which are created by a
driver for a printer which has such a switch.
!g: Scale at bitmap level: For some PCL files, you may get better
results by scaling to the desired resolution after an entire page
has been converted to a bitmap at 300 dpi. Setting this option
will cause scaling to be done at the bitmap level rather than the
object level.
Currently, this scaling is to 200 x 200 or 200 x 100 only. To get
200 x 100 output resolution, set v to 100. The value of h is
ignored; the vertical resolution will be 200 unless v is set to 100.
!i: In order to emulate the output of some IBM printers which use
more of the printable area of the page than HP printers, this
option should be set.
!q: The interpreter processes HPGL commands but normally they must
be embedded in some PCL escape sequences. By setting this option,
"pure" HPGL files can be processed. Note however that various HPGL
plotter parameters such as position of the "scaling points", P1,
P2 will not be correct.
!t: The output resolutions specified by -h and -v are actually
rounded to the nearest multiple of 100 but the resolution specified
by -h and -v are placed in the TIFF header since some Fax machines
expect these exact values. On the other hand the exact values
present some scaling problems. If exact values are required for
the output, set the !t option.
!y: This option can be used with Asian text to output characters
in "vertical" format. It has no effect in non-Asian text. Specifying
this option has the effect of transforming a portrait page with
horizontal text into a landscape page with vertical text.
!z: Some PCL files will have a copy count escape sequence. If this
count is to be ignored the !z option should be set.
*g: This option should be used only in special cases where a very
large number of characters will be cached such that the memory they
use may cause an excessive amount of memory page swapping, thus
slowing down the interpreter.
*o: For some applications it is handy to specify an internal macro
which will be executed at the end of each page. If this macro is
placed in a special "macro file" the macro can be made internal by
specifying the name of this file using this option.
*s: OS/2 based programs execute the Sleep() function after each
band is formed. The default parameter is 0. This may be changed
to a different value via this option.
*y: For some Asian languages like Japanese and Chinese the single
byte character encoding scheme must be replaced by either a pure
two byte encoding scheme like Unicode or by one of a various one/two
byte encoding schemes. HP uses the following numbers to indicate
which scheme is used:
0, 1: single byte only,
21 : 1/2 byte - JIS X0208, GB 2312-80 (7 bit), KS C 5601-1992 (7 bit)
31 : 1/2 byte - Shift-JIS
38 : 1/2 byte - BigFive, TCA, GB 2312-80 (8 bit), KS C 5601-1992 (8 bit)
^a, ^b, ^c: These options can be used to specify the size (point
or pitch) of the font to be used as well as the internal symbol
set to be used. Note that this has an effect only on those PCL
files which do not include escape sequences specifying such values.
The symbol set is identified by a number letter pair such as 8U
(Roman 8) and must be represented by one of the .sym files included
with the interpreter. See Appendix B for the standard set.
^d: This option is used to specify special output formats and is
subject ot update. Currently the only special output is the UNIX
rasterfile (.ras) format which is essentilly an uncompressed
bitmap with a special header.
^e: This option can be used to extract the text portion of a PCL
file. This text is placed in a file specified with the ^f option
or the default file asc00000.txt. Note that for many PCL files the
output will be nonsense. The value associated with this option is
actually a bit field which can be used to specify more than just
text output. Currently any value <= 7 will cause ASCII output and
if bit 1 is set a TIF file will also be output, for example value
= 2 or 3.
=================================================================
APPENDIX A
INTERNAL SCALABLE FONTS:
TYPEFACE TREATMENT TYPEFACE NUMBER
INTELLIFONT
TYPEFACES
CG Times Med, Ital, Bold, Bd. Ital. 4101
Univers Med, Ital, Bold, Bd. Ital 4148
Univers Cond Med, Ital, Bold, Bd. Ital 4148
Courier Med, Ital, Bold 4099
Letter Gothic Med, Ital, Bold 4102
Albertus Med, Ex. Bd. 4362
Antique Olive Med, Ital, Bold 4168
Clarendon Cond. Bold 4140
Coronet Med, Ital 4116
GaramondAntiqua Kursiv,Halbfett,KursivHalbfett 4197
Marigold Med 4297
CG Omega Med, Ital, Bold, Bd. Ital 4113
TRUETYPE TYPEFACES
Arial Med, Ital, Bold, Bd. Ital 16602
Times New Roman Med, Ital, Bold, Bd. Ital 16901
Symbol Med 16686
Wingdings Med 31402
=================================================================
APPENDIX B
Internal Symbol Sets
SYMBOL SET PCL SYMBOL SYMBOL SET NAME
INDEX SET ID
RE 8U Roman-8
E1 0N USI 8859 Latin 1
(previously called ECMA 94 Latin 1)
E2 2N ISO 8859-2 Latin 2
E5 5N ISO 8859-2 Latin 5
PC 10U PC-8
PD 11U PC-8 D/N
PM 12U PC-850
PE 17U PC852
PT 9T PC-Turk
W1 19U Windows 3.1 Latin 1
(Microsoft calls it ANSI)
WE 9E Windows 3.1 Latin 2
WT 5T Windows 3.1 Latin 5
DT 7J DeskTop
TS 10J PS Text
VI 13J Ventura International
VI 14J Ventura US
PB 6J Microsoft Publishing
M8 8M Math-8
MS 5M PS Math
VM 6M Ventura Math
PI 15U PI Font
LG 1U Legal
UK 1E ISO United Kingdom
US 0U ASCII
SW 0S ISO Swedish: names
IT 0I ISO Italian
SP 2S ISO Spanish
GR 1G ISO German
DN 0D ISO Norwegian
FR 1F ISO French
WO 9U Windows 3.0 Latin 1
(previously called Windows)
MC 12J MC Text
SY 19M Symbol
WD 579L Wingdings
----------------------------------------------------------------------
TechNote: 226 - Copyright 2001 Faximum Software Inc., All Rights Reserved.
Last Updated: Thu Mar 22 14:33:29 PST 2001
Find all Faximum TechNotes at http://www.faximum.com/support
© Copyright 2001 Faximum Software Inc. All Rights Reserved.