我们想要将很多PDF文件合并成一个大文件并发送给客户端。但是,我们的生产服务器上的资源非常有限,因此首先合并内存中的所有文件,然后发送完成的PDF文件会导致脚本被终止,因为它耗尽了可用内存。即时创建PDF文件并在尚未完成时进行流式传输?
唯一的解决方案(除了获得更好的服务器,显然)将开始流PDF文件,完全创建之前,绕过内存限制。
但是我想知道这是否可能。 PDF文件在完全创建之前是否可以流式传输?或者PDF文件格式不允许流式传输未完成的文件,因为在完整内容确定之后必须设置一些标题或任何内容?
如果可能,哪个PDF库支持将文件创建为流?大多数我知道的库(比如TCPDF)似乎都在内存中创建了完整的文件,然后最终在某个地方输出完成的结果(即通过$tcpdf->Output()
方法)。