如何使用Yii2 kartik-mpdf添加水印

时间:2018-06-07 07:04:58

标签: php yii2 mpdf

如何使用kartik-pdf在pdf上添加水印图像?

这是我添加的行:

'options' => [
    'title' => 'Title',
    'showWatermarkText' => true,
    'showWatermarkImage' => true,
],
// call mPDF methods on the fly
'methods' => [ 
    'SetHeader' => ['Title'], 
    'SetFooter' => ['{PAGENO}'],
    'SetWatermarkText' => ['DRAFT'],
    'SetWatermarkImage' => $basepath . '/images/imgbox1.jpg',
]

仅显示文字水印。

我是如何使用watermarkImage的?

2 个答案:

答案 0 :(得分:3)

使用kartik mpdf库创建mpdf的对象; 以下代码将使用kartik小部件

创建简单的pdf
use mPDF;
class SiteController extends Controller
{
public funtion createpdf() 
{
    $HTML='your html content';
    $mpdf = new \Mpdf\Mpdf(); //please use your kartik mpdf object here 
    $mpdf->SetWatermarkImage('../images/background.jpg');
    $mpdf->showWatermarkImage = true;

    $mpdf->WriteHTML($HTML);
   // Saves file on the server as 'filename.pdf'
   $mpdf->Output('filename.pdf', \Mpdf\Output\Destination::FILE);
}
}

答案 1 :(得分:0)

将SetWatermarkImage属性设置为数组,如下所示:

// call mPDF methods on the fly
'methods' => [ 
    'SetHeader' => ['Title'], 
    'SetFooter' => ['{PAGENO}'],
    'SetWatermarkText' => ['DRAFT'],
    'SetWatermarkImage' => ['/images/imgbox1.jpg'],
]

此外,您还必须检查图像路径。您使用了$basepath,我通常不使用它,因为我的images文件夹已经在我的web文件夹中。