api - Ghostscript:PDF总页数

标签 api pdf ghostscript

我正在使用Ghostscript库API(从C#包装)来从我的应用程序中打印PDF文档。
使用'-dFirstPage'和'-dLastPage'参数,我可以选择要打印的页面范围,但是PDF页面的总数如何呢?

当PDF文档只有4页时,允许用户选择2到10的页面间隔不是很好。

考虑到我正在通过gsapi_init_with_args API库调用使用Ghostscript库。

最佳答案

Ghostscript可以在stdout上计数并显示PDF的页面数。命令行是

gswin32c ^
  -q ^
  -dNODISPLAY ^
  -c "(input.pdf) (r) file runpdfbegin pdfpagecount = quit" 

这里所有的-c "..."东西都是PostScript命令行片段(使用一些GS内部命令扩展名)。而input.pdf是PDF文件名(也可以是完整路径,如(c:/path/to/my.pdf))。

但是,对于这种类型的工作,更好,更快的工具是使用pdfinfo(XPDF实用程序的一部分,也可在Windows上使用)。

更新:

@ebyrob想知道是否可以修改我的示例命令行,以便它也可以通过一次操作显示PDF。尝试这个:
gswin32c ^
  -q ^
  -c "(input.pdf) (r) file runpdfbegin pdfpagecount =" ^
  -f input.pdf

嗯,这不是一个单一的操作,而是一个命令行中的两个不同的操作。

关于api - Ghostscript:PDF总页数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4826485/

相关文章:

excel - 在桌面上将 Excel 工作表存储为 PDF

php - 如果没有 PDFlib 库,如何从 HTML 生成 PDF?

pdf - 通过将 PDF 中的所有字体转换为轮廓形状来替换它们

php - 为什么 setLandingPageType ("billing") 在 Sandbox 中工作但在 PAYPAL PHP REST API SDK WebProfile 的实时版本中不工作

api - Swagger 代码生成器 - 有经验的人吗?

node.js - 产品广告 API 不起作用

c# - ECDSA 签名的 PDF 无法通过 iText 7 (C#) 进行签名验证,但通过 Adob​​e Reader DC 成功

javascript - Web Audio API - 逐渐增益以避免点击

pdf - Ghostscript pdf2jpg - 颜色错误?

java - 连接两个 PostScript 期间的 Ghost4j 类强制转换异常