function OpenFile() { $caminho = 'tmp/'; $lim_dir = opendir('tmp/'); $fonte = APP_ROOT . DS . 'arquivos/fontes/FreeMonoBold.ttf'; while ($lim_file = readdir($lim_dir)) { if ($lim_file != '.' && $lim_file != '..') { if (!substr_count($lim_file, date('Y-m-d'))) { @unlink('tmp/' . $lim_file); } } } $caminho .= date('Y-m-d') . '-'; list($usec, $sec) = explode(' ', microtime()); $caminho .= substr(md5($usec . $sec), 0, 8); $caminho .= '.pdf'; $this->caminho = APP_ROOT . DS . $caminho; $this->LinkArquivo = $caminho; $this->pdf = PDF_new(); pdf_set_parameter($this->pdf, 'FontOutline', 'monospaced=' . $fonte); PDF_open_file($this->pdf, $this->caminho); PDF_set_info($this->pdf, 'Creator', $this->owner); PDF_set_info($this->pdf, 'Author', $this->owner); PDF_set_info($this->pdf, 'Title', $this->titulo); if ($this->depurar) { echo '<b>PDF:</b> Objeto criado!<br>'; echo '<b>PDF:</b> O objeto foi criado no seguinte local -> ' . $this->LinkArquivo . '<br>'; } $this->OpenPage(); }
function SC_Pdf($width = 595, $height = 842, $fontsize = 10) { $this->license_key = "B600602-010400-714251-5851C1"; $this->src_code = CHAR_CODE; // UTF-8でないとブロック内で改行できない。 $this->dst_code = "UTF-8"; // PDF BLOCKのプロパティ $this->block_option = "encoding=UniJIS-UCS2-H textformat=utf8 fontname=HeiseiMin-W3 textflow=true"; // 警告表示 $this->pdiwarning = "true"; // ページサイズ設定 $this->width = $width; $this->height = $height; // PDF初期化 $this->pdf = PDF_new(); PDF_set_parameter($this->pdf, "license", $this->license_key); PDF_set_parameter($this->pdf, "pdiwarning", $this->pdiwarning); // ドキュメント開始 PDF_begin_document($this->pdf, NULL, NULL); // ページの状態 $this->page_open = false; // テーブルの色設定 $this->setTableColor(); // フォントサイズの設定 $this->fontsize = $fontsize; // グリッド描画の特殊指定 $this->arrLines = array(); // テーブルタイトルのスタイル $this->arrHeaderColSize = array(); $this->arrHeaderAlign = array(); // テーブル補正値 $this->table_left = 0; // タイトル行の出力 $this->title_enable = true; // グリッドの出力 $this->grid_enable = true; }
<?php $p = PDF_new(); PDF_open_file($p); PDF_begin_page($p, 595, 842); $im = pdf_open_jpeg($p, "php-big.jpg"); pdf_place_image($p, $im, 200, 700, 1.0); PDF_save($p); // Save current coordinate system settings $nx = 50 / PDF_get_value($p, "imagewidth", $im); $ny = 100 / PDF_get_value($p, "imageheight", $im); PDF_scale($p, $nx, $ny); pdf_place_image($p, $im, 200 / $nx, 600 / $ny, 1.0); PDF_restore($p); // Restore previous pdf_close_image($p, $im); PDF_end_page($p); PDF_close($p); $buf = PDF_get_buffer($p); $len = strlen($buf); Header("Content-type:application/pdf"); Header("Content-Length:{$len}"); Header("Content-Disposition:inline; filename=coords.pdf"); echo $buf; PDF_delete($p);
/** * Sets Number of Pages Contained Within the Order PDF. The Functions Looks * Up the SKU in the multi_page_sku Database Table, if Present, Downloads the PDF * and Gets the Page Count. If the SKU is Not in the Table, Defaults to 1. * * @access private * @return void */ private function _setPageCount() { $this->_orderArray['pageCount'] = 1; if (PresswiseDB::getInstance()->isMultiImageSku($this->_orderArray['productID']) === true) { file_put_contents(PDF_TMP_DIR . DIRECTORY_SEPARATOR . PDF_CURRENT_PDF, file_get_contents($this->_orderArray['fileF'])); $p = PDF_new(); PDF_set_parameter($p, 'errorpolicy', 'return'); PDF_set_parameter($p, 'SearchPath', PDF_TMP_DIR); $doc = PDF_open_pdi_document($p, PDF_CURRENT_PDF, 'requiredmode=minimum'); if ($doc == 0) { $this->isErrors = true; $this->_errors = 'Error Counting Pages: ' . PDF_get_errmsg($p); } else { $this->_orderArray['pageCount'] = PDF_pcos_get_number($p, $doc, 'length:pages'); } } }
<?php session_start(); //create handle for new PDF document $pdf = PDF_new(); //open a file pdf_open_file PDF_open_file($pdf, ""); //start a new page PDF_begin_page($pdf, 595, 842); //get and use a font object $font = PDF_findfont($pdf, "Times-Roman", "host", 0); PDF_setfont($pdf, $font, 12); /*print text*/ // PULLING OF DATA AND OTHER PRINTING INFORMATION------------------------ if ($_SESSION['role'] == 'admin' || $_COOKIE['role'] == 'admin') { include 'dbFunctions.php'; $expenditure_id = $_GET['expenditure_id']; $query = "SELECT * FROM expenditure WHERE expenditure_id = {$expenditure_id}"; $runquery = mysqli_query($connect, $query); while ($runrows = mysqli_fetch_array($runquery)) { $debit_card = $runrows['debit_card']; $amex_card = $runrows['amex_card']; $visa_card = $runrows['visa_card']; $total_staff_salary = $runrows['total_staff_salary']; $phone_bill = $runrows['phone_bill']; $rent_bill = $runrows['rent_bill']; $electricity_bill = $runrows['electricity_bill']; $director_fee = $runrows['director_fee']; $date = $runrows['date']; $desc = $runrows['desc']; $total_amount = $runrows['total_amount'];
function run() { global $output_format; global $form_action; global $sbsearch_x; global $pdfdoc; global $orientation; if (isset($output_format)) { $this->outputformat = $output_format; } if (isset($form_action) || !$this->filtered) { reset($this->bands); if ($this->outputformat == PDF) { if (!$this->issubreport) { header("Content-type: application/pdf"); /* Create a PDFlib object */ $this->pdf = PDF_new(); $pdfdoc = $this->pdf; $orientation = $this->orientation; /* Create a PDF document in memory */ PDF_open_file($this->pdf, ""); /* Create the first page */ $this->ypos = newpage(false); $this->pageheader(); } /* Make an instance of the table class */ switch ($this->orientation) { case LANDSCAPE: $this->table = new jh_pdf_table(&$this->pdf, &$this->ypos, $this->subx, 812, 30); break; case PORTRAIT: $this->table = new jh_pdf_table(&$this->pdf, &$this->ypos, $this->subx, 565, 30); break; } /* Set a function that will be called if a new page is necessary */ $this->table->setnewpagefunction(newpage); if ($this->issubreport) { $this->table->setverttableborderwidth(1); $this->table->setverttablebordercolor(0); //$this->table->setcolspacingwidth(1); //$this->table->setcolspacingcolor(0); $this->table->setrowspacingwidth(1); $this->table->setrowspacingcolor(0); } $this->table->setheaderbgcolor($this->headercolor); $this->table->setbgcolors(array(false, 0.9)); } if ($this->outputformat == HTML) { echo "<link rel=\"StyleSheet\" href=\"phpreport/report.css\" type=\"text/css\" />\n"; echo "<style type=\"text/css\">"; echo "@import url(\"phpreport/report.css\"); "; echo "</style>"; } $w = "width=\"100%\""; if ($this->issubreport) { $w = "width=\"100%\""; } $b = "1"; if ($this->issubreport) { $b = "0"; } if ($this->outputformat == HTML) { if ($this->title != '') { $fecha = date("d/m/Y h:m:s"); echo "<table {$w} border=\"0\"><tr><td><h2>{$this->title}</h2></td><td align=\"right\">{$fecha}</td></tr></table>"; } echo "<table {$w} border=\"{$b}\" cellspacing=\"0\" cellpadding=\"2\">"; } while (list($bandname, $bandparams) = each($this->bands)) { $this->renderBand($bandparams); } if ($this->outputformat == HTML) { if ($this->showsummaries) { $cs = count($this->phpgrid->printable); echo "<tr class=\"reportdetaileven\">"; echo "<td colspan=\"{$cs}\" align=\"right\">{$this->recordcount} registro(s)</td>"; echo "</tr>"; } echo "</table>"; } if ($this->outputformat == PDF) { /* Close the table (important!) */ $this->table->endtable(); } if ($this->showsummaries) { if ($this->outputformat == PDF) { $rm = 0; // Make an instance of the table class switch ($this->orientation) { case LANDSCAPE: $rm = 812; break; case PORTRAIT: $rm = 565; break; } $this->ypos -= 10; // Make an instance of the class $text = new jh_pdf_flowingtext(&$this->pdf, &$this->ypos, 30, $rm, 30); $text->setfontsize(9); $text->addtext($this->recordcount . " registro(s)", true); $text->puttext(30, $this->ypos, "right", 0); $this->ypos -= 26; } } if ($this->outputformat == PDF) { if (!$this->issubreport) { /* Close the last page */ PDF_end_page($this->pdf); /* Close the PDF document */ PDF_close($this->pdf); /* Output the current part of the in-memory created PDF document */ print PDF_get_buffer($this->pdf); /* Delete the PDFlib object */ PDF_delete($this->pdf); } } } else { $sbsearch_x = 1; $this->phpgrid->showformatcombo = TRUE; $this->phpgrid->showgrid = 0; $this->phpgrid->run(); } }
$cnt = 0; foreach ($row as $item) { echo $item; $b[$cnt] = $item; $cnt++; } } foreach ($invoice as $row) { $cnt = 0; foreach ($row as $item) { echo $item; $u[$cnt] = $item; $cnt++; } } $mypdf = PDF_new(); PDF_open_file($mypdf, ""); PDF_set_info($mypdf, "Creator", "Online Bus Service"); PDF_set_info($mypdf, "Author", "Mukesh Kumar"); PDF_set_info($mypdf, "Title", "Speedticket"); PDF_set_info($mypdf, "Subject", "Ticket"); PDF_set_info($mypdf, "Keywords", "Bus Ticket"); PDF_begin_page($mypdf, 595, 842); $myfont = PDF_findfont($mypdf, "Times-Roman", "host", 0); PDF_setfont($mypdf, $myfont, 12); PDF_setcolor($mypdf, "stroke", "rgb", 0.5, 0.5, 0.5, 1); PDF_moveto($mypdf, 50, 810); PDF_lineto($mypdf, 500, 810); PDF_stroke($mypdf); PDF_moveto($mypdf, 50, 100); PDF_lineto($mypdf, 500, 100);
function carl_merge_pdfs_pdflib($pdffiles, $titles = array(), $metadata = array(), $metadata_encoding = 'UTF-8') { if (gettype($pdffiles) != 'array') { trigger_error('$pdffiles must be an array'); return false; } if (!function_exists('PDF_new')) { trigger_error('You must have PDFlib installed in order to run carl_merge_pdfs()'); return false; } if (empty($pdffiles)) { return NULL; } $i = 0; $indoc = 0; $pdfver = '1.0'; $maxpdfver = '1.0'; $p = PDF_new(); if (defined('PDFLIB_LICENSE_KEY_FILE')) { PDF_set_parameter($p, 'licensefile', PDFLIB_LICENSE_KEY_FILE); } else { trigger_error('Please define the constant PDFLIB_LICENSE_KEY_FILE with the filesystem location of your PDFlib license keys.'); } /* This means we must check return values of load_font() etc. */ //PDF_set_parameter($p, 'errorpolicy', 'return'); /* ----------------------------------------------------------------- * Loop over all input documents to retrieve the highest PDF version * used * ----------------------------------------------------------------- */ foreach ($pdffiles as $pdffile) { /* Open the input PDF */ if (function_exists('PDF_open_pdi_document')) { $indoc = PDF_open_pdi_document($p, $pdffile, ''); } else { $indoc = PDF_open_pdi($p, $pdffile, '', 0); } // pre-pecl 2.1 if ($indoc < 1) { trigger_error('Error: ' . PDF_get_errmsg($p)); continue; } /* Retrieve the PDF version of the current document. If it is higher * than the maximum version retrieved until now make it to be the * maximum version. */ if (function_exists('PDF_pcos_get_number')) { $pdfver = PDF_pcos_get_number($p, $indoc, 'pdfversion') / 10; } else { $pdfver = PDF_get_pdi_value($p, 'version', $indoc, 0, 0) / 10; } if ($pdfver > $maxpdfver) { $maxpdfver = $pdfver; } /* Close the input document. * Depending on the number of PDFs and memory strategy, PDI handles * to all documents could also be kept open between the first and * second run (requires more memory, but runs faster). We close all * PDFs after checking the version number, and reopen them in the * second loop (requires less memory, but is slower). */ if (function_exists('PDF_close_pdi_document')) { PDF_close_pdi_document($p, $indoc); } else { PDF_close_pdi($p, $indoc); } // pre-pecl 2.1 } /* --------------------------------------------------------------- * Open the output document with the maximum PDF version retrieved * --------------------------------------------------------------- */ if ($maxpdfver > '1.0') { $optlist = 'compatibility=' . $maxpdfver; } else { $optlist = ''; } if (PDF_begin_document($p, '', $optlist) == -1) { trigger_error('Error: ' . PDF_get_errmsg($p)); } foreach ($metadata as $key => $value) { PDF_set_info($p, $key, $value); } //PDF_set_info($p, 'Creator', 'Test Creator'); //PDF_set_info($p, 'Title', $title . ' $Revision: 1.1 $'); //echo '4 '; /* -------------------------------------------------------------------- * Loop over all input documents to merge them into the output document * used * -------------------------------------------------------------------- */ foreach ($pdffiles as $pdffile) { $endpage = $pageno = $page = 0; /* Open the input PDF */ if (function_exists('PDF_open_pdi_document')) { $indoc = PDF_open_pdi_document($p, $pdffile, ''); } else { $indoc = PDF_open_pdi($p, $pdffile, '', 0); } // pre-pecl 2.1 if ($indoc < 1) { trigger_error('Error: ' . PDF_get_errmsg($p)); continue; } if (function_exists('PDF_pcos_get_number')) { $endpage = (int) PDF_pcos_get_number($p, $indoc, '/Root/Pages/Count'); } else { $endpage = (int) PDF_get_pdi_value($p, '/Root/Pages/Count', $indoc, 0, 0); } // pre-pecl 2.1 /* Loop over all pages of the input document */ for ($pageno = 1; $pageno <= $endpage; $pageno++) { $page = PDF_open_pdi_page($p, $indoc, $pageno, ''); if ($page == 0) { trigger_error('Error: ' . PDF_get_errmsg($p)); continue; } /* Dummy page size; will be adjusted later */ PDF_begin_page_ext($p, 10, 10, ''); /* Create a bookmark with the file name */ if ($pageno == 1) { if (isset($titles[$pdffile])) { $bookmark = pack('H*', 'feff') . mb_convert_encoding($titles[$pdffile], 'UTF-16', $metadata_encoding); } else { $bookmark = pack('H*', 'feff') . mb_convert_encoding($pdffile, 'UTF-16', $metadata_encoding); } /* if(isset($titles[$pdffile])) $bookmark = $titles[$pdffile]; else $bookmark = $pdffile; */ PDF_create_bookmark($p, $bookmark, ''); } /* Place the imported page on the output page, and * adjust the page size */ PDF_fit_pdi_page($p, $page, 0, 0, 'adjustpage'); PDF_close_pdi_page($p, $page); PDF_end_page_ext($p, ''); } /* Close the input document */ if (function_exists('PDF_close_pdi_document')) { PDF_close_pdi_document($p, $indoc); } else { PDF_close_pdi($p, $indoc); } // pre-pecl 2.1 } PDF_end_document($p, ''); $buffer = PDF_get_buffer($p); pdf_delete($p); return $buffer; }