Question

I'm using following command in PHP to convert a PDF with RBG colors to CMYK colors:

$input  = PDF_DIR . 'input.pdf';
$output = PDF_DIR . 'output.pdf'

exec("'gs'
      '-sDEVICE=pdfwrite'
      '-dUseCIEColor'
      '-sProcessColorModel=DeviceCMYK'
      '-sColorConversionStrategy=CMYK'
      '-sColorConversionStrategyForImages=CMYK'
      '-sOutputFile=$output'
      '$input'
");

I am using Ghostscript version 8.71.

gs -v
GPL Ghostscript 8.71 (2010-02-10)
Copyright (C) 2010 Artifex Software, Inc.  All rights reserved.

Somehow the result is always an empty pdf file. Does anyone know what I'm doing wrong?

Thanks in advance for any answers, Cheers!

Some references:

Était-ce utile?

La solution

It seems to work if I omit the -dUseCIEColor parameter. I also added an parameter to collect the output like Sami Laine suggested. This is my final code:

$input  = PDF_DIR . 'input.pdf';
$output = PDF_DIR . 'output.pdf'

exec("'gs'
  '-o $return'
  '-sDEVICE=pdfwrite'
  '-sProcessColorModel=DeviceCMYK'
  '-sColorConversionStrategy=CMYK'
  '-sColorConversionStrategyForImages=CMYK'
  '-sOutputFile=$output'
  '$input'
");

Thank you for your answers!

Autres conseils

In addition to what Sami says above (which is excellent advice, you need to see the back channel output) you should also upgrade, 8.71 is quite old.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top