# Compaq DECprint Supervisor (DCPS) for OpenVMS
User's Guide

Previous | Contents | Index

# 4.7 Using Example Files to Suppress PostScript Operators

The DECprint Supervisor for OpenVMS software provides example files that show how to suppress many commonly used PostScript extension operators.

## 4.7.1 Suppressing PostScript Operators on Desktop Printers

If you are using a desktop printer, you can create a setup module to suppress the failing PostScript operator. The following example file is distributed with the DECprint Supervisor for OpenVMS software:

    SYS$COMMON:[SYSHLP.EXAMPLES.DCPS]LPS$STATUSDICT.PS

This file is an assortment of PostScript routines. You can edit the file and copy routines that solve problems with specific PostScript operators. The new file that you create can be specified as a setup module and printed with the file that failed.

See the DECprint Supervisor for OpenVMS System Manager's Guide for more information about setup modules.

## 4.7.2 Suppressing PostScript Operators on PrintServer Printers

The PS_SUPPLEMENT file can be loaded into the PrintServer printer so that many unrecognized PostScript extension operators are ignored. If you have PrintServer Software Version 4.2 or later, this file is automatically downloaded to your printer.

# Chapter 5
Printing ANSI Files

When you submit ANSI or ASCII text files for printing on PostScript printers, they are translated to PostScript. The DECprint Supervisor software recognizes the full range of ANSI escape sequences for all levels of the ANSI printing protocol. Refer to the Digital ANSI-Compliant Printing Protocol Level 3 Programming Reference Manual for more information about the DIGITAL ANSI-compliant printing protocol and the functions of the ANSI translator.

# 5.1 Printing Multiple ANSI Files in a Print Job

ANSI files are handled differently from other types of files. When you print more than one ANSI file in a print job, the printer commands in the first file are not passed on to the second file. You must use an ANSI setup module to pass printing attributes, or include the print attributes in each file.

# 5.2 Emulating ANSI Printers

If your site has changed the printing system from ANSI printers to PostScript printers, you can take advantage of the DECprint Supervisor software to print ANSI files that were created for ANSI printers on your new PostScript printers.

The DECprint Supervisor software automatically handles ANSI file printing in a way that emulates printing on ANSI printers. If you need to modify the way that ANSI files are printed, use any of the qualifiers in Table 5-1 to enhance your printed document.

Table 5-1 ANSI Print Qualifiers
To modify this aspect ... | Use this qualifier ... | To get this effect ...
--- | --- | ---
Form feeds, which are usually inserted into the ANSI document at the bottom of each page | /NOFEED | Suppress automatic form feed insertion.
Header lines on each page | /HEADER 1 | Print the file name, page number, and file creation date at the top of each page.
Margin, header, and tab processing | /PASSALL | Preserve the state of the file through printing without imposing margins, headers, or tab emulation on the printed document.
Single-spaced documents | /SPACE 1 | Insert a blank line after each text line, providing double-spaced output.
Expansion of tabs during processing | /PARAMETERS=[NO]TAB 1 | Control how tabs are processed (see Section 5.3).
Fonts available for printing | /PARAMETERS=FONTS_USED | Specify one or more SoftFont modules that include software fonts that emulate font cartridges (see Section 5.4).
Formatting of text by the default form specified for the queue | /FORM | Specify the form definition assumed for the print job.

1When you include this qualifier, the default form for the queue is applied to the print job. See Chapter 12 for more information.

# 5.3 Processing Tabs in ANSI Files

The [NO]TAB parameter allows you to emulate the ways in which the ANSI printer handles tab characters. When you include the TAB parameter in your print job, the action is equivalent to using the SET TERMINAL/TAB command on the ANSI printer.

The [NO]TAB parameter is useful when you are not printing 10 characters per inch, or when ANSI tabs are defined in inches, not by character position. If you change the character size, tab sizes do not change when you specify PARAMETERS=TAB. If you expect tabs to change size when characters change size, specify /PARAMETERS=NOTAB.

When you specify [NO]TAB, the software invokes the default form, DCPS$DEFAULT for your job. Refer to Chapter 12 for more information about the default form definition.

By default, the DECprint Supervisor software processes tab characters so that tab stops are set at every eight character positions (/PARAMETERS=NOTAB).

The system manager can change this operation as a queue default so that you do not have to specify it on the PRINT command line. Different settings of this parameter may be established as queue defaults for different generic queues driving the same printer. In this way, you can access either method of tab expansion when you submit print jobs from application programs that allow you to specify the queue name but not the print parameters.

# 5.4 Emulating Printer Font Cartridges

Your document may require font cartridges in order to print on ANSI printers. If you want to print the document on a PostScript printer, you can use the FONTS_USED parameter to emulate the ANSI printer font cartridges. The files must contain escape sequences that call the fonts.

Note These font modules are not a standard part of the DECprint Supervisor software. Your system manager can obtain SoftFont kits from Compaq separately and then install them in the font library. To list the font modules that have been installed on your system, use the following command:
    $ LIBRARY /LIST SYS$LIBRARY:CPS$ANSI_FONTS.TLB
