Pdf.js(用于节点)不呈现pdf的全部内容

时间:2017-05-09 11:13:16

标签: javascript node.js pdf pdf.js

我正在尝试使用https://www.npmjs.com/package/pdfjs-dist-for-node搜索pdf的文本。

我的代码如下所示:

 gettext: function(){
     var data = '../static/example.pdf';
         return pdfjs.getDocument(data).then(function(pdf) {
     var pages = [];
     for (var i = 0; i < pdf.numPages; i++) {
                 pages.push(i);
     }
     return Promise.all(pages.map(function(pageNumber) {
                 return pdf.getPage(pageNumber + 1).then(function(page) {
         return page.getTextContent().then(function(textContent) {
                         return textContent.items.map(function(item) {
             return item.str;
                         }).join(' ');
         });
                 });
     })).then(function(pages) {
         return pages.join("\r\n")
     });
         }).then(function(pages){
     console.log(pages)
     });


 }

这似乎有效,但它会跳过部分文本。具体来说,它会跳过我在原始pdf文档中无法用鼠标突出显示的内容。有没有办法让pdf.js获取这些数据?

1 个答案:

答案 0 :(得分:0)

如果在查看PDF时无法选择文本,则表示它实际上是图像,因此意味着您无法搜索它。< / p>

所以不幸的是,这是不可能的,除非你设置其他东西在PDF上首先做一些OCR以尝试将图像转换为文本。