<?php
require_once 'vendor/autoload.php';

// Erstellen eines neuen FPDF-Objekts
$pdf = new \setasign\Fpdi\Fpdi();

// Angenommen, $json ist dein JSON-String mit Base64-kodierten PDFs
//$jsonArray = json_decode($json, true);
$jsonArray = json_decode(file_get_contents("php://input"), true);

foreach ($jsonArray as $base64Pdf) {
    // Decodieren der Base64-Daten und Erstellen eines temporären Dateipfads
    $pdfContent = base64_decode($base64Pdf);
    $tempPdfPath = tempnam(sys_get_temp_dir(), 'pdf');
    //file_put_contents($tempPdfPath, $pdfContent);
    if (!file_put_contents($tempPdfPath, $pdfContent)) {
        echo "Fehler beim Schreiben der PDF-Datei.\n";
        continue;
    }

    // Anzahl der Seiten im PDF ermitteln
    //$pageCount = $pdf->setSourceFile($tempPdfPath);
    try {
        $pageCount = $pdf->setSourceFile($tempPdfPath);
    } catch (Exception $e) {
        echo "Fehler beim Lesen der PDF-Datei: " . $e->getMessage() . "\n";
        unlink($tempPdfPath);
        continue;
    }

    // Füge alle Seiten zum neuen PDF hinzu
    for ($pageNo = 1; $pageNo <= $pageCount; $pageNo++) {
        $pdf->AddPage();
        $tplIdx = $pdf->importPage($pageNo);
        $pdf->useTemplate($tplIdx);
    }

    // Temporäre Datei löschen
    unlink($tempPdfPath);
}

// Ausgabe des fertigen PDFs
//$pdf->Output('I', 'merged.pdf');
?>
