3

我像一个痣一样用谷歌搜索,但找不到正确的方法。

我正在使用 WKHTMLTOPDF Wrapper Snappy 创建 PDF。

如何将使用 generateFromHtml 方法生成的 pdf 直接发送到浏览器?这就是我想要做的:

header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename="file.pdf"');
echo $snappy->generateFromHtml($contents);
4

1 回答 1

17

您想使用这些getOutput/getOutputFromHtml方法将 PDF 作为字符串返回,generate/generateFromHtml将 PDF 保存到文件中并且不返回任何内容。

header('Content-Type: application/pdf');
// Remove the next line to let the browser display the PDF
header('Content-Disposition: attachment; filename="file.pdf"');
echo $snappy->getOutputFromHtml($contents);

GitHub 上的 Snappy Generator 接口和文档

  • 将 URL 的 PDF 保存$input到文件$output
    generate($input, $output, array $options = array(), $overwrite = false)

  • 将 HTML 的 PDF 保存$html到文件$output
    generateFromHtml($html, $output, array $options = array(), $overwrite = false)

  • 将 URL 的 PDF$input作为字符串返回
    getOutput($input, array $options = array())

  • $html以字符串形式返回 HTML 的 PDF
    getOutputFromHtml($html, array $options = array())

于 2014-02-28T21:43:46.213 回答