Summary of the content on the page No. 1
To aid in HP PCL printer driver development
for HP DeskJet 600/700/800/900 & HP 2000
Series printers
Hewlett-Packard Vancouver Site
PCL Developer’s Guide
900 & HP 2000 Series
HP DeskJet 600, 700, 800,
Summary of the content on the page No. 2
Preface and Printing History 1.0 Preface and Printing History The information contained in this document is subject to change without notice. Hewlett-Packard makes no warranty of any kind with regard to this material, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Hewlett-Packard shall not be liable for errors contained herein or for incidental or consequen- tial damages in connection with the furnishing, performance, or use of this
Summary of the content on the page No. 3
About this Developer’s Guide 2.0 About this Developer’s Guide 1 2.1 Throughout this HP PCL Developer’s Guide you will see printer names referenced. Here is a list of actual names and the “Series” names used throughout this guide. 2.1.1 HP DeskJet 600 Series : 63 0 C * 64 0 C * an 65 6 C * HP DeskJet 600 - HP DeskJet 600, HP DeskJet 600C HP DeskJet 610C - HP DeskJet 610C, HP DeskJet 610CL, HP DeskJet 612C HP DeskJet 660C - HP DeskJet 660C, HP DeskJet 660Cse HP DeskJet 670C - HP DeskJet 670C, HP
Summary of the content on the page No. 4
About this Developer’s Guide 2.2 Special Notes 4 4 HP DeskJets were designed in series - the printer’s internal firmware will usually report the series name, rather than the specific product name. All printers in a series will behave as the base model. For example, the HP DeskJet 810C Series printers were sold under the name of the HP DeskJet 810C, HP DeskJet 812C, and the HP DeskJet 815C. All three printer models have the same internal firmware, reporting the printer as a HP DeskJet 810
Summary of the content on the page No. 5
Table of Contents 3.0 Table of Contents 1.0 Preface and Printing History 2 2.0 About this Developer’s Guide 3 2.1 e 3 HP DeskJet 600 Series 3 2.1.2 HP DeskJet 800 Series 3 2.1.3 HP DeskJet 900 Series 3 2.1.4 HP 2000C Series 3 2.2 s 4 2.2.1 Special Note - HP DeskJet 710C, 720C and 820C Series printers 4 3.0 Table of Contents 5 4.0 How This Developer’s Guide Works 10 4.0.1 Page Length 10 4.0.2 The Command Description Page 10 4.0.3 Command Name 10 4.0.4 Escape Sequence 11 4.0.5 Command Summary 11 4
Summary of the content on the page No. 6
Table of Contents 9.0.1 Follow Specifications 22 Leverage from Previous Programs 22 9.0.3 Priority of Feature Set Commands 22 Priority of Commands 23 Time Savers 23 10.0 HP PCL Commands 25 s 10.1.1 Escape 25 10.2 s 10.3 s 25 10.3.1 Transparent Data Mode 25 10.3.2 Display Functions Mode ON 26 10.3.3 Display Functions Mode OFF 26 10.4 s 10.4.1 Enable Underline 27 10.4.2 Disable Underline 28 10.4.3 Line Termination 28 10.4.4 End-of-Line Wrap 29 10.5 l 10.5.1 Reset 30 10.6 l 10.6.1 Gray Bal
Summary of the content on the page No. 7
Table of Contents Formfeed 50 10.9.6 Horizontal Tab 50 Move CAP Horizontal (Decipoints) 51 10.9.8 Move CAP Horizontal (Columns) 52 Move CAP Horizontal (HP PCL Units) 52 Vertical Positioning Commands 54 10.10.1 Move CAP Vertical (Rows) 54 10.10.2 Move CAP Vertical (Decipoints) 55 10.10.3 Move CAP Vertical (HP PCL Units) 56 Font Selection 10.11.1 Font Selection by Attribute 57 10.11.2 Font Symbol Set 57 10.11.3 Font Spacing 60 10.11.4 Font Pitch 60 10.11.5 Font Height 61 10.11.6 Font St
Summary of the content on the page No. 8
Table of Contents 11.2.4 Font Type (UBYTE) 93 11.2.5 Style MSB (UINT) 93 11.2.6 Baseline Position (UINT) 94 11.2.7 Cell Width (UINT) 94 11.2.8 Cell Height (UINT) 94 11.2.9 Orientation (UBYTE) 94 11.2.10 Spacing (BOOL) 95 11.2.11 Symbol Set (UINT) 95 11.2.12 Character Set (UINT16) 95 11.2.13 Pitch (UINT) 95 11.2.14 Height (UINT) 96 11.2.15 xHeight (UINT) 96 11.2.16 Width Type (SBYTE) 96 11.2.17 Style LSB (UBYTE) 96 11.2.18 Stroke Weight (SBYTE) 96 11.2.19 Typeface [LSB/MSB] (UBYTE)
Summary of the content on the page No. 9
Table of Contents 12.0.3 Descriptor Size (UBYTE) 108 12.0.4 Class (UBYTE) 108 12.0.5 Orientation (UBYTE) 111 12.0.6 Left Offset (SINT) 111 12.0.7 Top Offset (SINT) 111 12.0.8 Character Width (UINT) 111 12.0.9 Character Height (UINT) 111 12.0.10 Delta X (SINT) 112 12.0.11 Character Data 112 13.0 Banner Printing 113 13.0.1 Media Source 113 13.0.2 Margins 114 13.0.3 Command Sequence 114 13.0.4 Moving to a New Logical Page 114 13.0.5 Unloading Continuous Media 114 13.0.6 Power-On with
Summary of the content on the page No. 10
How This Developer’s Guide Works 4.0 How This Developer’s Guide Works Below is a sample command description chart from this guide. On the following pages you can find descriptor names for the various parts of the graph. A B 4.0.1 Page Length C TABLE 1. Page Length - Esc & ll # P E C G 0 F C C C C C C C C C C C C C C 0 0 0 0 0 0 0 5 0 0 0 0 0 0 5 0 0 0 1 6 7 8 9 9 1 3 5 7 8 9 9 7 2 6 6 6 6 6 6 6 8 8 8 8 8 8 8 9 # H J J J J J J J J J J J J J J J P Value D D D D D D D D D D D D D D D H E F F E
Summary of the content on the page No. 11
How This Developer’s Guide Works C 4.0.4 Escape Sequence This is the ASCII text version of the binary string, which causes the command to be invoked. The pound sign ("#") is used to represent where one of the command options, which are listed following the Command Summary, would be inserted. 4.0.5 Command Summary D A brief description of the purpose of a command is given. The Command Summary can be used to determine quickly if a particular command will perform the overall task you desire. E 4.0
Summary of the content on the page No. 12
How This Developer’s Guide Works 4.0.10 Detailed Command Description I This is where all aspects of the command are explained. All details of the command and its usage are covered, including the effect of the command on the printer and the printing envi- ronments, all the command's options and the effect of each of those options, and any extended impact the command may have which you should be aware of. 4.0.11 Important Point Where a blue exclamation point appears, special information that you
Summary of the content on the page No. 13
Introduction to HP PCL 5.0 Introduction to HP PCL 5.1 Hewlett-Packard created the HP PCL Printer Language to provide an economical and efficient way for application programs to control a range of printer features across a number of printing devices. HP has evolved both the definition and implementations of the HP PCL printer lan- guage to provide the optimal price and performance balance. HP PCL 3 continues to lead with enhancements to the HP PCL printer language in order to deliver powerful t
Summary of the content on the page No. 14
Introduction to HP PCL Once an HP PCL command sets a parameter, that parameter will remain set until that HP PCL command is repeated with a new value, the printer is reset to its user default environment, or another command makes a change. For example, if you send the printer a command to set line spacing to 3 lines/inch, each page will print 3 lines/inch until the printer receives a Line Spacing or VMI command or the printer is reset. 5.2 There are two forms of HP PCL escape sequences: two-cha
Summary of the content on the page No. 15
Introduction to HP PCL zi Parameter Character - Any character from the ASCII table within the range 96-126 deci- mal (" " " through "~"). This character specifies the parameter to which the previous value field applies. This character is used when combining escape sequences. Zn Termination Character - Any character from the ASCII table within the range 64-96 deci- mal ("@" through "~”). This character specifies the parameter to which the previous value field applies. This character terminat
Summary of the content on the page No. 16
Introduction to HP PCL Esc & ll 1 o 2 A Escape Termination Character Character Value Parameterized Field Character Parameter Group Character Character Value Field Notice that the "Esc" and the "& l" are dropped from the second printer command when they are combined. Also, the upper-case "O" that terminated the first command becomes a lower- case "o" parameter character when these commands are combined. Use these three rules to combine and shorten printer commands: 4 4 The
Summary of the content on the page No. 17
The Page 6.0 The Page 6.1 The HP PCL printer language distinguishes between the physical page and the logical page. The physical page is the actual sheet of paper. Its size is determined by the size of the media installed in the printer. The logical page defines the addressable area in which the cursor can be positioned. CAP (Current Active Position) refers to the "cursor" position on the logical page, similar to the cursor used on most computer terminals. The CAP location on the logical page
Summary of the content on the page No. 18
The Page 6.2 Referring to the previous figure, each page passed through the printer has a number of com- ponents. Text printing is normally limited to a specific printable area within the logical page known as the text area. The text area is entirely contained by the logical page, but may be smaller because of margins. There are unprintable regions along the outside edges and bot- tom of each sheet of print media. If printing is attempted outside the printable area at the bot- tom of the shee
Summary of the content on the page No. 19
The Page point (0,0) may change. The point (0,0) then, does not necessarily equate to the top of the paper. CAP Position (0,0) Top Margin X Top Margin Y (0,0) ABCD... X Y ABCD... Logical Page Logical Page Landscape Portrait 6.2.2 CAP Reference Point The first line starts at the (0,0) coordinate. CAP starts at (X,Y), where X= the left margin set- ting, and Y= the top margin setting. CAP is moved the distance of the Horizontal Motion Index to the right after printing a character and one dot row
Summary of the content on the page No. 20
The Print Environment 7.0 The Print Environment The group of all the printer's current feature settings is collectively referred to as the print envi- ronment. Default settings refer to the settings the printer uses unless printer commands are used to select other settings. Default settings are settings that are programmed into the printer at the factory. Each time a job is printed, some of the printer's feature settings may be changed from their default values to produce a desired output for t