If this file does not exist, no font modules have been installed.

To include one or more font modules in your print job, use the /PARAMETERS=FONTS_USED qualifier in the PRINT command. For example, if you used to print your file on an ANSI printer with the ITC Souvenir cartridge installed, enter the following command to print it on a PostScript printer with the DECprint Supervisor software:

    $ PRINT /PARAMETERS=(FONTS_USED=ITC_SOUV_MCS) file-spec

Note If you include two or more cartridge names, be sure to place quotation marks around them. For example:
    $ PRINT /PARAMETERS="FONTS_USED=(ITC_SOUV_MCS,BARCODE)" file-spec

See Appendix D for a list of the available SoftFont kits.

# 5.5 Using PostScript Operators to Change Trays

With the DECprint Supervisor for OpenVMS software, you can print ANSI documents that were created for printing on media from a specific input tray.

The DECprint Supervisor for OpenVMS software recognizes escape sequences in ANSI files that select the printer input tray. If you print an ANSI file that is set up to select an input tray that does not exist on your printer, the print job fails and you receive the following error message:

    %DCPS-W-RANGECHK, rangecheck: Argument out of bounds -
    offending command is setpapertray.

If this happens, you can create a PostScript setup module to submit with the print job, and redefine the input tray settings. For example, you could create a PostScript setup module using the following PostScript operators:

    /settoptray {statusdict begin 2 setpapertray end} def

    /setbottomtray {statusdict begin 1 setpapertray end} def

This example selects the printer tray 2 for the top tray (settoptray), and tray 1 for the bottom tray (setbottomtray). When you create a PostScript setup module, use the operator listed in Table 5-2 that corresponds to the input tray specified in the ANSI file. Select a value for the setpapertray argument that corresponds to an input tray on your printer. Refer to your printer owner's manual for the input tray numbers supported by your printer.

Submit the setup module with your ANSI document using the PRINT command. For example, to use the setup module TRAYDEF.PS to print the file OVERHEAD.TXT, enter the following command:

    $ PRINT /NOTIFY /SETUP=TRAYDEF OVERHEAD.TXT

The ANSI input tray selection sequences and the PostScript operators associated with each of them are listed in Table 5-2. The translator uses the default setpapertray value if no other value has been defined. A setup module with a different value overrides the default value.

Table 5-2 Operators for Changing Input Trays
ANSI Sequence | User-Defined Operators | Default setpapertray Value
--- | --- | ---
CSI ! v | [none] | [none]
CSI 0 ! v | [none] | [none]
CSI 1 ! v | settoptray | 1
CSI 2 ! v | setbottomtray | 2
CSI 3 ! v | setlcittray | 3
CSI 4 ! v | setmanualfeedtray | 0
CSI 99 ! v | setmanualfeedtray | 0

# 5.6 Using ANSI Sequences to Print Duplex or Simplex

To specify one- or two-sided printing, add ANSI escape sequences to your file. The ANSI duplex sequences are listed in Table 5-3. Replace the sp value in the table with a blank character space in your ANSI file.

Table 5-3 ANSI Sequences for Printing Simplex or Duplex
ANSI Sequence | Duplex Operation
--- | ---
CSI 0 sp x | true simplex normal
CSI 1 sp x | true simplex normal
CSI 2 sp x | true simplex tumbled
CSI 3 sp x | true duplex normal
CSI 4 sp x | true duplex tumbled
CSI 5 sp x | duplex master normal
CSI 6 sp x | duplex master tumbled
CSI 7 sp x | simplex compressed normal
CSI 8 sp x | compressed tumbled

# 5.7 The LIST Data Type and Translator

The LIST data type feature employs a special text-to-PostScript translator (see Chapter 9). It translates 8-bit ASCII (ISO 8859-1) text to a convenient printable form, numbering the lines in the file and printing gray bars behind alternating groups of lines. The LIST translator is not an ANSI translator. It does not translate escape sequences, such as those defined by ANSI PPL3, HP-PCL, or any other printer protocol. You should continue to use the ANSI data type for printing jobs that include and require translation of DEC PPL3 data and control sequences.

# 5.8 Printing the Euro Symbol

The ISO Latin-9 (ISO 8859-15) character set is included with the DCPS ANSI translator. This character set includes the Euro symbol.

One way to print the Euro symbol is to include the following ANSI escape sequences in your ANSI file:

        <ESC>.b        selects ISO Latin-9 character set
        <ESC>n$        prints Euro symbol

# Chapter 6
Printing DDIF Image Files Using the Image Interpreter

DECprint Supervisor for OpenVMS software replaces DEC Image Print-PLUS Client Services, 1 and allows you to print DDIF bitonal image files on the PrintServer 17, turbo PrintServer 20, and PrintServer 32 printers using the Image interpreter.

Note The Image interpreter is not used if PostScript Level 2 is present.

If your print job includes one of the following parameters, the Image interpreter is not used to print the document:

    /PARAMETERS=LAYUP_DEFINITION
    /PARAMETERS=NUMBER_UP

Instead, the file is translated to PostScript for printing to provide the feature specified by the parameter value.

