My stupid printer (HP Color LaserJet CP1515n) has recently started printing colour wrongly. It seems the problem is that it’s just not using the cyan nozzle at all. (Grr! Printers! Horrible things!)
To illustrate the problem, I wanted to produce the image above.
It was easy enough to get the Ubuntu printing system to spit out the left-hand side — I just poked around a bit until I found /usr/share/system-config-printer/testpage-a4.ps, then viewed that in evince and screencapped the result. But how to remove the cyan to produce the image on the right?
I was surprised that I couldn’t find a GIMP tutorial on how to do this — it seems like a useful thing to do — so I played with the program until I found a way to decompose a colour image into CMYK layers that compose as they do when printed. Then I just made the cyan layer invisible to get the version of the test page on the right.
Since the process wasn’t trivial, I thought it might be useful if I documented it here. No doubt there is a better way, but this is what I found.
- Open the image in GIMP (duh)
- From the Colours menu, pick Components -> Decompose…
- In the popup, change Colour model to CMYK and hit OK.
- The result is a new file, so close the original — you’re done with it.
- The new file contains each of the four components (cyan, magenta, yellow and black) as an inverted greyscale mask, so the first thing to do is make this a colour image: Image -> Mode -> RGB.
- Invert each of the four layers individually: Colours -> Invert.
- Throw away the unwanted white background from each of the top three layers (cyan, magenta, yellow): Colours -> Colour to Alpha… and hit OK to accept the default colour of white. (Keep the white background on the bottom layer).
- Change the cyan layer to, well, cyan rather than black. Colours -> Levels…; set Channel to Green and slide Output Levels all the way to the top; now do the same for the Blue channel and hit OK.
- Do the same with the magenta layer, bringing the Red and Blue channels up to maximum.
- Do the same with the yellow layer, bringing the Red and Green channels up to maximum.
- Finally, for each of the top three layers, change the Mode (at the top of the Layers window) from Normal to Darken Only — this emulates how pigments work.
The result of all this is an image that looks exactly the same as the one you started with, but which is made of individual ink-gun layers that you can turn on and off. All I did to produce the right-hand side of the image above was to make my cyan layer invisible.
I hope that’s helpful to someone. (Yet I can’t shake off the nagging feeling that someone is immediately going to post a comment that says “Just use the Image -> Decompose Into Separate Overlaid CNYK Layers option.”)
Oh, and another thing …
If anyone has any idea what’s wrong with my printer, please do shout. It’s not a problem with my computer’s driver, as it does the same thing when printing from other computers in the house, and it’s not a problem with the specific program that’s doing the printing, as we’ve seen the same thing from Firefox, OpenOffice and more.