<?php

// La tua query per ottenere le foto

$additionalphotoslist = new WA_MySQLi_RS("additionalphotoslist", $cmctrfdb, 0);

$additionalphotoslist->setQuery("SELECT * FROM additionalphotos WHERE additionalphotos.idtrf='$idtrf'");

$additionalphotoslist->execute();



// Verifica se ci sono foto da includere

if (count($additionalphotoslist->Results) > 0) {

    // Aggiungi una nuova pagina per il Photo Book

    $pdf->AddPage();

    $pdf->SetFont('Arial', 'B', 20);

    $pdf->Cell(0, 10, 'Photo Book', 0, 1, 'C');

    $pdf->Ln(10); // Spazio dopo il titolo



    // Margini iniziali

    $x_initial = 10;

    $y_initial = 40;



    // Posizione corrente delle immagini

    $x = $x_initial;

    $y = $y_initial;



    // Contatore per il numero di immagini

    $image_counter = 0;



    // Larghezza e altezza delle celle della tabella

    $cell_width = 90;

    $cell_height = 70;



    // Larghezza e altezza massime dell'immagine

    $max_width = 70;

    $max_height = 50;



    // Itera attraverso le foto e aggiungile al PDF

    while (!$additionalphotoslist->atEnd()) {

        $image_path = 'uploadimages/' . $additionalphotoslist->getColumnVal("filenameadditionalphotos");



        // Ottieni le dimensioni dell'immagine originale

        list($original_width, $original_height) = getimagesize($image_path);



        // Calcola le nuove dimensioni mantenendo le proporzioni

        $img_width = $max_width;

        $img_height = ($original_height / $original_width) * $img_width;



        // Se l'altezza calcolata supera l'altezza massima, ridimensiona in base all'altezza massima

        if ($img_height > $max_height) {

            $img_height = $max_height;

            $img_width = ($original_width / $original_height) * $img_height;

        }



        // Aggiungi la cella della tabella con bordo

        $pdf->Cell($cell_width, $cell_height, '', 1, 0, 'C');



        // Calcola la posizione x e y dell'immagine per centrarla nella cella

        $x = $pdf->GetX() - $cell_width + (($cell_width - $img_width) / 2);

        $y = $pdf->GetY() + (($cell_height - $img_height) / 2);



        // Aggiungi l'immagine al centro della cella

        $pdf->Image($image_path, $x, $y, $img_width, $img_height);



        // Incrementa il contatore e la posizione x

        $image_counter++;



        // Se abbiamo aggiunto due immagini, resettiamo x e incrementiamo y

        if ($image_counter % 2 == 0) {

            $pdf->Ln($cell_height); // Nuova riga

        } else {

            $pdf->SetX($x_initial + $cell_width); // Spostati alla prossima cella della riga

        }



        $additionalphotoslist->moveNext();

    }



    // Se il numero di immagini è dispari, aggiungi una cella vuota per completare la riga

    if ($image_counter % 2 != 0) {

        $pdf->Cell($cell_width, $cell_height, '', 1, 0, 'C');

    }

}