Note #### 1 The DECprint Supervisor for OpenVMS product, versions 1.1 and later, is incompatible with all versions of DEC Image Print-PLUS Client Services.

# 6.1 Improvements to Image Printing

Two factors make printing images a relatively slow process in a standard network environment:

1. Because a PrintServer printer in a standard environment handles only PostScript files, the files must be converted to PostScript format at the user's node, and then processed at the PrintServer printer by the PostScript interpreter software.
2. Because PostScript Level 1 image files are large, it is time-consuming to send them across the network to the printer.

The DECprint Supervisor for OpenVMS software provides faster image printing capability because it:

- Enables an image-capable printer to print DDIF bitonal images, eliminating the need for conversion to PostScript Level 1 and processing by the PostScript interpreter.
- Makes use of decompression hardware built into the printer.
- Allows compressed data to be transmitted across the network. The compressed data reaches the printer faster.

# 6.2 Examples of Printing Image Files

The following print command sends the files directly to the printer for printing:

    $ PRINT/QUEUE=queue/NOTIFY file.DDIF

The following print command translates the file to PostScript for printing:

    $ PRINT/QUEUE=queue/NOTIFY/PARAMETERS=NUMBER_UP=1 file.DDIF

# Chapter 7
Printing PCL Files

# 7.1 How PCL Files Are Printed

PCL files are printed in either of two ways:

1. PCL Translator
   DCPS includes a translator for files containing PCL4 data, as supported by the Hewlett-Packard LaserJet IID printer. DCPS does not translate the PCL5, PCL6, or HPGL printing languages. If the DECprint Supervisor software does not automatically detect your PCL files, you can explicitly specify the PCL data type using the DATA_TYPE parameter. For example:

       $ PRINT /PARAMETERS=DATA_TYPE=PCL MYFILE.PRN

2. Native PCL Mode
   Some PostScript printers have a PCL mode that can be used by the DECprint Supervisor for OpenVMS software. Your job is automatically printed in PCL mode if the printer supports PCL and you do not specify parameters that require translation of your file to PostScript. This is referred to as "native PCL" mode.
   If your printer provides native PCL5 support, you can send HPGL files to your printer if they are surrounded by the appropriate PCL5 escape sequence.

Figure 7-1 shows how DECprint Supervisor for OpenVMS software processes PCL files.

Figure 7-1 How DCPS Processes PCL Files

# 7.2 Processing Files in Native PCL Mode

To take advantage of native PCL mode without jeopardizing any of its own functions, the DECprint Supervisor for OpenVMS software does the following:

1. Prints the initial information about the print job (including the job and file flag pages) in PostScript mode.
2. Sends a control sequence to the printer that changes the printer to PCL mode.
3. Sends the PCL file directly to the printer and prints it.
4. Switches the printer back to PostScript mode and prints the trailer page, if any.

You can include both PostScript and PCL setup modules with your print job, but the effects may vary from what you would get with a translated print job. Most of the settings in a PostScript setup module do not affect PCL printing. The settings in a PCL setup module affect the printed output as if they were included in the print job file.

Setup modules can be invoked explicitly by using /SETUP, or implicitly by using /FORM or queue defaults.

Most printers supported by DCPS have a native PCL interpreter. Refer to the DECprint Supervisor for OpenVMS Software Product Description (SPD) for a complete list of the printers that are supported in native PCL mode.

## 7.2.1 PRINT Parameters that Prevent Native PCL Usage

If you are printing a PCL file on a printer supported in native PCL mode, your file is sent directly to the printer unless the print job requires special PostScript processing. You cannot print PCL files directly to the printer in native PCL mode if your print job includes one or more of the following PRINT parameters:

- /PARAMETERS=LAYUP_DEFINITION
- /PARAMETERS=NUMBER_UP
- /PARAMETERS=SHEET_COUNT (for values greater than 1)
- /PARAMETERS=PAGE_LIMIT (if starting page greater than 1, or ending page specified)

# 7.3 Processing Files with the PCL Translator

You can emulate the front panel settings of the Hewlett-Packard LaserJet printer, using the following methods:

- PRINT command parameters--- See Section 7.3.1
- Escape sequences--- See Section 7.3.2

## 7.3.1 Using Print Parameters to Modify PCL Print Jobs

Table 7-1 shows the PRINT parameters you can use to modify PCL print jobs.

Table 7-1 PRINT Parameters that Emulate PCL Front Panel Settings
LaserJet IID Front Panel Selection | PRINT Parameter | Reference
--- | --- | ---
#copies | /PARAMETERS=SHEET_COUNT | Section 1.5
duplex | /PARAMETERS=SIDES 1 | Section 1.3
orientation | /PARAMETERS=PAGE_ORIENTATION 1 | Section 1.4
tray selection | /PARAMETERS=INPUT_TRAY | Section 3.1
paper size | /PARAMETERS=SHEET_SIZE | Section 10.4
manual feed | /PARAMETERS=INPUT_TRAY | Section 3.1

1Instructions in the data file can override this PRINT parameter.

Previous | Next | Contents | Index