首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用laravel中的mpdf向每个页面添加水印

如何使用laravel中的mpdf向每个页面添加水印
EN

Stack Overflow用户
提问于 2019-01-25 10:43:25
回答 3查看 4.3K关注 0票数 0

我使用niklasravnsborg/laravel-pdf包在laravel生成一个pdf。在这个代码中,我添加了水印,但是水印只出现在最后一个页面上,尽管我希望每个页面都有水印。

代码语言:javascript
复制
$pdf = PDFm::loadHtml($result->document);
$pdf->mpdf->SetWatermarkText('DRAFT');
$pdf->mpdf->showWatermarkText = true;
return $pdf->download('hdtuto.pdf');
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-01-25 11:02:27

从文档来看,它应该能工作。但是,你能试一试吗?

代码语言:javascript
复制
$config = ['instanceConfigurator' => function($mpdf) {
    $mpdf->SetWatermarkText('DRAFT');
    $mpdf->showWatermarkText = true;
}]

PDF::loadHtml($result->document, $config)->download('hdtuto.pdf');

在本例中,我们使用正确的配置实例初始化PDF实例,而不是在加载HTML之后执行。

票数 0
EN

Stack Overflow用户

发布于 2019-01-25 11:12:45

mPDF 文档

如果变量$showWatermark设置为1或真,则在打印页脚时,水印将添加到每一页中。

尝试将页眉/页脚添加到PDF中,并设置相应的标志

票数 0
EN

Stack Overflow用户

发布于 2020-11-21 05:06:11

如果有人试图使用刀片文件而不是直接的html文档,则可以使用视图函数将html内容返回给loadHtml方法。

代码语言:javascript
复制
$config = ['instanceConfigurator' => function($mpdf) {
    $mpdf->SetWatermarkText('DRAFT');
    $mpdf->showWatermarkText = true;
}]

$pdf = PDF::loadHtml(view('path.to.blade_file', $blade_data), $config);

return $pdf->stream('DocumentName.pdf');

如果要将图像用作水印,则为。

代码语言:javascript
复制
$config = ['instanceConfigurator' => function ($mpdf) {
                $mpdf->SetWatermarkImage(asset('path/to/image_file'));
                $mpdf->showWatermarkImage = true;
                // $mpdf->watermarkImageAlpha = 0.2; // image opacity 
                // dd($mpdf) // show all attributes 
            }];

            $pdf = PDF::loadHtml(view('path.to.blade_file', $blade_data), $config);

            return $pdf->stream('DocumentName.pdf');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54363645

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档