PDF erzeugen mit PHP

Venillla

Mitglied
Ich versuche durch php einen pdf-dokument erzeugen, aber es kommt immer eine Fehlermeldung.

Warning: FPDF::include(helveticab.php) [function.FPDF-include]: failed to open stream: No such file or directory in C:\xampp\php\PEAR\fpdf.php on line 550

Warning: FPDF::include() [function.include]: Failed opening 'helveticab.php' for inclusion (include_path='.;C:\xampp\php\pear\') in C:\xampp\php\PEAR\fpdf.php on line 550
FPDF error: Could not include font metric file


Das Script sieht so aus:

PHP:
<?php
require('fpdf.php');

$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hallo Welt!');
$pdf->Output();
?>


An was liegt es? Ich hab den Xampp..
Bitte um Hilfe..
 
Das Script in deiner fpdf.php probiert auf Zeile 550 die 'helveticab.php' zu includen.
Diese existiert aber nicht oder liegt nicht an dem angegeben ort.
 
Hab noch nie mit fpdf gearbeitet also kann ich dir da jetzt nicht wirklich weiterhelfen.
Habe jetzt gerade mal schnell das Packet runtergeladen und mir mal die Zeile 550 angeschaut.

Dort ist dieser Include:
PHP:
include($this->_getfontpath().$file.'.php');

Das ist die deklaration für die Funktion _getfontpath():
PHP:
function _getfontpath()
{
	if(!defined('FPDF_FONTPATH') && is_dir(dirname(__FILE__).'/font'))
		define('FPDF_FONTPATH',dirname(__FILE__).'/font/');
	return defined('FPDF_FONTPATH') ? FPDF_FONTPATH : '';
}

Musst dich mal durch das Tutorial bzw. das doc arbeiten und schauen wie die Pfade richtig gesetzt werden müssen.
 
die datei fpdf.php wurde doch durch das xampp packet mitgeschickt.. wieso muss ich jetzt da was ändern..? dachte xampp enthält alles..

gibt es eine einfachere lösung als im fpdf.php die Befehle zu ändern?
 
Hab gerade mal nach geschaut die helveticab.php liegt im Xampp-Ordner\php\PEAR\fpdf\font. Musst nur jetzt mal schauen wie die Funktion _getfontpath() in deiner fpdf.php aussieht.

EDIT: Bzw. mal schauen wie FPDF_FONTPATH deklariert wird.
 
Zuletzt bearbeitet:
Bei mir sieht es genau so aus wie du oben hineinkopiert hast:

PHP:
function _getfontpath()
{
	if(!defined('FPDF_FONTPATH') && is_dir(dirname(__FILE__).'/font'))
		define('FPDF_FONTPATH',dirname(__FILE__).'/font/');
	return defined('FPDF_FONTPATH') ? FPDF_FONTPATH : '';
}
 
meinst du in meinem fpdf.php script?
nein, nur die, die ich hineinkopiert hab.

was muss ich jetzt tun? wäre sehr froh wenn mir jemand helfen könnte.
 
Kannst ja mal probieren, wenn du am anfang der fpdf.php das anfügst
PHP:
define('FPDF_FONTPATH',dirname(__FILE__).'/font/');

Wenn das nicht Funktioniert kannst du höchsten noch in deinem Script
PHP:
echo FPDF_FONTPATH;
Dann mal den Pfad überprüfen sonst weiss ich jetzt auch nicht wirklich.
 
Zurück