Forum How do I...?

Print in black and white?

I have a document that my publisher wants to send to the printer. They are asking for "Output the PDFs as 1/color (black) files". (This is surely not the actual request, but I am dealing with a lossy chain of people whose job is to pass along messages.)

I know I can do this with GhostScript, but can I do it with Prince? The CSS doesn't have colors, but there are colored PNG/JPEG images in the document.
By converting the PDF to grayscale as described here:
I did that, with --convert-colors --pdf-output-intent=icc/ConvertToK_ISOcoated.icc.

The resulting file looks grayscale to me, but the publisher says: "I downloaded your latest PDFs and still see CMY values in the Output Preview used for print products. (See attached screen capture.) "

  1. 06-18_file_wBlackPlate_deselected.png305.0 kB
Following a hint in, I was able to address this issue with no command-line options (other than -s to import the CSS) and the following directive:

@prince-pdf {
  prince-pdf-color-conversion: url("../icc/ConvertToK_ISOcoated.icc") no-embed;

When viewed in Acrobat Pro, the resulting document has no profile of its own and has no CMY values in any profile.

I am frankly confused by this. Wouldn't it be better if the printer, who presumably knows more than I do, to do the grayscale conversion? But they hate those ICC profiles. My publisher contact: I am getting a warning about the ICC profile, which the preflight software recommends removing since it can result in "inconsistent tones" in print.

You probably want to add the following to your CSS-file:
@prince-pdf {
    -prince-pdf-output-intent: url(Dot_Gain_15.icc);

Please use the correct path to your color profile, that contains only black-color. For me "Dot_Gain_15.icc" works perfectly, but your case may be different.
I tried that. It embeds the profile, but it doesn't force the color conversion in the file.

I assumed that it is best embed the profile, so that it can be chosen later. But in this case, I was told not to do that. Perhaps to minimize the potential for error and finger-pointing? Fortunately, the no-embed flag does the trick for my use case.