PCL (Printer Control Language) is the scheme Hewlett Packard has created for controlling many of their printers. The various versions have included functionality for such things as:
And the usual "moving around the page and putting in text."
It may be "proprietary" to HP, but the format has been adopted by many other vendors particularly for use with laser printers.
HP PCL Technical Reference Manuals
Available from HP, part number 5961-0937
Call HP at 1-800-227-8164
>PPA for the Masses (Printing Performance Architecture) - HP's new DJ Print Protocol - for Linux
PPA (Printing Performance Architecture) is a protocol developed by Hewlett Packard for their series of Deskjet printers. In essence, the protocol moves the low-level processing of the data to the host computer rather than the printer. This allows for a low-cost printer with a small amount of memory and computing power and a flexible driver. However, this comes at the price of compatibility. HP's decision was to develop drivers only for Windows 95 for this printer.
Developing drivers only for Windows 95 wasn't a terrible decision. The decision that I believe was terrible was the decision that PPA should be a closed protocol. That is, HP will not release any information about the nature of the protocol. I am a member of HP's peripheral developer's program, and they would not even give me access to the PPA specifications!
So, being a protocol hacker at heart, I went forth and began to derive the elements of the PPA protocol by looking at the binary files produced by Windows 95 (when printing to a file). My work was aided quite a bit by the discovery of several articles in the Hewlett Packard Journal. Particularly, the articles in the June, 1997 issue were quite informative. (I've included local copies of those articals for those who are interested.)
After months of intermittent hacking, testing, coding, and numerous calls to HP (all of which were fruitless), I derived a working understanding of the protocol. This allowed me to write several programs, including a PBM to PPA converter. It is mainly intended for use directly with ghostscript, which produces PBM files in exactly the format the program accepts.
|-- Tim Norman|