如何在fpdf输出上获取页面标题?

时间:2012-09-05 22:19:39

标签: php title fpdf page-title

我正在尝试使用fpdf输出pdf时显示页面标题。

目前我只获取了用于创建pdf的.php文件的路径。 e.g。

  

www.mydomain / INC / PDF / PHP的

如果我输出的不是fpdf代码,例如

<title>This is my title</title>

<title><? echo $title ?></title>

我收到这样的错误......

  

某些数据已经输出,无法发送PDF

这是因为你只能在页面上输出fpdf数据。那么可以用fpdf或者更确切地说与fpdf一起添加标题标签吗?

看到页面标题而不是我的pdf.php文件的路径会更好。

干杯

2 个答案:

答案 0 :(得分:5)

FPDF发送PDF文件,而不是HTML。因此,默认情况下,浏览器只是提示用户下载它,或者如果你有插件,它将在浏览器中打开它。就使用标题而言,PDF查看器或PDF插件很可能使用文档的文件名或标题作为页面标题。 ($pdf->SetTitle('FPDF tutorial');

同样,FPDF输出PDF而不是HTML。如果您开始输出HTML,然后尝试回显PDF内容,那将是乱七八糟的。 PHP也不会让你在输出(HTML)启动后修改标题,这会引发错误。

如果您将PDF存储在系统上或者能够配置到FPDF模块的路由,您可以使用HTML和<object>标记将其包含在页面上,但这将是一个不同的设置,需要更多的步骤。通过这样做,您可以添加所需的所有HTML,只需在页面上的小屏幕上显示PDF。

答案 1 :(得分:3)

pdf文件不是HTML文件。 Web浏览器显示标题,因为它读取HTML代码并对其进行解析。

有时Web浏览器会因为外部插件而呈现PDF文件,因此,如果要呈现HTML代码和PDF文件,则必须学习一些HTML并使用框架或iframe。

快速摘要:

<html>
  <header>
    <title>Heya, I'm not a path!</title>
  </header>
  <body>
    <iframe src="Put here the path of the web/file you want to show"></iframe>
  </body>
</html>

正如您所看到的,有一个iframe标记,iframe就像一个加载其中的另一个网页的框,因此Web浏览器将呈现HTML代码(包含标题),然后使用另一个不同的网页呈现一个框在里面(PDF文件),使用css,您可以配置iframe标签以适应Web浏览器大小。