In this Solaris release, modifications have been made to incorporate support for a wide array of printers. This functionality differs greatly from previous Solaris software releases. In previous releases, you could only print to printers that understood PostScriptTM natively, or you could only print plain ASCII text. The list of supported printer types, and information about whether these printer types accepted PostScript or ASCII text, was limited. Now, through the use of additional transformation software, raster image processor (RIP), and PostScript Printer Description (PPD) files, you can print to a wider range of printers.
Specific modifications have been made to incorporate the RIP feature and PPD files into the Solaris print subsystem. Two new interface scripts, standard_foomatic, and netstandard_foomatic, were created. These interface scripts provide the generic Solaris interface between the Solaris spooler and the back-end process of the Solaris print server.
The following are examples of the types of printers that can now be supported:
Lexmark Optra E312
Epson Stylus Photo 1280
Canon BJC-55
QMS magicolor 2+
Expanded printer support that is available in this Solaris release includes the following features:
The RIP enables you to print to printers that do not have resident PostScript processing capabilities. The Solaris printing software now provides the print server RIP and supporting technologies. The RIP occurs behind the scenes. However, to use the appropriate driver you need to configure each printer, by using either Solaris Print Manager or the lpadmin -n command.
The lpadmin and lpstat commands, as well as the Solaris Print Manager printer definition screens, have been modified to support the use of PPD files.
The following new software packages are associated with this feature:
SUNWa2psr
SUNWa2psu
SUNWespgs
SUNWffiltersr
SUNWffiltersu
SUNWfppd
SUNWgimpprint
SUNWhpijs
SUNWimagick
SUNWpsutils
The Solaris Print Manager printer definition screens have been modified to accommodate the new expanded printer support feature. In this release, you can no longer use Solaris Print Manager to assign the following printer defintions:
Printer Type
File Content Type
The following Solaris Print Manager screens have been modified:
New Attached Printer
Modify Printer Properties (for an attached printer)
New Network Printer
Modify Printer Properties (for a network printer)
For these screens, Printer Type and File Content Type have been replaced with the following options:
Printer Make
Printer Model
Printer Driver
The following table describes the printer definitions that are used by Solaris Print Manager and their availability, depending on which Solaris software release you are running.
Table 2–1 Printer Definitions Used by Solaris Print Manager
Printer Definition |
Available in releases prior to Solaris 9 9/04 |
Available in Solaris 9 9/04 release |
---|---|---|
Printer Name |
Yes |
Yes |
Printer Server |
Yes |
Yes |
Description |
Yes |
Yes |
Printer Type |
Yes |
No, not by default |
File Contents |
Yes |
No, not by default |
Printer Make |
No |
Yes |
Printer Model |
No |
Yes |
Printer Driver |
No |
Yes |
Fault Notification |
Yes |
Yes |
Options |
Yes |
Yes |
User Access List |
Yes |
Yes |
Default Printer |
Yes |
Yes |
Always Print Banner |
Yes |
Yes |
For a detailed description of the printer make, printer model, and printer driver printer definitions, see Setting Definitions for Printers.
Using PPD files is a per-queue configuration option, and is not a requirement. PPD files are not required for printers that already contain the RIP feature. You can continue to configure these printers the same way that you did for previous Solaris releases.
To maximize performance, Solaris Print Manager only recognizes those PPD files that are in the ppdcache file. If you prefer, you can revert to the previous printer definition screen options used by Solaris Print Manager. To do so, rename the ppdcache file that is located in the /usr/lib/lp/model/ppd/ directory. You must become superuser or assume an equivalent role before renaming this file.
Because the ppdcache file is required by Solaris Print Manager to display the new printer definition screen options, renaming the file reverts Solaris Print Manager to its previous behavior and restores the previous screens.
You can use the new version of Solaris Printer Manager to modify printers that were added by using the previous version of Solaris Print Manager. However, if you rename the ppdcache file, you cannot modify any printers that were added by using the version of Solaris Print Manager that is included in this Solaris release.
The lpadmin command has a new -n option. This option enables you to specify the PPD file that you want to use to create a new print queue or modify an existing print queue.
For example, if you wanted to add the queue, foobar, to a Lexmark printer, you would type the following command:
# lpadmin -p foobar -v device -I postscript -m standard_foomatic \ -n /usr/lib/lp/model/ppd/Lexmark/Lexmark-Optra_E312-Postscript.ppd.gz |
When using the -n option to the lpadmin command, specify the full path and file name to the PPD file, as shown in the previous example.
For more information, see the lpadmin(1M) man page.
Information about supported printers is located in the /usr/lib/lp/model/ppd directory. If the file that is required by your printer is not available, you can add your own PPD file. If you use the lpadmin -n command to create a new print queue, you can store your own PPD files anywhere that you choose. However, if you use Solaris Print Manager to create the print queue. the PPD file must have an entry in the ppdcache file.
A list of supported manufacturers is located in the /usr/lib/lp/model/ppd/manufacturer directory. The output of the ls command lists all the PPD files for a particular printer manufacturer. The names of the files reflect the printer model that is supported.
When you use the lpadmin command with the -n option to specify a PPD file, you are required to provide the full path to the PPD file. If you choose to use a PPD file that is located in a different directory, you must specify the full path to that file.
For example, to specify the xyz.pdd PPD file that is located in the user's home directory, you would type the following command:
# lpadmin -p foo -n /home/user/stuff/xyz.ppd -m \ standard_foomatic -I postscript -v /device |
If a PPD file was used to create a print queue, the PPD file that the specified queue is configured to use is now listed in the lpstat command output. If you do not specifiy a PPD file when creating a new print queue, the lpstat command continues to display the same output as it did previously.
Compare the differences in the lpstat command output that is shown in the following two examples.
In this example, a PPD file was not specified when the print queue was created. Note that the PPD entry is none.
# lpstat -l -p luna printer luna is idle. enabled since Wed Apr 14 13:45:24 2004. available. Form mounted: Content types: any Printer types: unknown Description: Connection: direct Interface: /usr/lib/lp/model/standard PPD: none On fault: write to root once After fault: continue Users allowed: (all) Forms allowed: (none) Banner required Character sets: (none) Default pitch: Default page size: Default port settings: |
In this example, the lpstat command output indicates that the print queue was configured by using the PPD file, Mitsubishi-CP50_Color_Printer-cp50.ppd.gz.
# lpstat -l -p paper printer paper is idle. enabled since Tue 30 Mar 2004 01:48:38 PM PST available. Form mounted: Content types: any Printer types: unknown Description: Connection: direct Interface: /usr/lib/lp/model/standard_foomatic PPD: /usr/lib/lp/model/ppd/Mitsubishi/Mitsubishi-CP50_Color_Printer-cp50.ppd.gz After fault: continue Users allowed: (all) Forms allowed: (none) Banner required Character sets: (none) Default pitch: Default page size: Default port settings# lpstat l p <queue> |
You can use Solaris Print Manager to modify queues that were created without the use of PPD files. In such cases, Solaris Print Manager uses the previous printer definition screen options, which do not contain the printer make, model, and driver.
In some instances, even though you have selected the correct printer make, model, and driver, the output of a print job might be garbled. This problem might occur when you print through a /dev/lp parallel port on a Solaris x86 system. To correct the problem, run the following command:
# lpadmin -p printer -H nopush |