2

我想将使用 PHP 和 CSS 生成的 Html 页面直接显示为 pdf。

我为此搜索了很多,但最终有很多库来完成这些任务。但我不想使用任何库,只想通过定义标题标签将其呈现为 PDF。

我不确定,但是内存很少,可能不使用任何 API,库可能是错误的,所以在继续另一个解决方案之前要确认。

希望可能有简单的方法来做到这一点,因为这是大多数产品最需要的功能。

4

1 回答 1

1

首先,我建议为此使用库,因为尽管它“可能是错误的”,但它可能比您或我想出的更正确。其次,(大部分)这不是使用标题完成的;)

如果你真的想自己做,可以在这里找到 PHP 中的原生 PDF 函数,像FPDF(我个人最喜欢的)这样的库直接在它们的实现中使用。

要将页面打印为 PDF,您必须首先呈现它(创建 HTML DOM 并应用 CSS),而 PHP 不这样做。您必须首先使用 WebKit 等 HTML 引擎呈现页面,然后返回 PHP 进行打印操作。

同样,这可能应该使用库来完成,从而节省您的麻烦和调试。当然,这个问题之前已经被问过,所以有很多可用的信息。

但是如果你想自己去,那就是你必须走(或爬)的路。我,我会坐公共汽车。


更新

要在评论中回答您的问题:

<?php header("Content-type: application/pdf;charset=UTF-8"); ?> 将其放在页面顶部会呈现 pdf,但无法以这种方式生成。那么,你能为此提出任何建议吗?

该标头用于 HTTP 请求。当请求从服务器返回时,它会发送一个标头,提示返回的内容类型(JSON、图像、pdf 等等)。

换句话说,该标题实际上并没有生成PDF,它只是告诉浏览器期待PDF。在标头之后,服务器然后发送一些东西(希望是 PDF)。

这就是为什么我说您的原始问题没有使用标题完成。

于 2012-11-29T00:54:58.127 回答