[THIN] Re: OT: Color printing that defaults to b/w

Hi Matthew,
 
What I normally do is create a second queue that's configured to print black 
only and then set permissions on the color queue so that only people who need 
to print colour have access.
 
Configuring a queue to print black only is a simple as using a comparable (in 
terms of bins etc) black only print driver for the black/white queue, something 
like an HP LaserJet 4200 would probably work fine for you.
 
A slightly more fun way to do the same thing is to alter the existing color 
drivers to print only in black. That way you have a printer-specific black-only 
driver that can be used anywhere. 
 
Anyway, a bit of background.
 
There are 3 printer driver classes used on Windows 2000 and later. 
 
The first class is basically a traditional driver written by the manfacturer 
that does everything itself. Just about every bad driver you've ever used falls 
into this category. There is really no reason for any manufacturer to use this 
type of driver anymore.
 
The second class is Unidriver-based printer drivers. The unidriver was 
intrduced by Microsoft (in win2k) to make the job of creating and modifying 
safe printer drivers easier. It consists of a printer definition file (GPD 
extension) that is a text file that defines everything the printer can do. 
There may be additional GPD files as include files and the driver may also 
include custom DLLs to handle bi-directional printer comms, stapling etc. The 
first time you use a unidriver-based print driver, the GPD file is compiled to 
a binary file (.BUD extension) which is used by the spooler subsystem. 
 
It's worth noting that whenever the .ppd file (or ANY of the include .ppd 
files) are changed, the compile process happens again. That's why its a good 
isea to give users write access to the spool\drivers\w32x86\3 directory, 
otherwise the compile only happens for admins, and the driver won't work 'til 
an admin tries to print.
 
Anyway, the 5500dn PCL6 driver is a uni-driver but interestingly enough the 
PCL5 driver isn't. This is one case where PCL6 is actually better.
 
The PCL6 driver uses hpc55006.gpd and the color section is shown below:

*Feature: ColorMode
{
    *rcNameID: =COLOR_PRINTING_MODE_DISPLAY          *%IDS_COLOR_PRINTING_MODE
    *DefaultOption: 24bpp
    *HelpIndex: 12024
    *Option: Mono
    {
        *rcNameID: =MONO_DISPLAY                      *%IDS_MONOCHROME
        *DevNumOfPlanes: 1
        *DevBPP: 24
        *DrvBPP: 24
        *Color? : FALSE
        *PaletteSize: 1
        *PaletteProgrammable? : TRUE
        *Command: CmdDefinePaletteEntry { *Cmd: "" }
    }
    *Option: 24bpp
    {
        *rcNameID: =24BPP_DISPLAY
        *DevNumOfPlanes: 1
        *DevBPP: 24
        *DrvBPP: 24
        *PaletteSize: 256
        *PaletteProgrammable? : TRUE
        *Command: CmdDefinePaletteEntry { *Cmd: "" }
    }
}

So if you wanted, you could modify the .gpd file to disable the color 
capabilities.
 
The last class is postscript drivers. These used a unidriver like mechanism 
even in NT 4. Postscript printer characteristics are defined in a 
printer-specific PPD file that's a text file with high level printer driver 
capability code that will get compiled into a BPD file which is used to produce 
the print output.
 
There is a sub-class of Adobe postscript drivers, but these really fit in the 
first class of drivers. I've had some real fun with some of Xerox's early Adobe 
postscript drivers, so putting them into the dud class isn't really all that 
cruel.
 
If we look at the 5500dn again, the postscript driver uses hpc5500s.ppd, which 
has a section that defines the basic printer characteristics, eg

*% ---------------------------------
*% Basic Device Capabilities
*% ---------------------------------
*LanguageLevel:     "3"
*Throughput: "22"
*FileSystem: False
*ColorDevice: True
*DefaultColorSpace: CMY
*TTRasterizer: Type42
*?TTRasterizer: "

So by changing the entry "*ColorDevice: True" to "*ColorDevice: False", you've 
just created a driver for a a black only printer. 

The correct way to use the dumbed-down driver is to create an inf file to 
install the renamed, modified gpd or ppd file. You need to rename the INF file, 
and edit the INF file to change the driver name in the [Strings] section and 
change the name of the gpd/ppd file.

You now use the modified driver anywhere.

I'd probably advise you to stick with the 4200 drivers though ;-)

regards,

Ulrich Mack 
Volante Systems 


________________________________

From: thin-bounce@xxxxxxxxxxxxx on behalf of Matthew Shrewsbury
Sent: Thu 22/12/2005 11:17 PM
To: thin@xxxxxxxxxxxxx
Subject: [THIN] OT: Color printing that defaults to b/w



Is there a way that I could default a print driver to B/W? If the user wants to 
print color they would have to go in and make the selection of printing in 
color. 

 

We have a number of people printing to a HP LaserJet 5500DN and the consumables 
are running around $15,000 per year. I've observed that most people printing to 
it really don't need to print in color but they are to lazy to select another 
printer or select B/W. Since there is no way to track each users printing they 
have no reason to try and reduce the amount printed in color.

 

Sorry for the off topic post but someone on here normally knows the answer. 
Thank you for any suggestions!

 

Matthew Shrewsbury, MCSE+Internet MCSE 2000 CCA Server+

Senior Network Administrator

 


#####################################################################################
This e-mail, including all attachments, may be confidential or privileged.  
Confidentiality or privilege is not waived or lost because this e-mail has been 
sent to you in error.  If you are not the intended recipient any use, 
disclosure or copying of this e-mail is prohibited.  If you have received it in 
error please notify the sender immediately by reply e-mail and destroy all 
copies of this e-mail and any attachments.  All liability for direct and 
indirect loss arising from this e-mail and any attachments is hereby disclaimed 
to the extent permitted by law.
#####################################################################################

Other related posts: