In “Connecting Printers to RPM Print Queues Part 1” we saw how to process plain text documents, prepare them for printing, and then print to a local printer.
Now we are going to see how to print documents that are already formatted for your printer.
Here I have printed a PostScript document to a queue named “hpraw”. I have an HP printer in my office and one in the hall; between the two, they handle nearly all of my printing.
I picked the word “raw” to describe how it’s processed. Basically, it isn’t, in this case. “Raw printing” means printing directly to the device without going through the normal Windows graphics interface which all other applications use to print. It’s also called “pass-through” or “pass-thru”. A synonym for “raw” could be “already formatted”, which is nicer to say than not cooked. This is from a man who watches baking shows with his wife.
How to print already formatted documents
Again, the question is how to connect this “raw” print queue to a printer? We have the same three steps as the text print process:
- Figure out what your data is
- Do whatever conversions you need
- Pick the action that will give you the final result you want
Step 1: figure out your print data
Let’s right-click on the job “AF_UNIX_7.ps”, then select View Contents / Notepad.
In the Notepad application, we see text but it’s not easily recognizable:
This, my friends, is PostScript. It’s a code that describes a page for PostScript compatible printers. You may have noticed from the job listing above that the file is about 80K bytes.
Step 2: data conversions
RPM does not have any tools built in to do anything with PostScript, so there are no transforms we can use here. However, we know it’s PostScript and that is important. We’ve talked with plenty of people over the years who did not know they had PostScript, so if this is your situation, you are already ahead.
It is possible, using tools you can get from the Internet, to convert PostScript to PDF format or to the PCL print language. The latter would be useful if your printer does not understand PostScript but does understand PCL. More printers understand PCL than PostScript so that is worth mentioning.
By the way, if this file were PCL, it would look different but all the steps you use here would be the same since we are not converting the data.
Step 3: pick your output
We are going to select the “Raw Printer” action in the Queue Setup form.
Double click the print queue “hpraw” on the left side of the user interface:
Click the droplist “Select Action Type to Add …”
Now click the “Add Action” button to get the Raw Printer form:
This printer, HP LaserJet 4200/4300 PCL6 Class Driver, is my default Windows printer. However, we don’t want to use it with the raw print action because it uses one of the new Windows class drivers.
Don't use class drivers for raw print
At this writing, class drivers do not work with Windows raw printing.
You’ll notice that printers with class drivers are prominently marked because the name includes “class driver”.
Earlier I used a Powershell script to install a printer named “HP Laserjet 4200 (auto)” that uses the “Generic / Text Driver”. I don’t know why but this driver tends to work better than many vendor print drivers for raw printing, even if they are not class drivers.
Click OK and your raw printer setup should be complete:
Now that we have completed setup on the action we want to take for the print, we have one more step. Notice the Queue Status in the lower left:
Note that I’ve turned the “Suspended” setting off, and once I do, the job prints … assuming everything is set up correctly.