php pdf με εικονες μεσω tcpdf Nikos Balatsoukas Σεπτεμβρίου 8, 2013 php Edit Στο άρθρο αυτό δείχνουμε τη χρήση php pdf με εικόνες κατά τη δημιουργία pdf online.
Θα κανουμε δημιουργία pdf με php. Θα φτιάξουμε αρχειο pdf που να περιέχει εικόνες, μέσα από τη γλώσσα php Υπάρχουν πολλά εργαλεία για να κάνουμε php pdf με εικονες , όπως το καλύτερο είναι το tcpdf. Το tcpdf μας επιτρέπει να φτιάξουμε κάθε μορφής pdf χρησιμοποιώντας τη γλώσσα php, όπως για παράδειγμα pdf χωρίς Header και Footer, pdf από external UTF-8 Unicode text file, php pdf με εικονες, και πολλά άλλα που μπορείτε να βρειτε σε σχετικά άρθρα του infopolis. Θα μπορούσε να σας βοηθήσει σε μια κατασκευή ιστοσελίδας με ευχετήριες κάρτες π.χ. τις οποίες θα μπορούσε να δημιουργεί δυναμικά ο χρήστης και γενικά όταν απαιτείται η δυναμική δημιουργία ενός pdf εγγράφου
php pdf με εικονες 1 2 3 4 5 6 7
<?php //============================================================+ // php pdf με εικονες // πως φτιαχνουμε αρχειο pdf // δημιουργια pdf online //============================================================+
// Συνδέουμε το αρχείο μας με τη βιβλιοθήκη TCPDF library (search for installation path require_once('tcpdf_include.php');
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
// Δημιουργούμε καινούργιο PDF document $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); // Δηλώνουμε document information $pdf->SetCreator(PDF_CREATOR); $pdf->SetAuthor('Nicola Asuni'); $pdf->SetTitle('TCPDF Example 009'); $pdf->SetSubject('TCPDF Tutorial'); $pdf->SetKeywords('TCPDF, PDF, example, test, guide'); // Δηλώνουμε default header data $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 009', PD // Δηλώνουμε header and footer fonts $pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN)); $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA)); // Δηλώνουμε default monospaced font $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED); // Δηλώνουμε περιθώρια $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT); $pdf->SetHeaderMargin(PDF_MARGIN_HEADER); $pdf->SetFooterMargin(PDF_MARGIN_FOOTER); // Δηλώνουμε auto page breaks $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM); // Δηλώνουμε image scale factor $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); // Δηλώνουμε κάποια language-dependent strings (optional) if (@file_exists(dirname(__FILE__).'/lang/eng.php')) { require_once(dirname(__FILE__).'/lang/eng.php'); $pdf->setLanguageArray($l); } // ------------------------------------------------------------------// Προσθέτουμε νέα σελίδα $pdf->AddPage(); // Δηλώνουμε ποιότητα JPEG $pdf->setJPEGQuality(75); // Image method signature: // Image($file, $x='', $y='', $w=0, $h=0, $type='', $link='', $align='', $resize=false, // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // Example of Image from data stream ('PHP rules') $imgdata =
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
base64_decode('iVBORw0KGgoAAAANSUhEUgAAABwAAAASCAMAAAB/2U7WAAAABlBMVEUAAAD///+l2Z/dAAAA // The '@' character is used to indicate that follows an image data stream and not an i $pdf->Image('@'.$imgdata); // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// Image example with resizing $pdf->Image('images/image_demo.jpg', 15, 140, 75, 113, 'JPG', 'http://www.tcpdf.org', ' // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // test fitbox with all alignment combinations $horizontal_alignments = array('L', 'C', 'R'); $vertical_alignments = array('T', 'M', 'B'); $x = 15; $y = 35; $w = 30; $h = 30; // test all combinations of alignments for ($i = 0; $i < 3; ++$i) { $fitbox = $horizontal_alignments[$i].' '; $x = 15; for ($j = 0; $j < 3; ++$j) { $fitbox{1} = $vertical_alignments[$j]; $pdf->Rect($x, $y, $w, $h, 'F', array(), array(128,255,128)); $pdf->Image('images/image_demo.jpg', $x, $y, $w, $h, 'JPG', '', '', false, 300, $x += 32; // new column } $y += 32; // new row } $x = 115; $y = 35; $w = 25; $h = 50; for ($i = 0; $i < 3; ++$i) { $fitbox = $horizontal_alignments[$i].' '; $x = 115; for ($j = 0; $j < 3; ++$j) { $fitbox{1} = $vertical_alignments[$j]; $pdf->Rect($x, $y, $w, $h, 'F', array(), array(128,255,255)); $pdf->Image('images/image_demo.jpg', $x, $y, $w, $h, 'JPG', '', '', false, 300, $x += 27; // new column } $y += 52; // new row } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // Stretching, position and alignment example
100$pdf->SetXY(110, 200); 101$pdf->Image('images/image_demo.jpg', '', '', 40, 40, '', '', 'T', false, 300, '', false $pdf->Image('images/image_demo.jpg', '', '', 40, 40, '', '', '', false, 300, '', false, 102 103// ------------------------------------------------------------------104 105//Close and output PDF document 106$pdf->Output('example_009.pdf', 'I'); 107 108//============================================================+ END OF FILE - τελος του παραδείγματος php pdf με εικονες 109// //============================================================+ 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 Σε αυτό το παράδειγμα είδαμε πως χρησιμοποιούμε τη βιβλιοθήκη tcpdf σε php pdf με εικονες.
php php pdf με εικονες δημιουργία pdf δημιουργια pdf online δημιουργία pdf με php πως φτιαχνουμε αρχειο pdf
Πηγή: http://www.infopolis.gr/php-pdf-me-eikones/