温馨提示×

php dompdf 如何添加水印

PHP
小樊
81
2024-11-26 02:22:04
栏目: 编程语言

要在 PHP 中使用 dompdf 添加水印,请按照以下步骤操作:

  1. 确保已经安装了 dompdf 库。如果还没有安装,可以通过 Composer 安装:
composer require barryvdh/laravel-dompdf
  1. 在你的项目中创建一个新的 PHP 文件(例如:watermark.php),并添加以下代码:
<?php
require_once 'vendor/autoload.php';

use Dompdf\Dompdf;
use Dompdf\Options;

// 创建一个新的 dompdf 实例
$dompdf = new Dompdf(Options::DOMPDF_ENV_DEBUG);

// 设置文档信息
$dompdf->set_option('isRemoteEnabled', true);

// 设置文档源文件
$source_file = 'path/to/your/document.pdf';
$destination_file = 'path/to/your/watermarked_document.pdf';

// 加载 PDF 文档
$dompdf->loadHtmlFile($source_file);

// 添加水印文本
$text = 'Watermark';
$font = 'path/to/your/font.ttf'; // 字体文件路径,需要是ttf格式
$font_size = 18; // 字体大小
$opacity = 0.5; // 水印透明度,范围从0到1
$color = [0, 0, 0]; // 水印颜色,使用RGB数组表示

$dompdf->get_canvas()->text($text, 100, 100, null, $font, $font_size, $color, null, 'C');

// 渲染 PDF
$dompdf->render();

// 保存 PDF 到文件
$dompdf->stream($destination_file, ['Attachment' => 0]);
  1. 修改 $source_file$destination_file 变量的值,使其指向你的 PDF 文件和期望的水印后文件。

  2. 修改 $font 变量的值,使其指向你要使用的水印字体文件的路径。确保该字体文件是可用的,并且具有适当的许可。

  3. 运行 watermark.php 文件,它将生成一个包含水印的 PDF 文件。

注意:这个方法添加的是文本水印。如果你想添加图片水印,可以使用 $dompdf->get_canvas()->image() 方法。

0