Wir stellen Ihnen hier eine offenen Schnittstelle für die Konvertierung Ihrer Schriftarten zur Nutzung in FPDF zur Verfügung. Sie haben die Möglichkeit Ihre TTF Schriftarten in FPDF Font File Packages konvertieren zulassen, um diese bei Ihrer PDF Erzeugung nutzen zu können.
An dieser Stelle möchten wir uns bei www.fpdf.org für die geleistete Vorarbeit herzlich bedanken!
Für dieses Beispiel-Skript ist cURL erforderlich.
Erstellen Sie ein Formular auf Ihrer Website, das folgendermassen aufgebaut ist:
<form action="*1" method="post" enctype="multipart/form-data">
*2
</form>
*1) Name Ihrer PHP-Datei, in der Sie sich auch mit dem plan-i-Server verbinden
*2) Das Formular muss enthalten:
2 a) Ein File-Feld, mit dem Sie Ihre *.ttf-Datei hochladen
2 b) evtl. andere Felder, die Sie brauchen (z.B. Style - Optional)
Folgend ein Beispiel-PHP-Skript:
Bitte passen Sie hier noch das Zielverzeichnis an.
<?PHP
// Connect to plan-i server and setting of the params
$ch = curl_init();
$aData = array(
'session_id' => session_id(), // Session-ID
'font' => '@'.$_FILES['font']['tmp_name'], // temporary file name after upload
'submit' => 1, // flag !!!must!!! be put
'name' => $_FILES['font']['name'] // original name of *.ttf file
);
curl_setopt($ch, CURLOPT_URL, 'http://update.webdynamics.de/fonts.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $aData);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Return from plan-i server
$sReturn = curl_exec($ch);
// Files successfull created?
if(eregi('Font file compressed', $sReturn) && eregi('Font definition file generated', $sReturn))
{
// Your folder where you would like to save the provided files + file name without .ttf
$sName = str_replace('.ttf','',$_FILES['font']['name']);
$sDir = '/fpdf/fonts/'.$sName;
$sTmpFile = 'http://update.webdynamics.de/fonts.php?filename='.session_id().'_'.$sName;
// Create the 3 files on your server
file_put_contents($sDir.'.afm', str_replace(session_id().'_', '', file_get_contents($sTmpFile.'.afm', FILE_BINARY)));
file_put_contents($sDir.'.z', str_replace(session_id().'_', '', file_get_contents($sTmpFile.'.z', FILE_BINARY)));
file_put_contents($sDir.'.php', str_replace(session_id().'_', '', file_get_contents($sTmpFile.'.php', FILE_BINARY)));
}?>
download code exampleFragen hierzu bitte an support@plan-i.de.