<?php

namespace Snapshots;

/**
 * @group snapshot
 */
class WatermarkSnapshotTest extends Snapshot
{
	/**
	 * @return string A unique identifier / name for the snapshot
	 */
	public function getId()
	{
		return 'watermark';
	}

	/**
	 * Generate a PDF document by initializing the Mpdf object on $this->mpdf and
	 * loading it with content
	 *
	 * @return   void
	 * @internal Don't call any $this->mpdf->Output*() method
	 */
	public function generatePdf()
	{
		ob_start();
		?>
		<h1>mPDF</h1>
		<h2>Watermarks</h2>
		<p>P: Nulla felis erat, imperdiet eu, ullamcorper non, nonummy quis, elit. Suspendisse potenti. Ut a eros at ligula
			vehicula pretium. Maecenas feugiat pede vel risus. Nulla et lectus. Fusce eleifend neque sit amet erat. Integer
			consectetuer nulla non orci. Morbi feugiat pulvinar dolor. Cras odio. Donec mattis, nisi id euismod auctor, neque
			metus pellentesque risus, at eleifend lacus sapien et risus. Phasellus metus. Phasellus feugiat, lectus ac aliquam
			molestie, leo lacus tincidunt turpis, vel aliquam quam odio et sapien. Mauris ante pede, auctor ac, suscipit quis,
			malesuada sed, nulla. Integer sit amet odio sit amet lectus luctus euismod. Donec et nulla. Sed quis orci. </p>

		<hr />

		<div>DIV: Proin aliquet lorem id felis. Curabitur vel libero at mauris nonummy tincidunt. Donec imperdiet. Vestibulum
			sem sem, lacinia vel, molestie et, laoreet eget, urna. Curabitur viverra faucibus pede. Morbi lobortis. Donec dapibus.
			Donec tempus. Ut arcu enim, rhoncus ac, venenatis eu, porttitor mollis, dui. Sed vitae risus. In elementum sem placerat
			dui. Nam tristique eros in nisl. Nulla cursus sapien non quam porta porttitor. Quisque dictum ipsum ornare tortor. Fusce
			ornare tempus enim. </div>
		<div>DIV: Proin aliquet lorem id felis. Curabitur vel libero at mauris nonummy tincidunt. Donec imperdiet. Vestibulum
			sem sem, lacinia vel, molestie et, laoreet eget, urna. Curabitur viverra faucibus pede. Morbi lobortis. Donec dapibus.
			Donec tempus. Ut arcu enim, rhoncus ac, venenatis eu, porttitor mollis, dui. Sed vitae risus. In elementum sem placerat
			dui. Nam tristique eros in nisl. Nulla cursus sapien non quam porta porttitor. Quisque dictum ipsum ornare tortor.
			Fusce ornare tempus enim. </div>

		<blockquote>Blockquote: Maecenas arcu justo, malesuada eu, dapibus ac, adipiscing vitae, turpis. Fusce mollis. Aliquam
			egestas. In purus dolor, facilisis at, fermentum nec, molestie et, metus. Maecenas arcu justo, malesuada eu, dapibus ac,
			adipiscing vitae, turpis. Fusce mollis. Aliquam egestas. In purus dolor, facilisis at, fermentum nec, molestie et,
			metus.</blockquote>

		<address>
			Address: Vestibulum feugiat, orci at imperdiet tincidunt, mauris erat facilisis urna, sagittis ultricies dui
			nisl et lectus. Sed lacinia, lectus vitae dictum sodales, elit ipsum ultrices orci, non euismod arcu diam non metus.
		</address>
		<?php
		$html = ob_get_clean();

		$this->mpdf = new \Mpdf\Mpdf([
			'watermarkAngle' => 135,
			'showWatermarkText' => true,
			'showWatermarkImage' => true,
		]);
		$this->mpdf->SetBasePath(__DIR__ . '/../data');

		$this->mpdf->SetWatermarkText('DRAFT');
		$this->mpdf->WriteHTML($html);

		$this->mpdf->AddPage();
		$this->mpdf->SetWatermarkImage('img/tiger.webp', 1, [50, 50], [160,10]);
		$this->mpdf->WriteHTML('<h2>Using a Watermark as a Header</h2>');
		$this->mpdf->WriteHTML($html);

		$this->mpdf->AddPage();
		$this->mpdf->SetWatermarkImage('img/tiger.webp', 0.15, 'F');
		$this->mpdf->WriteHTML('<h2>Using a Watermark Image as Background</h2>');
		$this->mpdf->WriteHTML($html);
	}
}
