В PostScript или EPS нет «ограничения строки», поэтому вы не можете его использовать.
Когда я запускаю ваш файл через Ghostscript, он выдает ошибку / не определено в yImage (я бы посоветовал вам отлаживать PostScript, используя правильный интерпретатор PostScript, а не Adobe Illustrator).
Это наводит меня на мысль, что одно из ваших изображений использует больше данных, чем вы предоставили, поэтому интерпретатор запускает конец данных, потребляя части программы, пока не прочитает достаточное количество байтов из текущего файла, чтобы удовлетворить запрос , В этот момент начинается обработка файла как PostScript снова, но указатель файла теперь указывает на «yImage» следующего «DisplayImage». Поскольку вы не определили ключ «yImage», естественно, это дает вам «неопределенную» ошибку.
Судя по вашему описанию, это может быть 4-е изображение, поскольку добавление 5-го приводит к ошибке. Обратите внимание, что если ваша программа завершает работу без предоставления достаточного количества данных (таким образом, интерпретатор достигает EOF), то предоставленные данные будут отрисованы. Таким образом, может выглядеть , как будто ваше 4-е изображение является правильным, даже если оно не соответствует действительности, если за ним не следует никакой дополнительный программный код.
примечание стиля; PostScript - это язык, основанный на стеке, поэтому обычно нужно помещать значения в стек и читать их оттуда вместо выполнения оператора 'token'.
Таким образом, ваш ввод будет больше похож на:
0 0
564 608
12
564 608
0
0
DisplayImage
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
...
И код DisplayImage будет:
/DisplayImage
{
%
% Display a DirectClass or PseudoClass image.
%
% Parameters:
% x & y translation.
% x & y scale.
% label pointsize.
% image label.
% image columns & rows.
% class: 0-DirectClass or 1-PseudoClass.
% compression: 0-none or 1-RunlengthEncoded.
% hex color packets.
%
gsave
/buffer 512 string def
/byte 1 string def
/color_packet 3 string def
/pixels 768 string def
/compression exch def
/class exch def
/rows exch def
/columns exch def
/pointsize exch def
scale
translate
Это позволяет вам вообще не использовать токен для операций масштабирования и перевода.