FPDF/FPDI Fehler: Fatal error: Class 'setasign\Fpdi\FpdfTpl' not found in

Ich bin versucht, Wasserzeichen einem bestehenden PDF-Dokument, und dieser Fehler wurde tripping me up für die letzten zwei Tage...

Habe ich die FPDI-Bibliothek in fpdi/src/, und die fpdf-Bibliothek in /fpdf/

Die Datei werfen der Fehler ist Fpdi.php (Zeile 27). Hier sind die ersten 30 Zeilen:

HTML:

<?php
/**
 * This file is part of FPDI
 *
 * @package   setasign\Fpdi
 * @copyright Copyright (c) 2017 Setasign - Jan Slabon (https://www.setasign.com)
 * @license   http://opensource.org/licenses/mit-license The MIT License
 * @version   2.0.0
 */
 

namespace setasign\Fpdi;

use setasign\Fpdi\PdfParser\CrossReference\CrossReferenceException;
use setasign\Fpdi\PdfParser\Type\PdfIndirectObject;
use setasign\Fpdi\PdfParser\Type\PdfNull;
//use setasign\Fpdi\FpdfTpl;

/**
 * Class Fpdi
 *
 * This class let you import pages of existing PDF documents into a reusable structure for FPDF.
 *
 * @package setasign\Fpdi
 */
class Fpdi extends FpdfTpl
{
    use FpdiTrait;

Hier ist meine Datei, die ich benutze, um Wasserzeichen die .pdf-Dokument on-the-fly:

HTML:

<?php
	$fullPathToFile = $_GET['fileToWaterMark'];
	
	require('rotation.php');

    require_once('fpdf/fpdf.php');
	require_once 'fpdi/src/fpdi.php';
	require_once('fpdi/src/FpdfTpl.php');


	class PDF_Rotate extends FPDI {

	var $angle = 0;

	function Rotate($angle, $x = -1, $y = -1) {
		if ($x == -1)
			$x = $this->x;
		if ($y == -1)
			$y = $this->y;
		if ($this->angle != 0)
			$this->_out('Q');
		$this->angle = $angle;
		if ($angle != 0) {
			$angle*=M_PI / 180;
			$c = cos($angle);
			$s = sin($angle);
			$cx = $x * $this->k;
			$cy = ($this->h - $y) * $this->k;
			$this->_out(sprintf('q %.5F %.5F %.5F %.5F %.2F %.2F cm 1 0 0 1 %.2F %.2F cm', $c, $s, -$s, $c, $cx, $cy, -$cx, -$cy));
		}
	}

	function _endpage() {
		if ($this->angle != 0) {
			$this->angle = 0;
			$this->_out('Q');
		}
		parent::_endpage();
	}

	}



	//$fullPathToFile = "chinmay235.pdf";

	class PDF extends PDF_Rotate {

	var $_tplIdx;

	function Header() {
		global $fullPathToFile;

		//Put the watermark
		$this->Image('http://chart.googleapis.com/chart?cht=p3&chd=t:60,40&chs=250x100&chl=Hello|World', 40, 100, 100, 0, 'PNG');
		$this->SetFont('Arial', 'B', 50);
		$this->SetTextColor(255, 192, 203);
		$this->RotatedText(20, 230, 'Raddyx Technologies Pvt. Ltd.', 45);

		if (is_null($this->_tplIdx)) {

			//THIS IS WHERE YOU GET THE NUMBER OF PAGES
			$this->numPages = $this->setSourceFile($fullPathToFile);
			$this->_tplIdx = $this->importPage(1);
		}
		$this->useTemplate($this->_tplIdx, 0, 0, 200);


	}

	function RotatedText($x, $y, $txt, $angle) {
		//Text rotated around its origin
		$this->Rotate($angle, $x, $y);
		$this->Text($x, $y, $txt);
		$this->Rotate(0);
	}

	}


	$pdf = new PDF();
	$pdf->AddPage();
	$pdf->SetFont('Arial', '', 12);
	$pdf->Output();
	?>

Ich bin sehr kompetent mit PHP, aber dieser Fehler hat wirklich mich geworfen, für eine Schleife. Wenn noch mehr Informationen benötigt werden, lasst es mich wissen und ich werde zur Verfügung stellen.

InformationsquelleAutor Jesse Pardue | 2017-11-14
Schreibe einen Kommentar