致力于将图像放到多页PDF文档上

时间:2016-06-13 19:52:10

标签: php fpdf fpdi

我一直在使用以下代码将图像标记放在多页pdf文档中的单个页面上。我遇到的问题是,如果我将页面设置为第5页,如果我将其作为最后一页,我希望能够选择文档中的任何页面,它将不会保存PDF的其余部分。 下面是我的代码

  <?php

  require_once('fpdf/fpdf.php');
  require_once('fpdi/fpdi.php');
$pdf = new FPDI();
$fullPathToPDF = 'scann/Mackay/my.pdf';

$pdf->setSourceFile($fullPathToPDF);
//echo $pageCount;

for ($i = $t; $i <= $pageCount; $i++) {
    $pdf->importPage($t);
    $pdf->AddPage();
    $pdf->useTemplate($t);
}
//puting the stamp onto the page 
$pdf->Image('Posted.png', 100, 120, 0, 0, 'png');
//save the file 
$pdf->Output($fullPathToPDF, 'F');
?>

2 个答案:

答案 0 :(得分:0)

您需要在循环遍历for循环中的所有源文件页面时插入图像:     

require_once('fpdf/fpdf.php');
require_once('fpdi/fpdi.php');
$pdf = new FPDI();
$fullPathToPDF = 'scann/Mackay/my.pdf';

$pageCount = $pdf->setSourceFile($fullPathToPDF);
//echo $pageCount;

for ($i = 1; $i <= $pageCount; $i++) {
    $pdf->importPage($i);
    $pdf->AddPage();
    $pdf->useTemplate($i);

    if($i == 5){
        //puting the stamp onto the page 
        $pdf->Image('Posted.png', 100, 120, 0, 0, 'png');
    }
}

//save the file 
$pdf->Output($fullPathToPDF, 'F');
?>

答案 1 :(得分:0)

Wades解决方案对我不起作用,我认为最新版本的FPDI改变了处理方式。我不得不将$ pdf-&gt; importPage($ i)分配给一个新变量,并将其传递给useTemplate以使其工作。

for ($i = 1; $i <= $pageCount; $i++) {
    $pdf->AddPage();
    $imported = $pdf->importPage($i);
    $pdf->useTemplate($imported);

    if($i == 5){
        //puting the stamp onto the page 
        $pdf->Image('Posted.png', 100, 120, 0, 0, 'png');
    }
}