Устройство, которое делает это, не имеет такой возможности, поэтому вы не можете изменить командную строку Ghostscript, чтобы делать то, что вы хотите.
Есть три способа решения этой проблемы в Ghostscript;
- Вы можете изменить интерпретатор PDF, который написан на PostScript
- Вы можете изменить устройство pdfwrite, которое написано на C
- Вы можете изменить фильтрацию устройство, которое также написано в C.
Есть несколько моментов, которые вы должны учитывать, независимо от того, какой инструмент вы используете. Во-первых, что точно вы подразумеваете под «цветным текстом» или «черным текстом и изображениями»?
Спецификация PDF позволяет указывать цвет в широком разнообразии цветовых пространств. Серый, RGB, CMYK, Lab, CalGray, CalRGB, ICCBased, Separation, DeviceN. Кроме того, существуют индексированные цветовые пространства, которые могут иметь базовое пространство любого из предыдущих пространств, и цветовые пространства образца.
Что такое Вы собираетесь считать «черным» в каждом из этих мест? Очевидно, DeviceGray - это просто, 0 - это черный, все остальное - это оттенок серого, но как насчет RGB? Вы только собираетесь считать 0,0,0 черным? Что, если это пространство на базе ICC?
Текст может иметь два цвета, обводку и цвет заливки, и их можно указать по-разному. Они даже могут быть указаны в разных цветовых пространствах. Вам нужно подумать о том, как вы планируете справиться с этим.