Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
仅使用javascript从pdf文件中提取文本_Javascript_Pdf_Extract - Fatal编程技术网

仅使用javascript从pdf文件中提取文本

仅使用javascript从pdf文件中提取文本,javascript,pdf,extract,Javascript,Pdf,Extract,如何在客户端和任何浏览器中仅使用javascript从pdf文件提取数据?您所要求的几乎是不可能的 PDF是一种重量级格式,旨在高效显示大型复杂文档,而不是进一步处理。(事实上,PDF文档主要由绝对位于页面上的字母形状和其他图形组成。任何表示“文本段落”的数据都是带标签PDF的可选功能。) 文本提取往往是PDF库(通常很昂贵)的一项功能,据我所知,Javascript不存在这样的库。Scribd和GoogleDocs会这样做,但他们可能不会分享如何做,我猜他们是在服务器端这样做的 tl;dr:P

如何在客户端和任何浏览器中仅使用javascript从pdf文件提取数据?

您所要求的几乎是不可能的

PDF是一种重量级格式,旨在高效显示大型复杂文档,而不是进一步处理。(事实上,PDF文档主要由绝对位于页面上的字母形状和其他图形组成。任何表示“文本段落”的数据都是带标签PDF的可选功能。)

文本提取往往是PDF库(通常很昂贵)的一项功能,据我所知,Javascript不存在这样的库。Scribd和GoogleDocs会这样做,但他们可能不会分享如何做,我猜他们是在服务器端这样做的


tl;dr:PDF作为一种格式,在这方面很糟糕。除非应用程序的整个要点基本上都是从pdf中提取文本,否则您最好花时间弄清楚如何不必这样做。

pdf.js是一款JavaScript pdf阅读器:

一些类似项目:

  • 对于docx和xlsx:
  • jsPDF是一个pdf生成器:

如果您询问如何加载文件,这可以通过ajax请求完成,但您无法直接读取文件内容。

如何?不确定它是否有一个简单的API…@etclars,这是一个PDF渲染库。显示PDF与提取适合文本处理的数据是一个单独的问题。一个类比是画一张JPEG,而不是一张识别人脸的JPEG。解析原始数据的低级代码是相同的,但解释这些数据是完全不同的。@elclanrs有一个非零概率,它有或可能在合理的时间范围内有能力提取标记PDF中的任何此类数据,但是,就像每个GitHub库一样,没有可访问的参考文档,要判断是否是这样是件麻烦事。我感觉到了。不过有这个。现在看来已经足够好了,我的意思是它只是一个alpha产品。@Christophe您可以通过查看Calibre转换器的配置选项来了解可以/必须做什么:(事实上,如果我要做这样的功能,我的第一个方法是将PDF输入calibre并交叉手指。即使如此,如果最终用户不调整这些参数,结果也不可能总是令人满意。)根据millimoose的评论,pdf.js的输出仍然很糟糕,但它似乎可以被一些黑客用来“以充分的方式”提取文本信息,fsvo充分。@pst对,这仍然是一个很好的努力,没有太多的选择。这回答了你的问题吗?