Printer Command Language

The Printer Command Language (PCL; German printer command language ) is a command language for controlling printers. It was developed by Hewlett -Packard with the aim of being able to control all types of printers on a common standard language.

PCL is based on escape sequences and lies in its complexity thus between plain ASCII text (which allows only the simplest Telegraph commands such as line feed) and Postscript ( own, complex programming language for page description ).

While the needle matrix printer era still dominated the Epson command set ESC / P ( Epson Standard Code for Printers ). PCL has largely replaced this standard.


The development of PCL began in the early 1980s. Were used as basis, inter alia, the control commands of graphics-capable intelligent terminals of the type HP 2648 (1979) and subsequent models. Its instruction set is a subset of the PCL, which is so understood by PCL - compatible printers today.


In the further development has been taken to ensure that the new version of the previous PCL contains as a subset and they only extended - ie the versions build on each other. They are therefore referred to as Level (FCL for steps). The philosophy behind it was that simple example, your printer PCL level should understand one thing that kept production costs low. More complex devices, however, should be equipped according to their abilities at higher levels, but at the same time, the old commands not only understand, but to implement the same. Addition is defined in the PCL that unknown commands ( such as color selection on a black / white device) should be ignored.

PCL PCL 1 to 5

The PCL versions 1 to PCL 5e / c command- based languages ​​whose command sequences are in the order in which they arrive in the printer, processed and interpreted. Normally, the data stream is generated by a printer driver, but it is also possible to create PCL instructions for custom applications.

  • PCL 1 was introduced in 1984 with the HP 2225 ThinkJet and supports printing of text and graphics with a resolution up to 150 dpi.
  • PCL 1 was released with the HP QuietJet 2227.
  • PCL 2 added the processing of electronic data.
  • 3 PCL was introduced together with the first HP LaserJet 1984. This version supports bitmapped fonts and increases the maximum resolution to 300 dpi. PCL 3 is also still used today in most inkjet printers from HP.
  • PCL 3 ( monochrome, "mono" ) and PCL 3c (colored, " colo (u ) r") was later used for the HP DeskJet and HP Photosmart printers.
  • PCL 3GUI is used in the HP DesignJet printers. It uses a compressed raster format and is not compatible with other PCL -3 standards.
  • PCL 4 was released in 1985 with the HP LaserJet II and added to the standard macro programming, larger bitmapped fonts and graphics.
  • PCL 5 was released in 1990 with the HP LaserJet III. The standard was to set the font scaling " intellifont " ( Agfa develops ) and to the support of HP-GL/2- (vector ) graphics expanded.
  • PCL 5e (PCL 5 enhanced "enhanced" ) was published in October 1992 together with the HP LaserJet 4. It extends the standard for bi -directional communication between the printer and the PC and the support of Windows fonts. In addition, PCL5e supports duplex printing.
  • PCL 5c appeared in 1992 with the HP Color LaserJet family. It includes the functionality of the PCL 5e, but is extended to color palettes and commands.


PCL 6 was introduced in 1995 and consists of:

  • PCL 6 Enhanced: A completely new, compressed page description language that is syntactically no connection with the previous versions of PCL. Formerly known as PCL XL.
  • PCL 6 Standard: Equivalent to PCL 5c to ensure backwards compatibility with previous PCL versions.

The structure of PCL XL can best be thought of as binary XML document. As PCL 5c PCL XL forms from those GDI objects that are needed for printing. In PCL XL However drop off the constant context switching between PCL and HPGL as a language for text, graphics and raster objects will be used. In PCL XL an explicit grayscale color space for raster data and foreground colors was introduced, bringing clean achromatic gray can be combined with colored objects. With the exception of RGB XL is separated from all other, partly implemented only in individual printers color spaces of PCL5c. The maximum resolution of transmitted raster objects was increased to 1200 dpi. With a strong grid JFIF compression method was introduced in Protocol Class 2.2 also.

The PCL 5c component of PCL 6 is backward compatible with previous versions. Thus, it is possible to use a printer that works under PCL 6, to speak with a PCL 3 printer driver.

Jet Ready

Jet Ready is a simplified version of PCL XL, which is used in HP laser printers in the lowest price class. PCL XL was robbed except JFIF all objects. This created a new low-level printer language based on an existing syntax. The transferred JFIF images must have exactly that format, which is typically passed from the RIP to the print engine. This makes it possible to transfer the pre-processed image information in the computer without scanning process in the printer to the output hardware. The introduction of Jet Ready stripped down versions of familiar Office LaserJets on existing hardware and software for the home user could be made affordable. The bypass procedure for JFIF in laser printers currently still subject to patents held by HP.

Available color models

  • CIELab: If today no longer supported by HP in printers, PCL5c as addressable color space. This color space is usually used as a reference color space in color management and is in the Océ Production PCL still available according to the original PCL5c specification.
  • CMY: According to the specification of HP, these are only a DeviceCMY color space. This is best suited for colorful print because you can not tell without color management, what color is associated with a CMY triplet. Some manufacturers rely on the sRGB color management.
  • Gray: Is directly into PCL5c only dithered form or as a shaded pattern for the foreground color objects approachable. Using Monochrome Printing Mode Command, however, can be displayed in real grayscale raster graphics. To this end, the true grayscale image ( with only one 8-bit pixel component ie 256 gray levels) in Indexed mode sent by pixel to the printer. The printer was previously sent a suitable RGB palette, which he in turn converts into a grayscale palette because of the monochrome printing mode commands. According to this method works as the driver of the purely monochrome HP9000 PCL5c printer that can handle all PCL5c data in grayscale.
  • RGB: Sets the main color scheme of PCL 5c dar. In the early days of PCL 5c existed here a colorimetric ( parameterized ) and a Device RGB color space. Today, this concept has been changed in favor of real color management with ICC profiles to use the sRGB profile. (Some Production PCL dialects, such as Océ or Xerox, support the free choice of RGB ICC profiles, which is useful especially in view of the production- independent document creation. )
  • YCbCr: Was included in the original PCL5c specification yet, but has been built according to HP Laserjet Comparison Guide in only a single printer type and today has therefore no meaning for PCL5c. ( In PCL6 and systems which is allow a JPEG passthrough this color space implicitly by the JPEG format included)

PCL in high performance printing

Manufacturers such as Konica Minolta, Unisys, Xerox, Canon - Océ, Ricoh and Lexmark PCL to offer in their high performance and mid-range production printers. PCL is extremely efficient and is therefore particularly suitable for the control of machines that can do more than 1000 pages per minute. Such systems are, for example, transaction printing for banks, insurance companies and agencies worldwide.

PCL Sato

Sato, manufacturer of label printers, calls his command language also PCL. This has the PCL Hewlett -Packard, however, nothing in common.