我正在使用NodeJS创建一个React应用程序,它需要从用户上传的PDF中获取一些文本。
我已经尝试使用:pdf-parse,pdf2json,pdf.js和react-pdf-js。该文件应由用户选择,所有这些库都使用Path来访问该文件。我该怎么办? PS1:我正在使用输入类型=“文件”按钮来获取文件。
该代码必须能同时在NodeJS和Web浏览器上运行
答案 0 :(得分:0)
您没有上传任何代码段,因此我的答案是根据这种情况
您可以看到此示例,这是“如何使用pdf.js
”的完美示例
http://git.macropus.org/2011/11/pdftotext/example/
这是git
上的代码
https://github.com/hubgit/hubgit.github.com/tree/master/2011/11/pdftotext
但我认为您必须根据自己的要求进行一些更改
享受..
答案 1 :(得分:0)
我在回答自己的问题。首先,我创建一个常规的html输入。
<input type='file'/>
我使用React,所以我使用onChange
属性代替id
。
因此,当用户输入文件时,会激活一个功能,并且我使用下面的代码来获取文件:
const file = event.target.files[0];
file
没有路径,PDF.JS使用wich获取真实文件。
然后,我使用FileReader
将文件转换为位数组(我想):
const fileReader = new FileReader();
然后我们在fileReader.onload
处设置一个函数,可以在here处找到该函数
fileReader.onload = function() {...}
最后,我们这样做:
fileReader.readAsArrayBuffer(file);
重要的PS:在新的PDF.JS版本中,pdf.pdfInfo
必须替换为pdf
。
感谢您的帮助。
附加PS:要在React中使用pdfjsLib
作为PDFJS,我在index.html
文件中做到了:
window.PDFJS = pdfjsLib