Sommario
Iniziamo scaricando la libreria da www.fpdf.org, una volta scaricata decomprimiamo e copiamo la directory fpdf nella directory della nostra applicazione.Un semplice esempio:
Aggiungi pagina (); $ pdf-> SetFont ('Arial', 'B', 16); $ pdf-> Cella (80, 10, 'Questa è una cella 40 x 10', 1); $ pdf-> Cella (50, 10, 'Cella 50x10', 1); $ pdf-> Ln (10); $ pdf-> SetFont ('Arial', 'I', 12); $ pdf-> Cella (80, 10, 'Questa è una cella 40 x 10', 0); $ pdf-> Cella (50, 10, 'Cella 50x10', 0); $ pdf-> Uscita (); ?> var13 ->
Chiamiamo la libreria dalla directory fpdf, creiamo un oggetto e aggiungiamo una pagina con AddPage(), impostiamo il carattere, lo stile e la dimensione. Quindi creiamo una cella per contenere i dati con la seguente struttura
$ pdf-> Cella (larghezza, altezza, contenuto, bordo, allineamento); // Allineamento L Sinistra, C Centrato, R Destra
La funzione Output è quella che mostra il pdf se mettiamo il parametro invierò il file al browser, se mettiamo il parametro D mostra la finestra di download, quindi se nel codice precedente scriviamo
$ pdf-> Output ('mipdf.pdf', 'd');
Di conseguenza, apparirà la finestra di download per salvare il pdf.
Possiamo anche realizzare documenti più complessi come fatture, preventivi o relazioni commerciali, utilizzare database come mysql.
Nell'esempio seguente vedremo come creare un budget con un'immagine di intestazione
Aggiungi pagina (); $ pdf-> SetFont ('Arial', 'B', 16); // inserisco l'intestazione inserendo un'immagine all'interno di una cella $ pdf-> Cell (700,85, $ pdf-> Image ('./ images / logo-invoice.jpg.webp', 30,12,160), 0,0, ' C '); $ pdf-> Cella (100,12, "Budget:". $ fielddb ['nrobudget']); $ pdf-> Cella (100,12, "Data:". data ('d / m / Y')); $ pdf-> Riga (35,40,190,40); $ pdf-> Ln (7); $ pdf-> Cella (100,12, "Nome:". $ dbfield ['nome'])); $ pdf-> Cella (90.12, "Nif:". $ rowcli ['nif']); $ pdf-> Riga (35,48,190,48); $ pdf-> Ln (7); $ pdf-> Cella (100,12, "Indirizzo:". $ dbfield ['indirizzo']); $ pdf-> Riga (35,56,190,56); $ pdf-> Ln (7); $ pdf-> Cell (90.12, accenti ("Telefono:". $ fielddb ['telefono'])); $ pdf-> Riga (35,62,190,62); $ pdf-> Ln (7); $ pdf-> Cella (100,12, "Computer:". $ fielddb ['computer']); $ pdf-> Riga (35,68,190,68); $ pdf-> Ln (9); $ pdf-> SetFont ('Arial', 'B', 10); $ pdf-> Cella (60.12, 'BUDGET'); $ pdf-> Ln (2); $ pdf-> SetFont ('Arial', '', 8); ?> var13 ->
Quindi, tramite una query al database più un ciclo while, genero le altre celle e calcolo gli importi.
while ($iLn(7);[/indent] [indent=1]$pdf->Cell(139,7,acentos($campodb['concepto']),1,0,'1'); [/indent] [indent=1]$pdf->Cell(15,7,chr(128)." ".number_format($campodb['precio'],2,'.',''),1,0,'R'); [/indent] [indent=1]//calculo el total[/indent] $precio=$precio+$campodb['precio']; } ?>
Quindi creiamo le celle rimanenti per i totali, l'IVA e le tasse a seconda dei casi
ln (7); $ pdf-> Cella (110.7); $ pdf-> Cella (29,8, "TOTALE", 1,0, 'R'); $ pdf-> Cell (15,8, chr (128). "" .number_format ($ priceconiva, 2, '.', ''), 1,0, 'R'); $ pdf-> Ln (20); $ pdf-> Multicella (400,4, "Nota:". $ rowrepar ['notapresu']); ?> var13 ->
Aggiungiamo anche un Multicella, che svolge la funzione di più celle in una, serve per grandi blocchi di testo come una nota a piè di pagina
Infine diamo un nome al nostro file, al quale possiamo mettere un id che li enumererà secondo un database e definiamo l'opzione di download.
Output (file $, "D"); ?> var13 ->
Un'altra applicazione interessante è combinare fpdf con classi per generare codici a barre con I25, EAN 39, 128, ecc. Sul sito di fpdf ci sono alcuni esempi e altri script forniti dalla comunità per i test. Ecco un esempio di stub di pagamento che i clienti scaricano da un sito web.
In questo modo salveremo il problema FPDF e gli accenti.Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo