System Administration
Showing results for 
Search instead for 
Did you mean: 

Unix printing to Windows printer with PCL 6

William Tidwell
Occasional Advisor

Unix printing to Windows printer with PCL 6

For many years we've been setting up our printers on HP/UX as remote printers essentially printing to the Windows version of the lpr/lpd daemon. We cat small files filled with escape codes to the front of the reports to perform some manipulation, such as landscape compressed, portrait 10 cpi, duplex, etc. It's worked fairly well but now we are starting to see PCL 6 printers. This print driver offers some advantages on the Windows side, so they would like to keep it. So my question is, is there a way to tell the printer to switch to PCL5e using escape codes or something similar while keeping the PCL 6 or Universal Print Driver? I've tried esc%0AescE and that didn't seem to work. Thanks
Bill Hassell
Honored Contributor

Re: Unix printing to Windows printer with PCL 6

Nedw printers, especially cheap printers, are dropping support for the classic PCL design where escape sequences control fonts, landscape, spacing and so on. Rather than include the hardware necessary to properly format the text (called the PCL formatter), inexpensive printers require that most of the formatting work be done in the host. Essentially, the host must store font information, and graphics macros which will produce a stream of ones and zeros indicating either a black dot or no dot (white).

In Windows, this is done with the driver which takes simple text with a generic set of directives from the applications and produces output suitable for the target printer. In older printers, you could simply send ABC to the printer and that's what would be printed. But with newer printers, you'll just get an error condition on the printer.

PCL6 is very poorly documented in printer specifications. PCL6 can be backwards compatible for PCL5 but it is not clear at all from printer specs if that feature is present. And the reason for this mess is that HP markets printers strictly for the PC platform. Just try to find the text "HP-UX" for any HP printer in the last 10+ years. And even the PCs don't fare very well. Most new printers have no drivers at all for Win2k or earlier, and older printers have no drivers for Win7. This is especially true for all-in-one printers.

AS far as I know, there is no filter in Windows that can take old PCL codes and translate them to something the PC driver and printer can use.

Bill Hassell, sysadmin