我有一个大的 PDF 文件,这是一个建筑的楼层图,它有所有办公家具的图层,包括座位位置的文本框。
我的目标是使用 PHP 读取此文件,在文档中搜索文本图层,获取文件中的内容和坐标。这样我就可以绘制出座位位置-x / y 坐标。
有没有办法通过 PHP 做到这一点?(甚至 Ruby 或 Python,如果这是必要的)

查看 FPDF(带 FPDI):
http://www.fpdf.org/ http://www.setasign.de/products/pdf-php-solutions/fpdi/这些将让您打开一个 pdf 并在 PHP 中添加内容。我猜你也可以使用它们的功能来搜索现有的内容,你需要的值。
另一个可能的库是 TCPDF:https://tcpdf.org/
更新以添加更现代的库:PDF Pr

有一个 PHP 库(pdfpr),正是你想要的。
项目网站
http://www.pdfpr.org/ github https://github.com/smalot/pdfpr演示页面 / api
http://www.pdfpr.org/demo在项目中包含 pdfpr 后,您可以从mypdf.pdf
中获取所有文本,如下所示:
<?php
$pr = new \installpath\PdfPr\Pr();
$pdf = $pr->pFile('mypdf.pdf');
$text = $pdf->getText();
echo $text;//all text from mypdf.pdf
?>
模拟您可以从 pdf 获取元数据,就像获取 pdf 对象(例如图像)一样。
不完全是 php,但你可以从 php 中执行一个程序将 pdf 转换为临时 html 文件,然后使用 php 解析结果文件。我已经为我的一个项目做了类似的事情,这是我使用的程序:
PdfToHtml生成的 HTML 将文本元素包装在带有绝对位置坐标的 & lt;div & gt;标记中。

你最初的要求是“我有一个大的 PDF 文件,这是一个建筑的平面图”。
我不敢告诉你这可能比你想象的要难。
原因最后一个已知的 lib 每个人用来解析 pdf 是 smalot,并且这个已知遇到关于大文件的问题。
在这里,寻找一个真正的 php lib 来解析 pdf,没有任何内存峰值需要一个 php 配置来禁用内存限制,因为很多“开发人员”(我想这是不可取的)。
有关 smalot 性能的更多详细信息,请参阅此帖子:https://github.com/smalot/pdfpr/issues/163
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(71条)