FPDF错误:某些数据已经输出,无法发送PDF文件

时间:2016-08-29 14:52:59

标签: php fpdf watermark fpdi

我必须在现有的pdf文件中添加水印。 我使用fpdf和fpdi库。

我的代码是:

<?php
ob_start();
require('fpdf/fpdf.php');
require 'fpdi/fpdi.php';
$pdf = new FPDI();
$pdf->setSourceFile("Rabochaya_tetrad.pdf");
$tplIdx = $pdf->importPage(1, '/MediaBox');
$pdf->addPage();
$pdf->useTemplate($tplIdx, 0, 0, 0, 0, true); 
$pdf->SetFont('Arial');
$pdf->SetTextColor(0, 0, 0);
$pdf->SetXY(58, 45);
$your_dynamic_content="file watermark";
$pdf->Write(0,$your_dynamic_content);
$pdf->Output();
ob_end_flush();
?>

当我尝试执行它时,我收到错误:

  

FPDF错误:某些数据已经输出,无法发送PDF文件

我尝试了FPDF error: Some data has already been output, can't send PDF的所有建议,但这对我没有帮助。

您对这些问题有任何想法吗?

2 个答案:

答案 0 :(得分:1)

您必须在第ob_start();行之前移动$pdf->Output()行。

抛出错误是因为一个(或多个)函数打印了某些内容,并且在显示时您的PDF文件已损坏。

答案 1 :(得分:0)

需要(&#39; FPDF / fpdf.php&#39);

应该是这样的

要求&#39; fpdf / fpdf.php&#39;;

参考http://php.net/manual/en/function.require.php