Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I want to print an image from a command line:

lp -o scaling=//100// image.jpg

How can I force it to be printed in grayscale?

share|improve this question

3 Answers 3

up vote 3 down vote accepted

Maybe you are looking for lpoptions ?

Use lpoptions -l in order to know what's the name for your printer.

You can play it like thi (example with an HP Photosmart) :

lp -o scaling=//100// -oColorModel=KGray image.jpg
share|improve this answer

I found this looking for this specific problem. And I had everything right, except the non-space between "-o" and [option]. Easy to miss.

General tip: If you look in the ppd-file for the current printer, you should bet a hint of how to denote grayscale printing (or any option for that matter). It could be as above or ColorModel=Gray, ColorModel=Grayscale etc

(I don't have the rep to make a comment - sorry.)

share|improve this answer

You will have to convert the image to a grayscale version, by e.g GraphicsMagick or ImageMagick.

share|improve this answer
1  
Could you add a solution? Maybe the command to run to convert an image to greyscale. –  maxmackie Mar 22 '13 at 20:56

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.