pdf — почему скрипт-призрак в определении общего охвата чернил в результате получил то же значение CMYK? (PHP)

Я пытался конвертировать. DOC файлы в PDF файлы, ссылка на Конвертировать Word doc, docx и Excel xls, xlsx в PDF с PHP, и успешно преобразовать в pdf ,,, когда я определяю общее покрытие чернилами с помощью сценария-призрака, полученное значение fil для CMYK в том же значении, как ,,,

СТРАНИЦА 1
0,8557 0,8557 0,8557 0,8557 CMYK ОК

Правильный результат

СТРАНИЦА 1
0,0000 0,0000 0,0000 1,0000 CMYK ОК

потому что мой файл содержит весь черный шрифт

`My php script for convert to pdf`

$result = exec('"C:\Program Files (x86)\OpenOffice 4\program\python.exe"D:\wamp\www\doc_to_pdf\libobasis4.4-pyuno\unoconv -f pdf -o
D:/wamp/www/doc_to_pdf/files/'.$pdf_File_name.'
D:/wamp/www/doc_to_pdf/files/'.$doc_file_name);

мой призрачный скрипт

-o — -sDEVICE = inkcov E: /fileconverted.pdf

Кстати, я использую OpenOffice и Unoconv

-1

Решение

Вы можете подумать, что ваш файл содержит только черный текст, и, возможно, в некотором смысле это так, но …

Поскольку вы использовали текстовый процессор вместо графического приложения, цвет текста почти наверняка указан в цветовом пространстве RGB. Поэтому, если вы попросите 50% зеленого текста, вы не получите 50% голубого, 50% желтого, 0% пурпурного и 0% черного, что вы получите 0% красного, 50% зеленого и 0% синего. Это связано с тем, что операционная система, которая, в конце концов, управляет монитором RGB, работает в пространстве RGB.

Для черного текста (R = G = B = 0), когда вы конвертируете его в CMYK, он делает не стать C = M = Y = 0, K = 1. Это хорошо известная проблема с преобразованием цветового пространства.

Короче говоря, то, что вы видите, правильно, проблема с вашими ожиданиями.

Я полагаю, что созданные вами PDF-файлы также определяют цвет текста в RGB. Когда вы используете устройство inkcov, это заставляет Ghostswcript преобразовывать RGB в CMYK, используя стандартный алгоритм преобразования PostScript / PDF. Стандартное преобразование из RGB в CMYK приведено на стр. 476 Справочного руководства по языку PostScript.

Есть и другие способы справиться с этим преобразованием, но оно сложное, и мне нужно знать, почему вы хотите использовать чернила CMYK, прежде чем давать какие-либо рекомендации.

Конечно, так как вы не опубликовали пример файла для изучения, это все предположение. Если вы хотите сделать пример доступным, я посмотрю на него и проверим.

[после просмотра файла]

Да, весь цвет указан в DeviceRGB.

И не только это, но каждая страница определяет группу прозрачности с пробелом RGB. Таким образом, даже если текст был нарисован в CMYK, он будет преобразован в RGB для смешивания прозрачности. Да, я знаю, что в файле нет прозрачных объектов, но многие не очень яркие производители PDF создают группы прозрачности, даже если они на самом деле не используют прозрачный контент. Все, что использует Каир, особенно подвержено этому.

Таким образом, в сущности, то, что говорит вам устройство Ghostscript для инкчей, является правильным и является следствием того факта, что ваш контент находится в RGB.

Теперь, если вы скажете мне, почему это проблема, я может быть быть в состоянии помочь. Хотя, учитывая присутствие группы прозрачности, это может быть сложно.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]