php pdf add watermark

在 PHP 中添加水印到 PDF 文件可以通过使用一些第三方库来实现。这里介绍一下使用 FPDI 和 FPDF 库添加水印的方法:

  • 安装 FPDI 和 FPDF 库
  • 可以通过 Composer 来安装这两个库,运行以下命令:

    composer require setasign/fpdf
    composer require setasign/fpdi
    
  • 创建新的 PHP 文件,并导入库
  • 在 PHP 文件中导入 FPDF 和 FPDI 库:

    require_once 'vendor/autoload.php';
    use setasign\Fpdi\Fpdi;
    
  • 打开 PDF 文件
  • 使用 Fpdi 类打开 PDF 文件:

    $pdf = new Fpdi();
    $pageCount = $pdf->setSourceFile('input.pdf');
    
  • 循环遍历 PDF 文件的每一页
  • 使用循环语句遍历 PDF 文件的每一页:

    for ($pageNumber = 1; $pageNumber <= $pageCount; $pageNumber++) {
        $pdf->AddPage();
        $templateId = $pdf->importPage($pageNumber);
        $pdf->useTemplate($templateId);
        // 在每一页上添加水印
        // ...
    

    使用 FPDF 库在每一页上添加水印:

    $pdf->SetFont('Arial', 'B', 50);
    $pdf->SetTextColor(255, 192, 203);
    $pdf->RotatedText(45, 150, 'WATERMARK', 45);
    

    使用 Fpdi 类保存输出 PDF 文件:

    $pdf->Output('output.pdf', 'F');
    

    完整代码如下:

    require_once 'vendor/autoload.php';
    use setasign\Fpdi\Fpdi;
    $pdf = new Fpdi();
    $pageCount = $pdf->setSourceFile('input.pdf');
    for ($pageNumber = 1; $pageNumber <= $pageCount; $pageNumber++) {
        $pdf->AddPage();
        $templateId = $pdf->importPage($pageNumber);
        $pdf->useTemplate($templateId);
        // 在每一页上添加水印
        $pdf->SetFont('Arial', 'B', 50);
        $pdf->SetTextColor(255, 192, 203);
        $pdf->RotatedText(45, 150, 'WATERMARK', 45);
    $pdf->Output('output.pdf', 'F');
    

    以上就是使用 PHP 在 PDF 文件中添加水印的方法,希望对你有帮助。

  •