使用 Node 查找 PDF 页数(在 Windows 上)

Find PDF page count with Node (on Windows)

我做了很多研究(我猜还不够?)并试图找到一个易于使用的库来使用 Node.js 查找 PDF 的页数。该库需要在 Windows OS.

上可用

有人知道如何最好地解决这个问题吗?最坏的情况是,我正在考虑用 PhantomJS 和 PDF.js 库做点什么。

感谢您的帮助!!

由于它建立在 pdf.js 的基础上,pdf2json 它应该在 windows 中工作。

我设法找到了测试文档的页数,如下所示:

var PDFParser = require('pdf2json');
var pdfParser = new PDFParser();

pdfParser.on('pdfParser_dataReady', function(data) {
    var doc = data.PDFJS && data.PDFJS.pdfDocument && data.PDFJS.pdfDocument.numPages;
    console.log('Number of pages:', doc);
});
// pdfParser.on('pdfParser_dataError', _.bind(_onPFBinDataError, self));

pdfParser.loadPDF('test.pdf');

在当前版本中,您可以通过 pdf2json 的 Pages 数组获得总页数:

stream.pipe(new PDFParser())
  .on('pdfParser_dataReady', (data) => {
    const pageCount = data && data.formImage && data.formImage.Pages && data.formImage.Pages.length ? data.formImage.Pages.length : 0;
    console.log(pageCount);
  })