sending PCL commands to printer

I have a DeskJet 660Cse (with RedHat 4.2 and GhostScript
5.1) and I have been trying to control the print quality -
or how dark it prints. When I use the printer in DOS or
Windows, I can choose between best, normal, or econofast
(each one using less ink respectively - and increases
speed). Under Linux, everything seems to print great except
I cannot change the print quality, it always seems to print
in "best" mode - I would like to print in "econofast". Even
in the printtool from RedHat, the color depth is set to it's
lowest setting 3 (1 does not work for some reason), it still
prints in "best".  In the spirit of Linux I have searched
everywhere to find an answer and think that I have found
one, but I have no idea how exactly to do it. On HP's
website I found a page (here it is so you can see what I have):

that lists all the PCL commands for the DeskJet 600 series -
in hex, decimal, and ASCII. These control everything - print
quality, font size, paper size, print cartridge services
(alignment and cleaning) and self tests. It would seem to
me, all that I would need to do is pass the correct PCL
command to the printer and I should be able to set the print
quality. So............. how do you send PCL commands to the
printer? There is nothing on the HP site and I only saw PCL
vaguely referred to once in one of the Print-HOWTOs and it
said nothing about what they are (now that I have seem them
I know) or how to use them. I also looked through all of the
ghostscript docs and nothing was mentioned there either.  

Who is Participating?
jlmsConnect With a Mentor Commented:
You have to create a file with the commands you need, to include the escape character try using the ^ symbol, if that does not work then write a small program (any language, even awk) that writes the Escape character and get this character in a file, this way you can always insert the caracter were needed.

Now, when you have the commands just send the file before your data proper; a filter for your printer queue could send this PCL commands automaticaly before your data.
buck88Author Commented:
Adjusted points to 200
buck88Author Commented:
The answer seems very good, unfortunetly I would not condider my self "experienced" in any type of programming (regarding the escape character). And as far as the file with the commands, how  exactly do I make this file? Do I sent the PCL commands with ASCII, hex, or dec? Could you give me an example of this file for, say, something simple like the selftest. Or actually, the main goal that I have was to sent the command for "econofast" print quality. You mention it in you answer that I could send this PCL command automaticaly before my data. That was the way I thought that I could do it but I do not know how. I am sorry for not having menitoned my lack of experience before hand, but I am very, very eager to learn anything I can!. If you could explain the answer above a more indepth it would be greatly appreciated.

Thankyou very much for you time.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.