Я пытаюсь изменить цвет из файлов EPS, которые содержат только векторы (без растров). В настоящее время я конвертирую их в SVG, манипулирую цветами и конвертирую их обратно в PDF или EPS с помощью Inkscape. Это работает отлично, но не позволяет мне применять расцветку CMYK, только RGB. После небольшого исследования и поиска ответов вроде this или this я пытаюсь переопределить функцию /setcmykcolor
, которую использует мой файл EPS. Вы можете скачать его с здесь .
EPS выглядит так:
И я хочу преобразовать цвет в CMYK = 0 1 1 0, чтобы он выглядел так:
В этом случае файл EPS черный, но он может быть любой другой цвет. Я попытался добавить это после %%BeginProlog
, которое должно переопределить /setcmykcolor
, чтобы всегда применять 0 1 1 0
в качестве цвета CMYK:
/osetcmykcolor {/setcmykcolor} bind def /setcmykcolor {pop [0 1 1 0] osetcmykcolor} def
Или это:
/osetcmykcolor {/setcmykcolor} bind def /setcmykcolor {0 1 1 0 osetcmykcolor} def
Но все все еще черный. Я знаю, что /setcmykcolor
- правильная функция, потому что использование 0 1 1 0 setcmykcolor
непосредственно перед рисованием пути делает его красным. Я просмотрел руководства по программированию PostScript, но мне трудно понять, что здесь не так!
Любая помощь будет принята с благодарностью!