【发布时间】:2022-01-17 21:49:20
【问题描述】:
有很多库可以用 php 创建 pdf 文件:fpdf, tcpdf, domPdf, ...
还有一个php扩展PDFlib,不过不是免费的。
我的问题是如何仅使用 native php 创建一个简单的 pdf 文件?
【问题讨论】:
-
你对PDF文件的结构进行逆向工程,大量使用
pack()函数。撇开玩笑不谈,你需要一个库,PHP 本身并不这样做。理论上你可以做到,但没有理由自己做。 (我不是反对者) -
当这些库已经帮助您做到这一点时,您为什么要这样做?如果您的目的是创建一个更好的库,或者只是为了学术练习,那么期望花费相当长的时间研究 PDF 规范并研究如何构建将某些给定输入转换为 PDF 的相应正确部分的命令文档。 PDF 是一种复杂且令人不快的格式,所以我希望您有足够的时间...
-
大多数人不使用原生 PHP 创建图像,他们使用 GD 库或 ImageMagick 库。 PDF 不像 HTML 那样嵌套了几个容器,而且看起来不错。您需要了解结构并将数据打包成二进制序列。
-
创建任何语言的 PDF 文件都很难,因为 PDF 很难。与 PHP 无关。有许多竞争库和其他工具的原因之一是因为它们都不是完美的,或者具有所有功能。
-
60Mb of size...在现代服务器中是微不足道的。不值得担心,尤其是与在任何地方重新实现类似的东西所付出的巨大努力相比。如果还是 1995 年,我可能会担心一个组件会占用这么多存储空间,但现在我什至不会再看一眼。