Command Reference Guide for Software Developers
Table Of Contents
- Technical Reference Guide
- TABLE OF CONTENTS
- GLOSSARY
- CHAPTER 1 INTRODUCTION
- CHAPTER 2 PCL PRINTER CONTROL LANGUAGE
- 1. COMMAND LIST
- 2. INTRODUCTION
- 3. CONTROLLING THE PRINTER
- 4. JOB CONTROL
- 4.1 . Commands
- 4.1.1. Page size
- 4.1.2. Media type selection
- 4.1.3. Output tray
- 4.1.4. Paper source
- 4.1.5. Left long-edge offset registration
- 4.1.6. Top offset registration
- 4.1.7. Simplex/duplex printing
- 4.1.8. Paper side selection
- 4.1.9. Job separation command
- 4.1.10. Reset
- 4.1.11. Reset to factory default settings
- 4.1.12. Reset to user settings
- 4.1.13. Printer self test
- 4.1.14. Exit current emulation mode
- 4.1.15. Change emulation mode
- 4.2. The Page
- 4.2.1. Physical page
- 4.2.2. Printable area
- 4.2.3. Logical page
- 4.2.4. Text area
- 4.2.5. HP-GL/2 graphics window
- 4.2.6. Portrait page dimensions
- 4.2.7. Landscape page dimensions
- 4.2.8. Coordinates
- 4.2.9. Units
- 4.2.10. Unit of measure
- 4.2.11. Setting the left and right margins
- 4.2.12. Resetting the horizontal margins
- 4.2.13. Setting the top margin
- 4.2.14. Setting the vertical motion index (VMI)
- 4.2.15. Setting the horizontal motion index (HMI)
- 4.2.16. Setting line spacing
- 4.2.17. Text length
- 4.2.18. Page length
- 4.2.19. Perforation skip
- 4.2.20. Positioning the cursor
- 4.2.21. Vertical positioning
- 4.2.22. Horizontal position
- 4.2.23. Positioning the cursor using control codes
- 4.2.24. Using the cursor position stack
- 4.2.25. Half line feed
- 4.2.26. Logical page orientation
- 4.2.27. Text direction
- 4.1 . Commands
- 5. USING FONTS
- 5.1. Introduction
- 5.1.1. Font types
- 5.1.2. Bitmap fonts
- 5.1.3. Scalable fonts
- 5.1.4. Bound fonts
- 5.1.5. Unbound fonts
- 5.1.6. Font sources
- 5.1.7. Internal fonts
- 5.1.8. Card/cartridge fonts
- 5.1.9. Downloadable fonts
- 5.1.10. Primary and secondary fonts
- 5.1.11. Specifying the primary font
- 5.1.12. Specifying the secondary font
- 5.1.13. Selecting the default fonts
- 5.1.14. Switching between the primary and secondary fonts
- 5.1.15. Criteria for font selection
- 5.1.16. Symbol set
- 5.1.17. Symbol collections
- 5.1.18. Type of character spacing
- 5.1.19. Pitch
- 5.1.20. Height
- 5.1.21. Style
- 5.1.22. Stroke weight
- 5.1.23. Typeface
- 5.2. Font Selection Commands
- 5.2.1. User-defined symbol sets
- 5.2.2. Symbol set ID code command
- 5.2.3. Define symbol set
- 5.2.4. Symbol set control command
- 5.2.5. Selecting the symbol set
- 5.2.6. Selecting the type of character spacing
- 5.2.7. Selecting the pitch
- 5.2.8. Selecting the height
- 5.2.9. Scaling the scalable fonts vertically or horizontally
- 5.2.10. Selecting the style
- 5.2.11. Selecting the stroke weight
- 5.2.12. Selecting the typeface
- 5.2.13. Font orientation
- 5.2.14. Transparent print data
- 5.2.15. Esc&d#D (27)(38)(100)#(68) <1Bh><26h><64h>#<44h>
- 5.3. Downloadable font manipulation
- 5.4. Creating Downloadable Fonts
- 5.1. Introduction
- 6. USING GRAPHICS
- 6.1. Source, Pattern and Destination
- 6.2. Plotting Rectangles
- 6.3. Raster Graphics
- 6.3.1. Positioning the cursor
- 6.3.2. Set raster resolution
- 6.3.3. Set high resolution control
- 6.3.4. Set raster image orientation
- 6.3.5. Set raster area height
- 6.3.6. Set raster area width
- 6.3.7. Set raster y-offset
- 6.3.8. Set compression mode
- 6.3.9. Start raster transfer
- 6.3.10. Send raster data
- 6.3.11. Compress transfer graphics
- 6.3.12. End raster transfer
- 6.3.13. Horizontal 1200-dpi image format mode (Raster Graphic Mode 1027)
- 6.4. Vector Graphics
- 6.5. The Picture Frame
- 7. MACROS
- 7.1. The Purpose of a Macro
- 7.2. Defining a Macro
- 7.3. Running a Macro
- 7.4. Handling Macros
- 7.4.1. Delete all macros
- 7.4.2. Delete all temporary macros
- 7.4.3. Delete macro
- 7.4.4. Make macro temporary
- 7.4.5. Make macro permanent
- 7.4.6. Delete all macros from the storage device
- 7.4.7. Delete macro from the storage device
- 7.4.8. Save macro into the storage device
- 7.4.9. Execute data
- 7.4.10. AppleTalk configuration
- 7.4.11. MIO video I/O port control
- 8. STATUS READBACK
- 8.1. Introduction
- 8.2. Memory Status request
- 8.3. Entity Status
- 8.4. Status Response
- 8.5. Status Response Syntax
- 8.5.1. Set status readback location type
- 8.5.2. Set status readback location unit
- 8.5.3. Inquire status readback entity
- 8.5.4. Entity status response
- 8.5.5. Font response
- 8.5.6. Bitmap fonts
- 8.5.7. Bound scalable fonts
- 8.5.8. Unbound scalable fonts
- 8.5.9. Download fonts
- 8.5.10. Location type 1 (currently selected) font
- 8.5.11. Font extended response
- 8.5.12. Macro response
- 8.5.13. Use-defined pattern response
- 8.5.14. Symbol set response
- 8.5.15. Entity error codes
- 8.5.16. Free space command
- 8.5.17. Font cache
- 8.5.18. Memory status response
- 8.5.19. Memory error response
- 8.5.20. Flush all pages command
- 8.5.21. Echo command
- 9. INDEX
- CHAPTER 3 PCL5C
- CHAPTER 4 HP-GL/2 GRAPHICS LANGUAGE
- CHAPTER 5 PJL PRINTER JOB LANGUAGE
- 1. INTRODUCTION
- 2. HOW TO USE PJL
- 3. COMMAND GROUP
- 4. KERNEL COMMANDS
- 5. JOB SEPARATION COMMANDS
- 6. ENVIRONMENT COMMANDS
- 7. STATUS READBACK COMMANDS
- 8. DEVICE ATTENDANCE COMMANDS
- 9. INDEX
- CHAPTER 6 EPSON FX-850
- CHAPTER 7 IBM PROPRINTER XL
- CHAPTER 8 BAR CODE CONTROL
- 1. INTRODUCTION
- 2. PRINT BAR CODES OR EXPANDED CHARACTERS
- 3. DEFINITION OF PARAMETERS
- 3.1. Bar Code Mode
- 3.2. Bar Code Style, Expanded Character Shading, Line Block Drawing & Box Drawing Shading
- 3.3. Bar Code Scaling (Width only)
- 3.4. Bar Code Human Readable Line On or Off
- 3.5. Quiet Zone
- 3.6. Bar Code, Expanded Character Unit, Line Block Drawing & Box Drawing Units
- 3.7. Bar Code, Expanded Character, Line, Block Drawing & Box Drawing Offset in the X-axis
- 3.8. Bar Code & Expanded Character Offset in the Y-axis
- 3.9. Bar Code, Expanded Character, Line, Block Drawing & Box Drawing Height
- 3.10. Expanded Character, Line Block Drawing & Box Drawing Width
- 3.11. Expanded Character Rotation
- 3.12. Bar Code Data Start
- 3.13. Box Drawing
- 3.14. Line Block Drawing
- 3.15. Expanded Character Data Start
- 3.16. Table of Code(EAN) 128 set C
- 4. EXAMPLE PROGRAM LISTINGS
- CHAPTER 9 HP-GL GRAPHICS LANGUAGE
- CHAPTER 10 CARBON COPY FUNCTION
- APPENDIX A COMPARISON LIST
- APPENDIX B FLASH/PCMCIA CARD COMMANDS
- APPENDIX C HBP MODE COMMANDS
- APPENDIX D REFERENCE LIST OF MX-2000/4000/5000/7000 SERIES UNIQUE COMMANDS
- APPENDIX E REFERENCE LIST OF FS-5050 UNIQUE COMMANDS
- APPENDIX F REFERENCE LIST OF SF- 4000 SERIES UNIQUE COMMANDS
CHAPTER 1 INTRODUCTION - 4
2. AREAS OF USE
There are several different applications for which you may want to use your HL-Series printer. Four general
areas are outlined in the following sections.
2.1 Using Word Processing Packages and Spreadsheets
You may simply wish to use the printer with your software application packages, such as word-processors or
spreadsheets. Many software packages automatically send commands to the printer requesting particular type
styles, character sizes and specifying page set-up information and other relevant data. In this case you will
not need to use this manual, as your software package will perform the task of controlling the printer for you.
Other packages allow you to embed software commands within your word-processed or spreadsheet
documents. This manual describes the commands you need, and you can simply include them in the form
that your package requires. In either case, read the documentation that came with your software to find out
its own specific requirements for driving a printer.
2.2 Graphics
HP-GL/2 or HP-GL mode offers many powerful graphic features that enable you to draw and print detailed
images quickly and easily. Many commercial graphic packages, notably computer-aided design applications
programs, produce HP-GL/2 or HP-GL output. LaserJet mode also has several graphics features. You can
either write your own programs to generate images or use existing graphics software.
2.3 Programming
If you are writing software, for example in BASIC or C, to drive the printer, the description and formal
specification of each command will enable you to transcribe them straight into your programs. Below is a
simple example of a program to draw and print a three inch black square. The program is given in both C and
BASIC.
C language program
#include <stdio.h>
main()
{
FILE *prn; /* initialization section */
prn = fopen("PRN","wb");
fprintf(prn,"\33E"); /* Esc E - Reset the printer */
fprintf(prn,"\33%0B"); /* Esc%0B - Enter HP-GL/2 */
fprintf(prn,"IN"); /* Initialize */
fprintf(prn,"SP1PA1024,1024"); /* Select pen 1 & move to 0,0 */
fprintf(prn,"PDFT1RA4096,4096"); /* Draw 3" solid square */
fprintf(prn,"\33%0A"); /* Quit HP-GL/2 & restore original cursor
position */
fprintf(prn,"\33E /* Reset and eject page */
}
BASIC language program
10 LPRINT CHR$(27);"E"; :REM Esc E - Reset the printer
20 LPRINT CHR$(27);"%0B"; :REM Esc%0B - Enter HP-GL/2
30 LPRINT "IN"; :REM Initialize
40 LPRINT "SP1PA1024,1024"; :REM Select pen 1 & move to 0,0
50 LPRINT "PDFT1RA4096,4096"; :REM Draw 3" solid square
60 LPRINT CHR$(27);"%0A"; :REM Quit HP-GL/2 & restore original cursor
position
70 LPRINT CHR$(27);"E"; :REM Reset and eject page