Have you ever wanted to send a print file such as Postscript, PCL or RTL to a Windows connected printer? Well you can't just drag and drop the file's icon onto the printer.

In our line of business we often have the need to test "new" printers or to debug network printing problems and it is very convienent to have a set of test files that we can send one at a time to a specified printer and then view the results.

Often since we don't have the printer in-house, we do this by remote control at a customer's site. So our Windows expert, Eric Chan, wrote a simple utility called rawprint that makes this much easier. Rawprint works on Windows 3.1, 3.11, 95 and NT.



Select File - selects the file you want to send to the printer. You may type in a complete path name here or use the button to open a dialog box.

Select Printer - click to select from the available installed printers.


To see the list of available printers just click on the roll down menu button at right.


Print - sends the specified file to the desired printer.

Header and Trailer Strings

In addition to sending the file to the printer, RAWPRINT also enables the user to specify an string sent prior to the file (HEADER) and a string sent after the file (TRAILER).

This is very useful when you need to determine what the correct setup string is to switch a plotter from Postscript to PCL or to select tray3 instead of tray1.

Sending ASCII headers and trailers

To send ASCII header or trailers just type in exactly what you want in the string. For example:

Header: language=Postscript
Trailer: showpage

Sending Escape Sequences and Non ASCII Characters

This is much more interesting since most printer controls require that you send an "escape" sequence...i.e. a sequence of charcters preceded by the Escape character. The printer knows that the Escape character is a non printing one so switches into command mode and interprets the rest of the sequence as instructions, not data to print.

Escape Sequence "\EC" Since you can't use the so called Esc key to type an escape sequence, the RAWPRINT program interprets the ASCII string \EC to be the escape character. Every HP printer uses the Esc character to begin a command. Below you will see a table of the more popular special characters and their RAWPRINT equivalent.

Command            ASCII Value      Header/Trailer String 
                   (Decimal)        in RawPrint Dialog Box
Escape               027             \027
Carriage Return      013             \013
Form Feed            012             \012
Line Feed            010             \010
Ctrl D               004             \004


Sending the ^D at the end of a Postscript File

Imagine you are using an application that doesn't seem to properly print to your networked Postscript printer. You write the file to disk and examine it - to all appearances it looks OK. Why doesn't it print?

Some printers wait for a ^D character to determine that a file is actually ended and ready to print. You can test your hypothesis by using RAWPRINT as follows:

Printer   QMS Colorscript 100 on asmsc0:copop1(LPT3:) 
Trailer   \004

This will cause a CtrlD to be sent immediately after the file and should indicate to the QMS printer that the file is ended.

Selecting a Printer Tray on an HP 4MV Networked Printer

Networked printers often support multiple trays. You may wish to print to Tray3 while the default tray for the printer is Tray2. Even worse, if your application does not support tray control you may end up printing to whatever tray is currently the default based on commands sent by someone else! To force printing to tray 3 try sending the header Esc&l5h and at the end of the file send the reset command EscE.

File     colors.pcl
Printer  HP LaserJet 4MV on asmsc0:copop1 (LPT3:)
Header   \EC&l5h
Trailer  \ECE

Sending HP Job Control Language to a Printer/Plotter

Many of today's intelligent printers support multiple languages such as HPGL/2, Postscript and PCL. Normally they should recognize from the first few bytes of the file the correct language but this doesn't always work. You can "force" the language on HP devices by sending the preample: @PJL ENTER LANGUAGE = POSTCRIPT

Printer  HP LaserJet 4MV on asmsc0:copop1 (LPT3:)
Trailer  \004

RAWPRINT Settings Saved in plot.cfg

Often when debugging an "unknown" printer one prepares a series of test files and sends each to the printer to see what the results will be.

Rawprint remembers all settings by storing them in a file called plot.cfg (in the working directory). So if you are sending a series of files you don't need to keep reselecting the printer or the header and trailer strings.

If you're testing header and trailer strings you don't need to keep respecifying the file to send.

Downloading RAWPRINT

You can download the rawprint utility. Just unzip it into the directory of your choice and use the Program Manager to create a new icon for it.

ftp.gif [ 85K zipped no password]

Test Files

These are printer files we use to test various machines.

ftp.gif colors.rtl [A size, landscape, RTL file for HP Inkjets and Compatibles]

ftp.gif colors.pcl [A size, landscape, PCL4 for HP laserjets and compatibles

ftp.gif colors.ps2 [A size, landscape, Postscript level2 bitampped file]

ftp.gif colors.ccr [A size, landscape, Calcomp CCRF uncompressed bitmap.