• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

FPDI läuft nicht zusammen mit FPDF

joergi

Mitglied
Hi,

ich habe vor kurzem die fpdf Version 1.85 zusammen mit der aktuellen Version fpdi installiert. Ein script ohne Einbindung von fpdi läuft problemlos:

PHP:
test1.php
<?php
define('FPDF_FONTPATH','../fonts/');
require('../fpdf/fpdf.php');
date_default_timezone_set('Europe/Berlin');
$pdf=new FPDF('P','mm','A4');
$pdf->AddFont('intern','','PT_Sans-Web-Regular.php');
$pdf->AddFont('intern','B','PT_Sans-Web-Bold.php');
$pdf->AddFont('intern','I','PT_Sans-Web-Italic.php');
$pdf->AddFont('intern','BI','PT_Sans-Web-BoldItalic.php');
$pdf->SetDisplayMode("fullpage");
$pdf->AddPage();
$pdf->SetFont('intern','',30);
$pdf->Cell(40,10,'Hallo Welt!');
$pdf->Output();
?>

Binde ich jedoch zusätzlich fpdi mit ein

PHP:
test2.php
<?php
define('FPDF_FONTPATH','/../fonts/');
require_once('../fpdf/fpdf.php');
require_once('../fpdi2/src/autoload.php');
$pdf = new \setasign\Fpdi\Fpdi();
$pdf->AddFont('intern','','PT_Sans-Web-Regular.php');
$pdf->AddFont('intern','B','PT_Sans-Web-Bold.php');
$pdf->AddFont('intern','I','PT_Sans-Web-Italic.php');
$pdf->AddFont('intern','BI','PT_Sans-Web-BoldItalic.php');
$pdf->AddPage();
$pdf->setSourceFile("start.pdf");
$tplIdx = $pdf->importPage(1);
$pdf->useTemplate($tplIdx, 10, 10, 100);
$pdf->SetFont('intern','',30);
$pdf->SetTextColor(255, 0, 0);
$pdf->SetXY(30, 30);
$pdf->Write(0, 'Das ist ein Test');
$pdf->Output();
?>

bricht der script mit den folgenden Fehlermeldungen ab:

Code:
Warning: include(/../fonts/PT_Sans-Web-Regular.php): failed to open stream: No such file or directory in /var/www/xxxxxxxxx/html/fpdf/fpdf.php on line 1141

Warning: include(): Failed opening '/../fonts/PT_Sans-Web-Regular.php' for inclusion (include_path='.:/opt/php-7.0/lib/php') in /var/www/xxxxxxxxx/html/fpdf/fpdf.php on line 1141

Fatal error: Uncaught Exception: FPDF error: Could not include font definition file in /var/www/xxxxxxxxx/html/fpdf/fpdf.php:271 Stack trace: #0 /var/www/xxxxxxxxx/html/fpdf/fpdf.php(1143): FPDF->Error('Could not inclu...') #1 /var/www/xxxxxxxxx/html/fpdf/fpdf.php(459): FPDF->_loadfont('PT_Sans-Web-Reg...') #2 /var/www/xxxxxxxxx/html/exposes/test2.php(6): FPDF->AddFont('intern', '', 'PT_Sans-Web-Reg...') #3 {main} thrown in /var/www/xxxxxxxxx/html/fpdf/fpdf.php on line 271

Ich weiß nicht was ich falsch mache. Ich bin in der Hinsicht auch nur Laie. Muß evtl. etwas in der JSON Datei von fpdi geändert werden? In meinem Hauptverzeichnis befinden sich die Ordner
fpdi2
test -> test1.php sowie test2.php


Ich hoffe, dass Ihr eine Idee oder Lösung habt. Vielen Dank im voraus :smile:
 
Warning: include(/../fonts/PT_Sans-Web-Regular.php): failed to open stream: No such file or directory in /var/www/xxxxxxxxx/html/fpdf/fpdf.php on line 1141

Das ist doch eigentlich eindeutig, die Datei PT_Sans-Web-Regular.php wird nicht gefunden. Vermutlich liegt das an
PHP:
define('FPDF_FONTPATH','/../fonts/');
 
Daran kann es leider nicht liegen, denn "test1.php" greift ja auf denselben font zurück. Und dieser script läuft einwandfrei!
 
test1.php
PHP:
define('FPDF_FONTPATH','../fonts/');
test2.php
PHP:
define('FPDF_FONTPATH','/../fonts/');
Da fällt dir nichts auf?
 
Zurück
Oben