Technical Note - Printing from ECS systems

Summary

This Tech Note lists the printers that ECS operates and how to using the lpr command.

Details

Our printers

Printer Name Location 2-up queue HELP Colour printing Accessible by undergraduates
am-level2-copier AM 224 Yes Yes No
am-level4-copier AM 456 Yes Yes No
co145 Cotton 145 Yes No Yes, but only during lab access times
co219 Cotton 219 Yes No Yes
scribble Cotton 232 Yes No Yes
co238 Cotton 238 Yes No Yes
co239 Cotton 239 Yes No Yes
co242 Cotton 242 Yes No Yes
co243 Cotton 243 Yes No Yes
co246 Cotton 246 Yes No Yes
co249 Cotton 249 Yes No Yes
co256-copier Cotton 256 No, select 2-up in output options Yes No
level3ps Outside Cotton 333 Yes No Yes
bw-copier Cotton 359 (School Office Utility Room) No, select 2-up in output options No No
colour-copier Cotton 359 (School Office Utility Room) No, select 2-up in output options Yes No
level4ps Cotton 437 Yes No No
level5-copier Cotton 540 No, select 2-up in output options Yes No

HELP The 2-up queue column signifies whether the printer has a queue that will automatically convert to a 2-up printing mode. Using our 2-up queues is preferable as it saves paper and toner. To access 2-up printer queues, simply append -2up to the printer name. For example, to print 2-up to co237 , you use the co237-2up print queue.

For various reasons, not all of our printers have "-2up" queues, so you may need to explicitly select "N-up" printing in some situations. See the description of the "number-up" option below for how to do this when using the lpr command. If using the graphical interface to our CUPS print spooling system provided by most KDE applications, 2-up or 4-up printing can be selected by choosing the appropriate option in the panel labeled "Pages per sheet" (obtained by clicking on the "Properties" button). Other graphical interfaces to the CUPS spooler may have a similar facility.

If you are printing from the UNIX command line via the lpr command you can select any of these printers using the -P switch or by setting the PRINTER environment variable. If you are using a GUI, the printer can generally be selected via a drop-down selection box. However, in most cases the default printer will be the one closest to the lab or office you are in, so you should not need to change this.

ALERT! A notable exception is when printing from one of our Windows terminal servers ("ward" or "somes"). In these cases the default printer will not necessarily be the closest to where you are sitting and so you should ensure you select an appropriate printer from the list given. Printers are all named based on their location, so it should not be too difficult to do this.

Printing using lpr

The lpr manual page does not document how to access various special features available on our printers. This section attempts to fill that gap.

Printing options

Some optional capabilities of our printing system are supported directly by the print spooler and so are generally available on all printers. Others are handled by lower level printer drivers and thus tend to be printer specific. All can be accessed with the -o option of the lpr command.

A full list of the options supported directly by the spooler is available from the CUPS web site.

A list of the printer specific options for a particular printer can be obtained using the lpoptions shell command. The format of this command is:

lpoptions -p printer-name -l

(Note the lowercase -p option in this command and that the -p printer-name must precede the -l option). An extract of the output produced by the above command for a typical printer on the ECS network is as follows:

...
PageSize/Media Size: Letter Executive Legal *A4 A5 Custom
Duplex/2-Sided Printing: None *DuplexNoTumble DuplexTumble
MediaType/Media Type: None *Plain Preprinted Letterhead Transparency
InputSlot/Media Source: Tray_1 Tray_2 Tray3_500 Tray3_1500 EnvelopeFeeder
...

Each line contains a short and a long form of the option name separated by "/". These are followed by a ":" and then a list of space separated values that this option can take. If one of the option values is preceeded by a "*" that value is the default one.

Any of these printer specific options can be used as a "-o" option to the lpr command by following the short form of the option name with "=" and then one of the option values. There should be no spaces surrounding the "=". So from the above example a valid lpr command would be:

lpr -o MediaType=Letterhead filename

Complete documentation on all of the generic or printer specific options will not be given in this technical note. Rather the options required to perform a few common tasks will be described.

Specifying whether to print on one or both sides of the paper

-o sides=one-sided
-o sides=two-sided-short-edge
-o sides=two-sided-long-edge

Specifies whether or not a document should be printed on both sides of a sheet of paper and if so how the two sides will be oriented with respect to each other for binding/stapling purposes. The "short-edge" option would typically be used for documents that are printed in landscape format since they would generally be bound along the short edge of the page. Note that although sides= is a generic option supported directly by the spooler it is only useful when printing to a printer that supports printing on both sides of the paper. Note also that the same effect may be available using a printer specific option. So, given the printer specific options above, the following two commands are identical.
lpr -o sides=one-sided filename 
lpr -o Duplex=None filename

Likewise these.

lpr -o sides=two-sided-short-edge filename 
lpr -o Duplex=DuplexTumble filename

Printing multiple pages of a document on each side of paper

-o number-up=N
Specifies that N pages of the document should be printed on each side of a sheet of paper. This is often referred to as "N-up" printing where N is most commonly 2, but on ECS systems it can be 1, 4, 6, 9 or 16. If you are specifying a number-up=X option that requires the page be orientated in landscape format (ie: 2-up) and you are also printing on both sides of the paper you can optionally also specify short-edge binding, which some people find produces an easier to read document. This command is:

lpr -o sides=two-sided-short-edge -o number-up=2 filename

Selecting the manual feed tray

Most printers have a printer specific option to select which tray paper should be taken from. Often this will be called "InputSlot", but the lpoptions command described above will tell you if this is the case for the printer you are using. Also, the available values that you can specify will vary from printer to printer. For our HP4515 and 4350 printers the following option will do what you want:
-o InputSlot=Tray1

For our multifunction photocopier/printers you can use:
-o ManualFeed=True

Printer Instances

The lpr command provides a shorthand mechanism called "printer instances" which can be used to predefine commonly used sets of options. So for example, if you typed the shell command

lpoptions -p press/2up -o number-up=2 -o sides=two-sided-short-edge

whenever you use lpr to print to the printer instance press/2up the number-up and sides options specified will automatically be used. This saves you from having to remember (and type) the long command line that would otherwise be required.

Paper Orientation

Some media types (eg, letterhead, transparencies) have to be oriented in the paper tray or manual feed slot a certain way for printing to work correctly.

For single-sided printing on our Hewlett-Packard laser printers, this is face-up with the top edge of the media furthest from you.

Unfortunately, a "feature" of the way the Hewlett-Packard duplexing unit works is that duplexed pages are printed with the first side on the lower face of the paper. Thus, for example to print double-sided on letterhead the paper should be inserted face down rather than faceup. This applies both when manually feeding the media or loading it into a paper tray. It also applies even if the print job only consists of a single side, since unless single sided printing is explicitly selected ("-o sides=one-sided") all jobs go through the printer's duplexing unit.

Viewing Printer Queue Status and Cancelling Jobs

Going to our CUPS server web page will allow you to see the contents of one or all of our printer queues. It will also allow you to remove your own jobs from a queue if you decide you didn't want to print a particular file after all.

If you prefer shell commands to GUI's the same functionality is also available via the UNIX lpq and lprm commands.