将PDF嵌入到HTML中而不保存实际文件

时间:2016-10-02 11:21:39

标签: php html pdf

问题:是否可以在HTML(5)页面上嵌入PDF数据,而无需链接到实际的服务器上磁盘PDF文件。

背景: 我只是将我们的网上商店/ erp系统的文件转换为pdf文件,这通常是通过电子邮件发送发票,收据等的事实上的。

现在我有了这个可爱的预览/发送文档弹出窗口,其中显示了发票,订单确认等,并允许员工选择其中一个或多个发送给客户。以前我使用的html文档很容易“嵌入”我的弹出窗口,但是当它通过电子邮件发送时它们不是一个很好的选择。

所以我现在将所有文档都更改为PDF文件,这些文件看起来更好,并且不像垃圾邮件过滤器那样容易被html文件捕获。

目前我将文件保存在我的服务器临时目录中,然后将其作为弹出窗口的一部分嵌入:

<object width="100%" height="100%" type="application/pdf" data="http://dev.foo.bar/temp/<rm-var document_filename>"></object>

这样可行,但每次在弹出窗口中打开文档时,它都会创建一个“临时”文件。在我们的生产环境中,这很快就会导致相当多的文件并开始占用空间。

TcPDF可以发送标题和数据,只在浏览器中查看pdf,而无需将文件保存在任何地方。这基本上就是我想要的,但除了pdf数据是嵌入的或服务器响应的一部分。 html是必需的,因为弹出窗口在我们的系统中被广泛使用,并且只是一种万无一失的方式,我们的员工可以无忧无虑地向正确的客户提供正确的文档。

我真的不介意设置一个cronjob来删除超过一个小时左右的某些文件,但是如果可以从tcpdf中包含一些不需要任何其他方法的PHP文件(或字符串数​​据)额外的清理,我更喜欢它。 Cronjobs和其他“依赖”可能会在未来造成麻烦,如果有人混淆了他们不了解的设置。

1 个答案:

答案 0 :(得分:0)

Just Base64对PDF进行编码并将其设置为数据属性的值。