Это чрезвычайно сложно, и вот почему: PS-файл - это программа, выполнение которой приводит к отображению пикселей на странице. Инструкции в программе PS находятся на уровне «нарисовать линию с использованием текущего пера и цвета» или «повернуть систему координат на 90 градусов», но нет понятия слоев или сложных объектов, как вы могли бы видеть их на векторном рисунке применение.
В структуре файлов PS очень мало соглашений, позволяющих внешним программам изменять их: страницы помечаются отдельно, ресурсы шрифтов и размеры мультимедиа указаны в специальных комментариях. Это особенно верно для Embedded Postscript (EPS), который должен следовать этим рекомендациям, поскольку они предназначены для чтения приложениями, а не для общего PS, так как он отправляется на принтер. Программа PS - это намного более низкий уровень абстракции, чем вам нужно, и теперь есть способ восстановить ее для произвольного кода PS. В принципе, файл PS может приводить к разным выводам каждый раз, когда он печатается, поскольку он может запрашивать свою среду выполнения и ветвление на основе случайных решений.
Такие приложения, как Adobe Illustrator, генерируют код PS, который имеет жесткую структуру. Существует вероятность, что они могут быть проанализированы и обработаны без интерпретации кода. Я бы даже предложил переосмыслить текущую архитектуру: у вас слишком низкий уровень абстракции для того, что вам нужно.