[PHP] fpdf- & fpdi-Klasse mehrere Seiten bearbeiten

Steusi

Nasenbär
Hallo Leute,
laut Boardsuche bin ich nicht der Erste mit dem Problem, doch bisher gab es keine Lösung.
Eigentlich wollte ich gerade meine Frage formulieren, aber dann fiel mir die einfache Lösung wie Schuppen von den Augen. Vielleicht ging es meinen "Vor-Postern" auch so, aber dann kann man es wenigstens sagen.

Also mal kurz für die zukünftige User, welche noch die Suche verwenden! (Leider werden das immer weniger :( )

Angenommen ich habe 5 PDF-Dokumente á 10 Seiten, welche ich alle um das heutige Datum versehen möchte.

Dann lässt es sich mit 2 Schleifen sehr einfach lösen:
PHP:
// PDF - Font-Pfad
define('FPDF_FONTPATH','/var/www/xyz/PDF/font/');
// PDF - FPDF Klasse
require('PDF/fpdf.php');
require('PDF/fpdi.php');
require('functions.inc.php');

// Quelle und Ziel definieren
$path_source = "source/";
$path_dest = "dest/";

// Alle Dateien aus der Quelle in ein Array einlesen
$pdf_file = file_to_array($path_source);


for($j=0;$j<count($pdf_file);$j++){
    // initiate FPDI
    $pdf =& new FPDI();
    // Seitenzahlen ermitteln
    $pagecount = $pdf->setSourceFile($path_source.$pdf_file[$j]);

    for($i = 1;$i<=$pagecount;$i++){
        // Seite hinzufügen
        $pdf->AddPage();

        // Quelldatei setzen
        $pdf->setSourceFile($path_source.$pdf_file[$j]);

        // Seite X importieren
        $tplIdx = $pdf->importPage($i);

        $pdf->useTemplate($tplIdx);

        // Texteigenschaften
        $pdf->SetFont('Arial');
        $pdf->SetTextColor(255,0,0);
        $pdf->SetXY(140, 110);

        // heutige Datum schreiben
        $pdf->Write(0, date("d.m.Y",time()));
    }

    // Datei speichern
    $pdf->Output($path_dest.$pdf_file[$j].'_'.date("d.m.Y",time()).'.pdf','F');
    unset($pdf);
}

Gruß Steusi
 
Zurück