Eccoci di nuovo a parlare di php.
Potrebbe capitare che qualcuno ci chieda di realizzare un sistema online che produca files pdf, per l’emisioine di ricevute, biglietti, produzione di listini o chissà cos’altro. Chiaramente per un risultato quantomeno veloce, è difficile pensare di poter fare tutto da soli, da zero.
Per fortuna con il nostro linguaggio di programmazione preferito – php -, è possibile manipolare questo tipo di files, servendoci di alcune librerie gratuite, ed ottenere risultati molto soddisfacenti.
La soluzione a cui voglio introdurvi oggi, si chiama FPDF.
Premesso che si tratta solo di una piccola introduzione che vuole essere un indizio nella vostra ricerca e che possa stimolarvi a documentarvi meglio, cominciamo.
Sul sito del progetto è presente tutto il necessario per iniziare, quindi per prima cosa portatevi su fpdf.org e scaricate il file dalla sezione download, la classe e tutto quanto, decomprimetelo, e copiatelo sul vostro spazio web (o sul vostro server locale);
naturale passaggio successivo è richiamarlo nei vostri script, mediante il solito “include” o “require“, stando attenti a indicare il path relativo esatto.
L’esempio seguente genera un file pdf contentente il classico testo “Hello World!”
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont(‘Arial’,’B’,16);
$pdf->Cell(40,10,’Hello World!’);
$pdf->Output();
?>
{
// Page header
function Header()
{
// Logo
$this->Image(‘logo.png’,10,6,30);
// Arial bold 15
$this->SetFont(‘Arial’,’B’,15);
// Move to the right
$this->Cell(80);
// Title
$this->Cell(30,10,’Title’,1,0,’C’);
// Line break
$this->Ln(20);
}// Page footer
function Footer()
{
// Position at 1.5 cm from bottom
$this->SetY(-15);
// Arial italic 8
$this->SetFont(‘Arial’,’I’,8);
// Page number
$this->Cell(0,10,’Page ‘.$this->PageNo().’/{nb}’,0,0,’C’);
}
}// Instanziazione delle classi
$pdf = new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont(‘Times’,”,12);
for($i=1;$i<=40;$i++)
$pdf->Cell(0,10,’Printing line number ‘.$i,0,1);
$pdf->Output();
[/spoiler]