Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将PDF嵌入HTML而不保存实际文件_Php_Html_Pdf - Fatal编程技术网

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

Php 将PDF嵌入HTML而不保存实际文件,php,html,pdf,Php,Html,Pdf,问题:是否可以在HTML(5)页面上嵌入PDF数据,而不链接到实际的服务器磁盘PDF文件。 背景: 我刚刚将我们的网店/erp系统的文档转换为pdf文件,通常这些文件实际上是通过电子邮件发送发票、收据等 现在,我有了这个可爱的预览/发送文档弹出窗口,其中显示了发票、订单确认等,并允许员工选择其中一个或多个发送给客户。以前我使用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和其他“依赖项”可能会在将来造成麻烦,如果其他人干扰他们不知道的设置。

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

我记得对象规范规定数据应该是url,事实上,我试着将pdf字符串放入data属性,但只得到一个空白页。我还尝试了普通的mpdf->output(null,'S')和base64编码,但没有成功。