PostScript новая страница в цикле - PullRequest
0 голосов
/ 28 января 2020

У меня проблема с оператором новой страницы. У меня есть следующий код

%!PS-Adobe-3.0

/txtArray [(a) (b) (c) (d)] def

/fontSize 12 def
/lineHeight fontSize def
/lineHeight lineHeight 1.5 mul def

/Arial findfont fontSize scalefont setfont

/x 50 def
/y 400 def

txtArray
{
    /y y lineHeight sub def
    x y moveto
    show
} forall

showpage
100 200 moveto
(Hello) show

%%EOF

Я хочу новую страницу после печати массива, но я вижу только элементы массива. Строка «Hello» не отображается. На следующем шаге я хочу написать оператор newpage в l oop, чтобы получить новую страницу после каждого элемента массива.

Как мне решить проблему?

1 Ответ

0 голосов
/ 29 января 2020

В стандартном PostScript нет оператора с именем newpage, вы имеете в виду showpage?

Ваша программа делает именно то, что вы просили. После отрисовки содержимого массива вы выполняете showpage, который передает накопленные операции в выходной буфер и извлекает страницу. Сделав это, вы затем приступаете к выполнению еще нескольких операций рисования, но вы больше не вызываете showpage. Программа затем завершается. Поскольку вы не вызывали showpage после этих операций рисования, накопленные операции не переносятся на выход.

Всякий раз, когда вы хотите перенести накопленный чертеж на выход, вам нужно вызвать showpage. (Примечание: это также стирает страницу после передачи данных)

Так что если вы поставите showpage после (Hello) show, тогда вы получите вторую страницу с Hello на ней.

...