У меня есть приложение, которое создает PDF-файл с TCPDF, а затем использует Ghostscript для преобразования его в совместимость с x3: 2002.Какие настройки следует использовать, чтобы сохранить правильный цвет при преобразовании PDF в x-3: 2002 с ghostscript?
с помощью командной строки, я называю эту команду:
gs -dPDFX -dBATCH -dQUIET -dNOPAUSE -dNOOUTERSAVE -sProcessColorModel=DeviceCMYK -sColorConversionStrategy=CMYK -sColorConversionStrategyForImages=CMYK -sOutputICCProfile='ISO Coated sb.icc' -sDEVICE=pdfwrite -sOutputFile=$new_pdf $defs_file $original_pdf
Это работает хорошо, за исключением того, что цвета немного размыты. Какие настройки можно изменить, чтобы улучшить это?
Несвязанный момент, но если кто-то столкнулся с этим и получил ответ, стоит отметить: я также получаю ошибки для «Коробки страниц, которые не вложены правильно».
Цените любую помощь.
- ОБНОВЛЕНИЕ -
Я использую версию 9.15 и файл PDFX_def.ps по существу такой же, как образец при условии:
%!
% $Id: PDFX_def.ps 8284 2007-10-10 17:40:38Z giles $
% This is a sample prefix file for creating a PDF/X-3 document.
% Feel free to modify entries marked with "Customize".
% This assumes an ICC profile to reside in the file (ISO Coated sb.icc),
% unless the user modifies the corresponding line below.
systemdict /ProcessColorModel known {
systemdict /ProcessColorModel get dup /DeviceGray ne exch /DeviceCMYK ne and
} {
true
} ifelse
{ (ERROR: ProcessColorModel must be /DeviceGray or DeviceCMYK.)=
/ProcessColorModel cvx /rangecheck signalerror
} if
% Define entries to the document Info dictionary :
[ /GTS_PDFXVersion (PDF/X-3:2002) % Must be so (the standard requires).
/Title (Generated by xxx.com) % Customize.
/Trapped /False % Must be so (Ghostscript doesn't provide other).
/DOCINFO pdfmark
% Define an ICC profile :
currentdict /ICCProfile known {
[/_objdef {icc_PDFX} /type /stream /OBJ pdfmark
[{icc_PDFX} <</N systemdict /ProcessColorModel get /DeviceGray eq {1} {4} ifelse >> /PUT pdfmark
[{icc_PDFX} ICCProfile (r) file /PUT pdfmark
} if
% Define the output intent dictionary :
[/_objdef {OutputIntent_PDFX} /type /dict /OBJ pdfmark
[{OutputIntent_PDFX} <<
/Type /OutputIntent % Must be so (the standard requires).
/S /GTS_PDFX % Must be so (the standard requires).
/OutputCondition (Commercial and specialty printing) % Customize
/Info (none) % Customize
/OutputConditionIdentifier (CGATS TR001) % Customize
/RegistryName (http://www.color.org) % Must be so (the standard requires).
currentdict /ICCProfile known {
/DestOutputProfile {icc_PDFX} % Must be so (see above).
} if
>> /PUT pdfmark
[{Catalog} <</OutputIntents [ {OutputIntent_PDFX} ]>> /PUT pdfmark
Спасибо Кен, я уточнил вопрос с дополнительной информацией. Я оставил один из них без -sOutputICCProfile тем временем, и это немного размыто, но намного лучше. Также, похоже, исправлена проблема с вложенными ящиками, что кажется маловероятным. Я проведу еще несколько тестов, но думаю, что вы, возможно, взломали его. Я вернусь и приму ответ, если так! – Jammooka
Err проблема с вложенными ящиками, исправляемая профилем ICC, кажется маловероятной, да :-) Вы можете, конечно, использовать другой профиль ICC, чтобы преобразовать CMYK с независимым от устройства цветом. Я не эксперт по цвету, хотя я боюсь. – KenS