Printer Command Language, more commonly referred to as PCL, is a
page description language (PDL) developed by
Hewlett-Packard as a
printer protocol and has become a ''
de facto
''De facto'' ( ; , "in fact") describes practices that exist in reality, whether or not they are officially recognized by laws or other formal norms. It is commonly used to refer to what happens in practice, in contrast with '' de jure'' ("by l ...
''
industry standard. Originally developed for early
inkjet printers in 1984, PCL has been released in varying levels for
thermal,
matrix
Matrix most commonly refers to:
* ''The Matrix'' (franchise), an American media franchise
** '' The Matrix'', a 1999 science-fiction action film
** "The Matrix", a fictional setting, a virtual reality environment, within ''The Matrix'' (franchi ...
, and
page printers.
HP-GL/2
HP-GL, short for Hewlett-Packard Graphics Language and often written as HPGL, is a printer control language created by Hewlett-Packard (HP). HP-GL was the primary printer control language used by HP plotters. It was introduced with the plotteHP-89 ...
and
PJL are supported by later versions of PCL.
PCL is occasionally and incorrectly said to be an abbreviation for ''Printer Control Language'' which actually is another term for
page description language.
PCL levels 1 through 5 overview
PCL levels 1 through 5e/5c are command-based languages using control sequences that are processed and interpreted in the order they are received. At a consumer level, PCL data streams are generated by a print driver. PCL output can also be easily generated by custom applications.
*PCL 1 was introduced in 1984 on the HP ThinkJet 2225 and provides basic text and graphics printing with a maximum resolution of 150 dpi (dots per inch).
*PCL 1+ was released with the HP QuietJet 2227.
*PCL 2 added Electronic Data Processing/Transaction functionality.
*PCL 3 was introduced in 1984 with the original HP
LaserJet.
This added support for
bitmap fonts and increased the maximum resolution to 300 dpi. Other products with PCL 3 support were the HP
DeskJet
Deskjet is a brand name for inkjet printers manufactured by Hewlett-Packard. These printers range from small domestic to large industrial models, although the largest models in the range have generally been dubbed DesignJet. The Macintosh-compatib ...
ink jet printer, HP 2932 series matrix printers and HP RuggedWriter 2235 matrix printers. PCL 3 is still in use on several
impact printers which replaced the obsolete HP models.
*PCL 3+ (mono) and PCL 3c+ (color) are used on later HP DeskJet and HP PhotoSmart products.
*PCL 3GUI is used in the HP DesignJet and some DeskJet series printers. It uses a compressed
raster format that is not compatible with standard PCL 3.
*PCL 4 was introduced on the HP LaserJet Plus
in 1985, adding
macro
Macro (or MACRO) may refer to:
Science and technology
* Macroscopic, subjects visible to the eye
* Macro photography, a type of close-up photography
* Image macro, a picture with text superimposed
* Monopole, Astrophysics and Cosmic Ray Observat ...
s, larger bitmapped fonts and graphics. PCL 4 is still popular for many applications.
*PCL 5 was released on the HP LaserJet III
in March 1990, adding
Intellifont font scaling (developed by
Compugraphic, now part of
Agfa), outline fonts and HP-GL/2 (vector) graphics.
*PCL 5e (PCL 5 enhanced) was released on the HP LaserJet 4
in October 1992 and added bi-directional communication between the printer and the PC and
Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
fonts.
*PCL 5c introduced color support on the HP PaintJet 300XL and HP Color LaserJet
in 1992.
PCL 6 overview
HP introduced PCL 6 around 1995 with the HP LaserJet 4000 series printers.
It consists of:
*PCL 6 "Enhanced": An object-oriented
PDL PDL is an initialism for:
Politics
*Democratic Liberal Party (Romania), Democratic Liberal Party (''Partidul Democrat Liberal''), a former political party in Romania
*Labour Democratic Party (''Partito Democratico del Lavoro''), a former politi ...
optimized for printing from
GUI interfaces such as
Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
and compressed to optimize throughput. Formerly known as PCL XL or PXL.
*PCL 6 Standard: Equivalent to PCL 5e or PCL 5c, intended to provide backward compatibility.
*Font synthesis: Provides scalable fonts, font management and storage of forms and fonts.
PCL 6 "Enhanced" architecture was altered to be more modular and to be more easily modified for future HP printers, that it prints complex graphics faster, that it reduces network traffic, and has higher quality. In early implementations, HP did not market PCL 6 well, thus causing some confusion in terminology. PCL XL was renamed to PCL 6 Enhanced, but many third-party products still use the older term.
Some products may claim to be PCL 6 compliant, but may not include the PCL 5 backward compatibility. PCL 6 Enhanced is primarily generated by the
printer drivers under
Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
and
CUPS. Due to its structure and compression methodology, custom applications rarely use it directly.
PCL 6 Enhanced is a stack-based, object-oriented protocol, similar to
PostScript
PostScript (PS) is a page description language in the electronic publishing and desktop publishing realm. It is a dynamically typed, concatenative programming language. It was created at Adobe Systems by John Warnock, Charles Geschke, ...
. However, it is restricted to binary encoding as opposed to PostScript, which can be sent either as binary code or as plain text. The plain-text commands and code examples shown in the PCL programming documentation are meant to be compiled with a utility like HP's JetASM before being sent to a printer.
PCL 6 Enhanced is designed to match the drawing model of
Windows GDI. In this way, the Windows printer driver simply passes through GDI commands with very little modification, leading to faster return-to-application times. Microsoft has extended this concept with its next-generation
XPS format, and printer implementations of XPS are being developed. This is not a new idea: it is comparable with
Display Postscript and Apple's Quartz, and is in contrast to "GDI Printers" where a compressed bitmap is sent to the printer.
PCL 6 class revisions
Class 1.1
*Draw tools: Support drawing lines, arcs/ellipses/chords, (rounded) rectangles, polygons,
Bézier paths, clipped paths, raster images, scanlines, raster operations.
*Color handling: Support 1/4/8-bit palettes, RGB/grey color space. Support custom halftone patterns (max 256 patterns).
*Compression: Supports
RLE.
*Units of measurement: Inch, millimeter, tenth of millimeter.
*Paper handling: Support custom or predefined sets of paper size, including common Letter, Legal, A4, etc. Can choose paper from manual feed, trays, cassettes. Paper can be duplexed horizontally or vertically. Paper can be oriented in portrait, landscape, or 180 degree rotation of the former two.
*Font: Supports bitmap or TrueType fonts, 8 or 16-bit code points. Choosing character set uses different symbol set code from PCL 5. When bitmap font is used, many scaling commands are unavailable. When TrueType font is used, variable length descriptors, continuation blocks are not supported. Outline font can be rotated, scaled, or sheared.
Class 2.0
*Compression: Added JPEG compression. A Proprietary variant of JPEG-like compression optimized for integer hardware called JetReady is used in a few HP Color Laserjet models (at the time of writing, 3 models, CLJ 3500, 3550, 3600). Those models require Class 3.0 inputs.
*Paper handling: Media can redirected to different output bins (up to 256). Added A6 and Japanese B6 preset media sizes. Added Third cassette preset, 248 external tray media sources.
*Font: Text can be written vertically.
Class 2.1
*Color handling: Added Color matching feature.
*Compression: Added Delta Row.
*Paper handling: Orientation, media size are optional when declaring a new page. Added B5, JIS 8K, JIS 16K, JIS Exec paper sizes.
Class 2.2
*Compression: Added
JFIF
The JPEG File Interchange Format (JFIF) is an image file format standard published as ITU-T Recommendation T.871 and ISO/IEC 10918-5. It defines supplementary specifications for the container format that contains the image data encoded with the J ...
.
Class 3.0
*Color handling: Allow using different halftone settings for vector or raster graphics, text. Supports adaptive halftoning.
*Protocol: Supports PCL passthrough, allowing PCL 5 features to be used by PCL 6 streams. However, some PCL 6 states are not preserved when using this feature.
*Font: Supports PCL fonts.
JetReady printers (CLJ 3500/3550/3600) use undocumented extensions but otherwise mandate Class 3.0 inputs.
PJL overview
PJL (
Printer Job Language) was introduced on the HP LaserJet IIIsi. PJL adds job level controls, such as printer language switching, job separation, environment commands, status feedback, device attendance and file system commands.
See also
*
CaPSL
*
Encapsulated PostScript
*
Foomatic
*
Hewlett-Packard Raster Transfer Language (HP RTL)
*
GNU Plotutils
*
PostScript Printer Description
*
Ghostscript
References
Further reading
*
*
*
*
*
*
External links
*
*
*
*
* {{cite web , url=http://www-01.ibm.com/support/docview.wss?uid=nas1ba0863cfa6463903862569c10078c903 , title=List of HP printers and PCL levels supported , publisher=
IBM , access-date=2012-03-02 , archive-url=https://web.archive.org/web/20130501032227/http://www-01.ibm.com/support/docview.wss?uid=nas1ba0863cfa6463903862569c10078c903 , archive-date=2013-05-01 , url-status=dead
HP software
Page description languages