2016-02-24 8 views
3

Мне нужно преобразовать RGB PDF в PDF-файл CMYK.ghostscript: конвертировать PDF в CMYK, сохраняя чистое черное для текста

Мне нужен чистый черный цвет для текстов.

Похоже (спасибо комментариям ниже) термин «компенсация черной точки» является неправильным. Я взял его из Adobe Acrobat, где он работает именно так, как мне нужно. Я думал, что у gs такая же особенность.

Я использую Ghostscript 9,16

Если я получил это право есть вариант «-dBlackPtComp», но это не работает для меня. Ghostscript команда Я попытался это:

"C:/Program Files/гс/gs9.16/бен/GSWIN64C.EXE" -o testing_black_cmyk.pdf -sColorConversionStrategy = CMYK -sDEVICE = pdfwrite -dOverrideICC = истина -sOutputICCProfile = с: /Windows/System32/spool/drivers/color/JapanColor2002Newspaper.icc -dTextBlackPt = 1 -dBlackPtComp = 1 test2.pdf

+0

У вас нет -sTextICCProfile, поэтому -dTextBlackPt является своего рода недействительным. Не могли бы вы привести пример того, как результат выглядит некорректно? Также проверьте этот ответ http://stackoverflow.com/a/3423503/1328439 –

+1

Хорошо, я просто попробовал с -sTextICCProfile, но, похоже, он не имеет никакого эффекта. Результат вывода я просто проверяю с помощью Acrobat и вместо 100% для черного я вижу 88% (вместо 0% для других цветов я вижу 72% 67% 67%) –

+2

1. [BPC] (http: //www.color. org/AdobeBPC.pdf) не имеет ничего общего с вашей проблемой. 2. Я думаю, что высокоуровневые устройства GS ('pdfwrite' тоже) по-прежнему выполняют собственное« жестко закодированное »управление цветом, то есть игнорируют большинство связанных с CMS коммутаторов. Например. любой '-sOutputICCProfile' даст тот же результат, т. е. если вы ожидаете, что ваш« JapanColor2002Newspaper.icc »будет применен (для фотографий и т. д.) - будьте осторожны, это не так. 3. Обходным путем является использование '-sSourceObjectICC' с управляющим файлом и [профили ссылок на устройства] (http://www.argyllcms.com/doc/collink.html). Сделайте себе несколько DL-профилей, ... – user2846289

ответ

2

Попробуйте это:

collink -v -G AppleRGB.icc JapanColor2002Newspaper.icc apple_to_jNP_photo.icc 

collink -v -f AppleRGB.icc JapanColor2002Newspaper.icc apple_to_jNP_neutrals.icc 

control.txt:

Image_RGB apple_to_jNP_photo.icc  0 1 0 
Graphic_RGB apple_to_jNP_neutrals.icc 0 1 0 
Text_RGB apple_to_jNP_neutrals.icc 0 1 0 

и

gswin32c -q -sDEVICE=pdfwrite -o out.pdf -sColorConversionStrategy=CMYK -sSourceObjectICC=control.txt in.pdf 

DeviceRGB Затем в исходном PDF преобразуется в DeviceCMYK и RGB 0/0/0 становится (как Я сейчас проверяю) DeviceGray0, который должен быть в порядке (и все остальные нейтральные оттенки RGB отображаются также в оттенках серого).

Причина, по которой мы используем разные DL-профили для разных объектов, состоит в том, что, хотя насыщенные цвета (далекие от нейтралов) будут преобразованы в один и тот же CMYK через оба профиля, тем не менее вы, вероятно, не хотите, чтобы цвет внезапно переключился на 0/0/0/n в непрерывных тонах, если цвет близок к нейтральному - он будет выглядеть ужасно на прессе.

Если ваши «изображения» являются, например, растровая графика (диаграммы и т. д.) с 0/0/0 RGB, вы можете также использовать apple_to_jNP_neutrals.icc для этих изображений.

Если на вашей странице есть сочетание как реальных изображений, так и растровой графики (текст) - несчастье, вам придется идти на компромисс.

Причины мы используем -G вместо быстрого и простого Simple Mode, потому, что -f (для второго профиля) следует «Gamut режим отображения с помощью обратного outprofile A2B», и мы хотим 2 профилей для получения результата (для насыщенного цвета) как можно ближе друг к другу.

+0

Спасибо за очень «подсказку»! Вопрос: если я сохраняю только правило «Text_RGB» в control.txt, то что происходит с изображениями? –

+0

Тогда, я думаю, 'default_rgb.icc' будет неявно назначен источнику' DeviceRGB', который затем будет преобразован в 'default_cmyk.icc', которые являются' Artifex Software sRGB ICC Profile' и 'Artifex CMYK SWOP Profile', по их тегам описания. Кажется, что это преобразование выполняется с использованием Colorimetric BPC' RI. И это ** независимо ** от других CL-переключателей **, включая ** управляющий файл не-DLP-линий. Вот почему я говорю, что поведение устройств на высоком уровне «жестко». Кстати, я думаю, что любой BPC должен быть удален из названия, возможно, «сохранение чистого черного текста» будет лучше. – user2846289

+0

Хорошо, спасибо. Я сравниваю результат с конвертируемой Acrobat версией, и кажется, что изображения в gs-конвертированной версии имеют меньший контраст. –

0

Из описания на черной точке компенсации на странице Литтл CMS:

«Компенсация черных точек (BPC) - это метод, используемый для решения проблем преобразования , вызванных различиями между самыми темными уровнями черных, доступных на разных носителях/устройствах ».

Другими словами, BPC не имеет ничего общего с вашей проблемой, и если вы хотите получить правильные ответы, вы должны удалить его из этого вопроса.

Если вы хотите черный быть сохранены (или чистый/вторичные цвета в целом), то есть в основном два варианта вы можете посмотреть по адресу:

1) Создать собственное DeviceLink профиль, чтобы сделать ваши преобразования. Этот профиль devicelink должен принять ваш входной профиль ICC и пункт назначения, который вы хотите преобразовать, и должен содержать правильные правила исключения, чтобы сохранить черные/серые/вторичные/третичные цвета по мере необходимости.

2) Используйте механизм преобразования цвета, который поддерживает исключения при регулярном преобразовании профиля ICC. Например, в Little CMS есть флаг намерений («INTENT_PRESERVE_K_ONLY_RELATIVE_COLORIMETRIC»), который может быть установлен для указания движку сохранять черный во время преобразования.