Ответ 1
Решение довольно просто, в настоящее время нет ничего вуду или специального в Photoshop CMYK для RGB. Imagemagick использует цветной движок LCMS, который отлично работает.
Но сначала вам нужно отредактировать файл delegates.xml
внутри каталога IM. Найдите строку с delegate decode="ps:cmyk"
и вставьте -dUseCIEColor=false
ближе к концу, так что это выглядит так:
<delegate decode="ps:cmyk" restrain="True" command=""@[email protected]" -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dEPSCrop -dAlignToPixels=0 -dGridFitTT=2 "-sDEVICE=pamcmyk32" -dTextAlphaBits=%u -dGraphicsAlphaBits=%u "-r%s" %s "-sOutputFile=%s" -dUseCIEColor=false "-f%s" "-f%s""/>
Это необходимо, потому что иначе Ghostscript (перед возвратом pam
image to ImageMagick) будет выполнять преобразование CMYK в CMYK (при условии, что DeviceCMYK будет CIE-основано CMYK), и вы, вероятно, этого не хотите, так как цвета значительно сдвинутся.
Затем попробуйте выполнить следующую команду:
convert -density 144 cmyk.pdf -profile USWebCoatedSWOP.icc -resample 72 -profile "sRGB Color Space Profile.icm" -quality 100 out.jpg
Здесь мы берем cmyk.pdf(скорее, временное изображение Pam, которое GS возвращает в IM), назначьте профиль CMYK (как и в Photoshop, когда вы открываете файл или делаете это явно), поэтому выберите профиль, который описывает ввод CMYK), преобразуйте его в профиль sRGB (потому что я не думаю, что вы хотите, чтобы AdobeRGB был как цветное пространство изображений для Интернета) и сохранялся в jpeg. При необходимости уменьшите параметр качества.
Еще один трюк - это дополнительное ручное сглаживание - обратите внимание на промежуточное разрешение 144 dpi и окончание 72 dpi. Потому что я не думаю, что сглаживание Ghostscript с помощью -dGraphicsAlphaBits=4
соответствует параметрам сглаживания Photoshop.
Результат этой команды выглядит точно так же, как и в Photoshop.