使用php读取pdf文件

我有一个大的 PDF 文件,这是一个建筑的楼层图,它有所有办公家具的图层,包括座位位置的文本框。

我有一个大的 PDF 文件,这是一个建筑的楼层图,它有所有办公家具的图层,包括座位位置的文本框。

我的目标是使用 PHP 读取此文件,在文档中搜索文本图层,获取文件中的内容和坐标。这样我就可以绘制出座位位置-x / y 坐标。

有没有办法通过 PHP 做到这一点?(甚至 Ruby 或 Python,如果这是必要的)

41

查看 FPDF(带 FPDI):

http://www.fpdf.org/ http://www.setasign.de/products/pdf-php-solutions/fpdi/

这些将让您打开一个 pdf 并在 PHP 中添加内容。我猜你也可以使用它们的功能来搜索现有的内容,你需要的值。

另一个可能的库是 TCPDF:https://tcpdf.org/

更新以添加更现代的库:PDF Parser

30

有一个 PHP 库(pdfparser),正是你想要的。

项目网站

http://www.pdfparser.org/ github https://github.com/smalot/pdfparser

演示页面 / api

http://www.pdfparser.org/demo

在项目中包含 pdfparser 后,您可以从mypdf.pdf中获取所有文本,如下所示:

<?php
$parser = new \installpath\PdfParser\Parser();
$pdf    = $parser->parseFile('mypdf.pdf');  
$text = $pdf->getText();
echo $text;//all text from mypdf.pdf
?>

模拟您可以从 pdf 获取元数据,就像获取 pdf 对象(例如图像)一样。

5

不完全是 php,但你可以从 php 中执行一个程序将 pdf 转换为临时 html 文件,然后使用 php 解析结果文件。我已经为我的一个项目做了类似的事情,这是我使用的程序:

PdfToHtml

生成的 HTML 将文本元素包装在带有绝对位置坐标的 & lt;div & gt;标记中。

3

你最初的要求是“我有一个大的 PDF 文件,这是一个建筑的平面图”。

我不敢告诉你这可能比你想象的要难。

原因最后一个已知的 lib 每个人用来解析 pdf 是 smalot,并且这个已知遇到关于大文件的问题。

在这里,寻找一个真正的 php lib 来解析 pdf,没有任何内存峰值需要一个 php 配置来禁用内存限制,因为很多“开发人员”(我想这是不可取的)。

有关 smalot 性能的更多详细信息,请参阅此帖子:https://github.com/smalot/pdfparser/issues/163

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(400)
流浪-无平行标志的含义(vagrants meaning)
上一篇
python中是否有大于但小于函数
下一篇

相关推荐

  • python网络爬虫pdf深入理解网络数据采集技术

    Python网络爬虫PDF是一种使用Python语言来抓取网络上的PDF文件的技术。它可以帮助我们从网络上抓取大量的PDF文件,并将它们存储到本地硬盘中。下面是一个使用Python网络爬虫抓取PDF文件的示例代码:…

    2023-01-06 06:10:35
    0 25 12
  • python极简讲义pdf从入门到精通

    Python极简讲义PDF是一本关于Python编程的书,旨在帮助初学者快速了解和掌握Python编程语言的基础知识。它涵盖了从Python基础知识到更高级的内容,包括变量、数据类型、流程控制、函数、类和模块等。此外,还介绍了如何使用Python来解决实际问题,以及如何使用Python库和框架来构建功能强大的应用程序。…

    2023-01-14 13:27:32
    0 23 64
  • python编程:从入门到实践 下载:从入门到实践”的PDF文档。

    Python编程:从入门到实践是一本非常好的Python学习书籍,它可以帮助您更好地了解Python语言,从而更好地实现您的目标。…

    2023-01-15 01:43:31
    0 16 46
  • Pdf怎么合成一个文件:如何使用ruby将多个图像组合成一个PDF

    关于Pdf怎么合成一个文件的问题,在combine images in pdf中经常遇到,我有一个图像数组。如何将它们组合成 PDF,每页一个图像?…

    2022-12-07 14:09:07
    0 73 87
  • Python怎样打开文件:打开文件在python中打开受保护的pdf文件

    关于Python怎样打开文件的问题,在fileopen plugin中经常遇到,有没有人知道如何在 python 中打开FileOpen受保护的 PDF 文件?我有用户名和密码。我只是不知道如何将 FileOpen 插件与 python 集成。我目前的方法是使用 python 打开并登录到 Adobe Reader (安装了 FileOpen 插件) 并拍摄页面的屏幕截图。然而这并不理想。…

    2022-11-27 11:20:17
    0 85 37
  • php数组最后一个元素:利用php数组最后一个元素实现新的功能

    示例示例PHP数组最后一个元素可以使用end()函数获取。end()函数将会返回数组中的最后一个元素的值。下面是一个代码示例:…

    2023-01-21 05:01:41
    0 24 16
  • php二维数组转一维数组:数组

    示例示例PHP 二维数组转一维数组可以使用 array_merge() 函数来实现,具体代码示例如下:…

    2023-01-05 00:20:40
    0 25 88
  • phpstorm中文强大的PHP开发工具

    PHPStorm是JetBrains公司出品的一款功能强大的PHP集成开发环境(IDE),它可以帮助开发者快速编写、调试和测试代码。它支持多种语言,包括PHP、JavaScript、HTML、CSS和XML,可以帮助开发者快速构建功能丰富的Web应用程序。…

    2023-01-19 04:29:11
    0 71 57

发表评论

登录 后才能评论

评论列表(83条)