Действительно ли возможно получить размер страницы (от, например, страница документа в формате PDF) использование GhostScript? Я видел "bbox" устройство, но оно возвращает ограничительную рамку (оно отличается на страницу), не TrimBox (или CropBox) страниц PDF. (См. http://www.prepressure.com/pdf/basics/page_boxes для получения информации о полях страницы.) Возможность?
Тем временем я нашел другой метод. Этот использует только Ghostscript (как вам и требовалось). Нет необходимости в дополнительных сторонних утилитах.
Этот метод использует небольшую вспомогательную программу, написанную на PostScript, поставляемую с исходным кодом Ghostscript. Найдите в подкаталоге toolbin файл pdf_info.ps
.
В прилагаемых комментариях говорится, что вы должны запустить его вот так, чтобы вывести список используемых шрифтов и размеров используемых носителей
gswin32c -dNODISPLAY ^
-q ^
-sFile=____.pdf ^
[-dDumpMediaSizes] ^
[-dDumpFontsUsed [-dShowEmbeddedFonts]] ^
toolbin/pdf_info.ps
Я запускал его в локальном файле примера с параметрами командной строки, которые запрашивают только размеры носителя (не шрифты использовал). Вот результат:
C:\> gswin32c ^
-dNODISPLAY ^
-q ^
-sFile=c:\downloads\_IXUS_850IS_ADVCUG_EN.pdf ^
-dDumpMediaSizes ^
C:/gs8.71/lib/pdf_info.ps
c:\downloads\_IXUS_850IS_ADVCUG_EN.pdf has 146 pages.
Creator: FrameMaker 6.0
Producer: Acrobat Distiller 5.0.5 (Windows)
CreationDate: D:20060817164306Z
ModDate: D:20060822122024+02'00'
Page 1 MediaBox: [ 595 842 ] CropBox: [ 419.535 297.644 ]
Page 2 MediaBox: [ 595 842 ] CropBox: [ 297.646 419.524 ]
Page 3 MediaBox: [ 595 842 ] CropBox: [ 297.646 419.524 ]
Page 4 MediaBox: [ 595 842 ] CropBox: [ 297.646 419.524 ]
[....]
К сожалению Кажется, не совсем просто получить (возможно, разные) размеры страницы (или * поля, если на то пошло) внутри PDF с помощью Ghostscript.
Но поскольку вы запросили и другие возможности: довольно надежный способ определения размеров носителя для каждой страницы (и даже каждого из встроенных полей {Обрезка, Медиа, Обрезка, Обрезка}) - это инструмент командной строки pdfinfo. исполняемый. Эта утилита является частью инструментов XPDF из http://www.foolabs.com/xpdf/download.html . Вы можете запустить инструмент с параметром «-box» и указать ему с помощью «-f 3» начать со страницы 3 и с помощью «-l 8», чтобы остановить обработку на странице 8.
Пример вывода:
C:\downloads>pdfinfo -box -f 1 -l 3 _IXUS_850IS_ADVCUG_EN.pdf Creator: FrameMaker 6.0 Producer: Acrobat Distiller 5.0.5 (Windows) CreationDate: 08/17/06 16:43:06 ModDate: 08/22/06 12:20:24 Tagged: no Pages: 146 Encrypted: no Page 1 size: 419.535 x 297.644 pts Page 2 size: 297.646 x 419.524 pts Page 3 size: 297.646 x 419.524 pts Page 1 MediaBox: 0.00 0.00 595.00 842.00 Page 1 CropBox: 87.25 430.36 506.79 728.00 Page 1 BleedBox: 87.25 430.36 506.79 728.00 Page 1 TrimBox: 87.25 430.36 506.79 728.00 Page 1 ArtBox: 87.25 430.36 506.79 728.00 Page 2 MediaBox: 0.00 0.00 595.00 842.00 Page 2 CropBox: 148.17 210.76 445.81 630.28 Page 2 BleedBox: 148.17 210.76 445.81 630.28 Page 2 TrimBox: 148.17 210.76 445.81 630.28 Page 2 ArtBox: 148.17 210.76 445.81 630.28 Page 3 MediaBox: 0.00 0.00 595.00 842.00 Page 3 CropBox: 148.17 210.76 445.81 630.28 Page 3 BleedBox: 148.17 210.76 445.81 630.28 Page 3 TrimBox: 148.17 210.76 445.81 630.28 Page 3 ArtBox: 148.17 210.76 445.81 630.28 File size: 6888764 bytes Optimized: yes PDF version: 1.4