给生成的 PDF 一个自定义标题

Give the generated PDF a custom title

我使用命令合并了两个 PDF

$cmd = "gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=$outputName ";
这对我有用。但问题是新生成的 PDF 的标题没有按照我在 header('Content-Disposition: inline; filename="Test.pdf"'); 中设置的那样设置 我希望标题是 Test.pdf,但标题仍然是合并 PDF 中最后一个 PDF 的标题。

我觉得您需要在 PDF 文件的文档/信息字典中设置标题。您可以通过发送 DOCINFO pdfmark 来做到这一点。

您可以通过谷歌搜索找到 pdfmark 参考手册。它在 Adob​​e 网站上,但他们经常移动家具,因此引用今天的 URL.

毫无意义

您可以找到 Acrobat 9 参考文献第 28 页上描述的 DOCINFO pdfmark(我不知道是否有更新的),您需要类似的东西:

[ /Title (My Title goes here) /DOCINFO pdfmark

这是 PostScript,因此您需要将其作为 PostScript 提供给 Ghostscript,这意味着您需要 -c-f 开关。所以像:

gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=$outputName -c "[ /Title (My Title goes here) /DOCINFO pdfmark" -f

你很幸运我发现了这个,因为你没有用 Ghostscript 标记它。