2013-11-13 2 views
0

Я хочу получить размер страницы каждой страницы документа PostScript в простой программе или сценарии оболочки.Получение размеров страниц документа PostScript

Есть ли какая-либо программа или библиотека, которая может получить размеры страниц. (Как pdfinfo, но дело с PostScript)

ответ

2

Нет сомнений в том, что есть какая-то программа для этого, но вы можете попробовать использовать Ghostscript:

gs -q -sDEVICE=nullpage -dBATCH -dNOPAUSE \ 
-c '/showpage{currentpagedevice /PageSize get{=}forall showpage}bind def' \ 
-f test.ps 

Но тогда вам может понадобиться, чтобы отфильтровать любые предупреждения или комментарии DSC. Например. один из тестового файла, который я нашел дал мне это:

%%[ ProductName: GPL Ghostscript ]%% 
(Warning: Job contains content that cannot be separated with on-host methods. Th 
is content appears on the black plate, and knocks out all other plates.) 
595.28 
841.89 
%%[Page: 1]%% 
%%[LastPage]%% 

Собираем некоторые маркеры в ваш переопределена showpage процедуры могут быть полезны.

+0

Не работает. Записывает трассировку стека. – Sergey

-1

Если вы можете использовать уровень PostScript 2, вы можете использовать currentpagedevice:

/pagewidth currentpagedevice /PageSize get 0 get def 
/pageheight currentpagedevice /PageSize get 1 get def 
+0

Ответ дублируется с принятым. И это не соответствует тому, что я спросил «... в простой программе или сценарии оболочки». –

+0

Достаточно честный. Я думаю, что я намеревался опубликовать это в ответ на другой вопрос SO, задающий более или менее одно и то же, минус часть скрипта. На ответ они перепутали 0 и 1. К сожалению, я перепутал вопрос :( – prewett

Смежные вопросы