是否可以使用GhostScript获取页面大小(例如从PDF文档页面)?我看过“bbox”设备,但它返回边界框(每个页面不同),而不是PDF页面的TrimBox(或CropBox)。 (有关页面框的信息,请参阅http://www.prepressure.com/pdf/basics/page_boxes)。还有其他可能性吗?使用GhostScript获取页面大小
回答
同时我找到了一个不同的方法。这个只使用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 ]
[....]
不幸的是,在Ghostscript的帮助下,在PDF内部获得(可能不同的)页面大小(或者* Boxes for the matter)似乎并不容易。
但是,既然你问了其他的可能性:确定每个页面(甚至每一个嵌入的{Trim,Media,Crop,Bleed}框)的媒体大小的一个相当可靠的方法是命令行工具pdfinfo 。可执行程序。该实用程序是http://www.foolabs.com/xpdf/download.html的XPDF工具的一部分。你可以用“ - 盒”参数运行该工具,并以“-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
要获得所有的网页,不指定第一(所以没有'-f'),并设置最后一页为-1(所以'-l -1') – 2013-10-16 08:41:04
@GeenHenk : 谢谢! – 2013-10-16 20:20:23
- 1. 用Ghostscript指定PDF页面大小
- 2. 使用AlivePDF获取页面大小
- 3. 使用iTextSharp获取PDF页面大小
- 4. 获取页码和页面大小
- 5. 如何获取页面大小
- 6. 获取Firefox的扩展页面大小
- 7. 使用Ghostscript调整多页混合格式PDF的大小?
- 8. 只使用Linq获取页面所需记录的查询 - 没有根据页面大小获取记录
- 9. 使用JavaScript根据页面大小
- 10. XFS块大小的大页面大小
- 11. dashboardSidebar:页面大小
- 12. FixedDocument页面大小
- 13. HTML - 减小页面大小
- 14. Dreamweaver缩小页面大小?
- 15. 缩小页面大小
- 16. 如何使用Python获取PDF文件元数据'页面大小'?
- 17. Ghostscript:如何将EPS转换为具有相同页面大小的PDF
- 18. 下载的页面大小与浏览的页面大小
- 19. 页面大小和页面表项大小有什么区别
- 20. 调整页面大小时从垂直角度获取元素
- 21. 如何获取telerik的radlistview选定的新页面大小
- 22. 如何以编程方式获取Linux内核页面大小
- 23. 如何从MemoryStream或Byte获取页面大小?
- 24. 在网页上获取图像大小
- 25. 从Windows服务获取桌面大小?
- 26. 如何获取Mac桌面大小
- 27. C#:获取完整的桌面大小?
- 28. HTML页面大小 - 页面重量
- 29. 如何获取背景大小:封面;大小和百分比?
- 30. 如何获取根的大小&&已使用的根的大小
ghostscript是否仍附带'pdf_info.ps'?如果不是,哪里会是一个获得副本的好地方? – 2014-03-31 18:03:01
你可以在Ghostscript的Git仓库中找到它:[http://git.ghostscript.com/?p=ghostpdl.git;a=summary](http://git.ghostscript.com/?p=ghostpdl.git ; A =摘要)。或者尝试** [此直接链接](http://git.ghostscript.com/?p=ghostpdl.git;a=blob_plain;f=gs/toolbin/pdf_info.ps;hb=HEAD)**。 – 2014-04-01 11:06:39
谢谢!我在某处找到了一个副本,但我认为它不是最新的。 – 2014-04-01 13:07:56