本文整理汇总了PHP中Zend_Pdf::newPage方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Pdf::newPage方法的具体用法?PHP Zend_Pdf::newPage怎么用?PHP Zend_Pdf::newPage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend_Pdf
的用法示例。
在下文中一共展示了Zend_Pdf::newPage方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getPdf
public function getPdf($creditmemos = array())
{
$this->_beforeGetPdf();
$this->_initRenderer('creditmemo');
$pdf = new Zend_Pdf();
$style = new Zend_Pdf_Style();
$this->_setFontBold($style, 10);
foreach ($creditmemos as $creditmemo) {
$page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$pdf->pages[] = $page;
$order = $creditmemo->getOrder();
/* Add image */
$this->insertLogo($page, $creditmemo->getStore());
/* Add address */
$this->insertAddress($page, $creditmemo->getStore());
/* Add head */
$this->insertOrder($page, $order, Mage::getStoreConfigFlag(self::XML_PATH_SALES_PDF_CREDITMEMO_PUT_ORDER_ID, $order->getStoreId()));
$page->setFillColor(new Zend_Pdf_Color_GrayScale(1));
$this->_setFontRegular($page);
$page->drawText(Mage::helper('sales')->__('Credit Memo # ') . $creditmemo->getIncrementId(), 35, 780, 'UTF-8');
/* Add table head */
$page->setFillColor(new Zend_Pdf_Color_RGB(0.93, 0.92, 0.92));
$page->setLineColor(new Zend_Pdf_Color_GrayScale(0.5));
$page->setLineWidth(0.5);
$page->drawRectangle(25, $this->y, 570, $this->y - 15);
$this->y -= 10;
$page->setFillColor(new Zend_Pdf_Color_RGB(0.4, 0.4, 0.4));
$this->_drawHeader($page);
$this->y -= 15;
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
/* Add body */
foreach ($creditmemo->getAllItems() as $item) {
if ($item->getOrderItem()->getParentItem()) {
continue;
}
$shift = array();
if ($this->y < 20) {
/* Add new table head */
$page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$pdf->pages[] = $page;
$this->y = 800;
$this->_setFontRegular($page);
$page->setFillColor(new Zend_Pdf_Color_RGB(0.93, 0.92, 0.92));
$page->setLineColor(new Zend_Pdf_Color_GrayScale(0.5));
$page->setLineWidth(0.5);
$page->drawRectangle(25, $this->y, 570, $this->y - 15);
$this->y -= 10;
$this->_drawHeader($page);
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
$this->y -= 20;
}
/* Draw item */
$this->_drawItem($item, $page, $order);
}
/* Add totals */
$this->insertTotals($page, $creditmemo);
}
$this->_afterGetPdf();
return $pdf;
}
示例2: testProcessing
public function testProcessing()
{
$pdf = new Zend_Pdf();
$page1 = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$page2 = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$page3 = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
// not actually included into pages array
$pdf->pages[] = $page1;
$pdf->pages[] = $page2;
$this->assertTrue(count($pdf->getNamedDestinations()) == 0);
// require_once 'Zend/Pdf/Destination/Fit.php';
$destination1 = Zend_Pdf_Destination_Fit::create($page1);
$destination2 = Zend_Pdf_Destination_Fit::create($page2);
$action1 = Zend_Pdf_Action_GoTo::create($destination1);
$pdf->setNamedDestination('GoToPage1', $action1);
$this->assertTrue($pdf->getNamedDestination('GoToPage1') === $action1);
$this->assertTrue($pdf->getNamedDestination('GoToPage9') === null);
$pdf->setNamedDestination('Page2', $destination2);
$this->assertTrue($pdf->getNamedDestination('Page2') === $destination2);
$this->assertTrue($pdf->getNamedDestination('Page9') === null);
$pdf->setNamedDestination('Page1', $destination1);
$pdf->setNamedDestination('Page1_1', Zend_Pdf_Destination_Fit::create(1));
$pdf->setNamedDestination('Page9_1', Zend_Pdf_Destination_Fit::create(9));
// will be egnored
$action3 = Zend_Pdf_Action_GoTo::create(Zend_Pdf_Destination_Fit::create($page3));
$pdf->setNamedDestination('GoToPage3', $action3);
$this->assertTrue(strpos($pdf->render(), '[(GoToPage1) <</Type /Action /S /GoTo /D [3 0 R /Fit ] >> (Page1) [3 0 R /Fit ] (Page1_1) [1 /Fit ] (Page2) [4 0 R /Fit ] ]') !== false);
}
示例3: testCreate
public function testCreate()
{
$pdf = new Zend_Pdf();
// Add new page generated by Zend_Pdf object (page is attached to the specified the document)
$pdf->pages[] = $page1 = $pdf->newPage('A4');
// Add new page generated by Zend_Pdf_Page object (page is not attached to the document)
$pdf->pages[] = $page2 = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_LETTER_LANDSCAPE);
// Create new font
$font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA);
// Apply font and draw text
$page1->setFont($font, 36);
$page1->setFillColor(Zend_Pdf_Color_Html::color('#9999cc'));
$page1->drawText('Helvetica 36 text string', 60, 500);
// Use font object for another page
$page2->setFont($font, 24);
$page2->drawText('Helvetica 24 text string', 60, 500);
// Use another font
$page2->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_TIMES), 32);
$page2->drawText('Times-Roman 32 text string', 60, 450);
// Draw rectangle
$page2->setFillColor(new Zend_Pdf_Color_GrayScale(0.8));
$page2->setLineColor(new Zend_Pdf_Color_GrayScale(0.2));
$page2->setLineDashingPattern(array(3, 2, 3, 4), 1.6);
$page2->drawRectangle(60, 400, 400, 350);
// Draw circle
$page2->setLineDashingPattern(Zend_Pdf_Page::LINE_DASHING_SOLID);
$page2->setFillColor(new Zend_Pdf_Color_Rgb(1, 0, 0));
$page2->drawCircle(85, 375, 25);
// Draw sectors
$page2->drawCircle(200, 375, 25, 2 * M_PI / 3, -M_PI / 6);
$page2->setFillColor(new Zend_Pdf_Color_Cmyk(1, 0, 0, 0));
$page2->drawCircle(200, 375, 25, M_PI / 6, 2 * M_PI / 3);
$page2->setFillColor(new Zend_Pdf_Color_Rgb(1, 1, 0));
$page2->drawCircle(200, 375, 25, -M_PI / 6, M_PI / 6);
// Draw ellipse
$page2->setFillColor(new Zend_Pdf_Color_Rgb(1, 0, 0));
$page2->drawEllipse(250, 400, 400, 350);
$page2->setFillColor(new Zend_Pdf_Color_Cmyk(1, 0, 0, 0));
$page2->drawEllipse(250, 400, 400, 350, M_PI / 6, 2 * M_PI / 3);
$page2->setFillColor(new Zend_Pdf_Color_Rgb(1, 1, 0));
$page2->drawEllipse(250, 400, 400, 350, -M_PI / 6, M_PI / 6);
// Draw and fill polygon
$page2->setFillColor(new Zend_Pdf_Color_Rgb(1, 0, 1));
$x = array();
$y = array();
for ($count = 0; $count < 8; $count++) {
$x[] = 140 + 25 * cos(3 * M_PI_4 * $count);
$y[] = 375 + 25 * sin(3 * M_PI_4 * $count);
}
$page2->drawPolygon($x, $y, Zend_Pdf_Page::SHAPE_DRAW_FILL_AND_STROKE, Zend_Pdf_Page::FILL_METHOD_EVEN_ODD);
// Draw line
$page2->setLineWidth(0.5);
$page2->drawLine(60, 375, 400, 375);
$pdf->save(dirname(__FILE__) . '/_files/output.pdf');
unset($pdf);
$pdf1 = Zend_Pdf::load(dirname(__FILE__) . '/_files/output.pdf');
$this->assertTrue($pdf1 instanceof Zend_Pdf);
unset($pdf1);
unlink(dirname(__FILE__) . '/_files/output.pdf');
}
示例4: _buildPDFDocuments
protected function _buildPDFDocuments(Doc_Book $book)
{
set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/../_vendor/zf');
$pdf = new Zend_Pdf();
$page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$font = Zend_Pdf_Font::fontWithPath('c:\\windows\\fonts\\simkai.ttf');
$page->setFont($font, 12);
$pdf->pages[] = $page;
$page->drawText('中文测试', 100, 430, 'UTF-8');
$pdf->save('output.pdf');
}
示例5: createPdfTemplate
/**
*
* @return Zend_Pdf
*
*/
protected function createPdfTemplate()
{
if ($this->getDi()->config->get('invoice_custom_template') && ($upload = $this->getDi()->uploadTable->load($this->getDi()->config->get('invoice_custom_template')))) {
$pdf = Zend_Pdf::load($upload->getFullPath());
$this->pointer = $this->getPaperHeight() - $this->getDi()->config->get('invoice_skip', 150);
} else {
$pdf = new Zend_Pdf();
$pdf->pages[0] = $pdf->newPage($this->getDi()->config->get('invoice_format', Zend_Pdf_Page::SIZE_LETTER));
$this->pointer = $this->drawDefaultTemplate($pdf);
}
return $pdf;
}
示例6: __construct
public function __construct()
{
if (Config::$glsbox_label_beginx != '' && (int) Config::$glsbox_label_beginx >= 0) {
$startpunktX = (int) Config::$glsbox_label_beginx;
} else {
$startpunktX = 0;
}
if (Config::$glsbox_label_beginy != '' && (int) Config::$glsbox_label_beginy >= 0) {
$startpunktY = (int) Config::$glsbox_label_beginy;
} else {
$startpunktY = 0;
}
$startpunkt = array('x' => $startpunktX, 'y' => $startpunktY);
//Angabe in Milimeter
$this->_startpunkt = array('x' => $this->mmToPts($startpunkt['x']), 'y' => $this->mmToPts($startpunkt['y']));
$this->pdf = new Zend_Pdf();
// Erstelle eine neue Seite mit Hilfe des Zend_Pdf Objekts
// (die Seite wird an das angegebene Dokument angehängt)
if (Config::$glsbox_label_papersize != 'A4' && Config::$glsbox_label_papersize != 'A5') {
$lettersize = Zend_Pdf_Page::SIZE_A4;
} else {
if (Config::$glsbox_label_papersize == 'A4') {
$lettersize = Zend_Pdf_Page::SIZE_A4;
}
if (Config::$glsbox_label_papersize == 'A5') {
$lettersize = '420.94:595.28';
}
}
$this->pdf->pages[] = $this->page = $this->pdf->newPage($lettersize);
// Erstelle einen neuen Stil
$this->defaultStyle = new Zend_Pdf_Style();
$this->defaultStyle->setFillColor(new Zend_Pdf_Color_Rgb(0, 0, 0));
$this->defaultStyle->setLineColor(new Zend_Pdf_Color_GrayScale(0.2));
$this->defaultStyle->setLineWidth(2);
//$fontH = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA_BOLD);
//$this->defaultStyle->setFont($fontH, 32);
$this->page->setStyle($this->defaultStyle);
$this->drawGeneralLayout();
}
示例7: getPdf
/**
* Format pdf file
*
* @param null $shipment
* @return Zend_Pdf
*/
public function getPdf($shipment = null)
{
$this->_beforeGetPdf();
$this->_initRenderer('shipment');
$pdf = new Zend_Pdf();
$page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$pdf->pages[] = $page;
if ($shipment->getStoreId()) {
Mage::app()->getLocale()->emulate($shipment->getStoreId());
Mage::app()->setCurrentStore($shipment->getStoreId());
}
$this->_setFontRegular($page);
$this->_drawHeaderBlock($page);
$this->y = 740;
$this->_drawPackageBlock($page);
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
$this->_afterGetPdf();
if ($shipment->getStoreId()) {
Mage::app()->getLocale()->revert();
}
return $pdf;
}
示例8: gerarCertificado
private function gerarCertificado($idEncontro, $array = array())
{
// include auto-loader class
require_once 'Zend/Loader/Autoloader.php';
// register auto-loader
$loader = Zend_Loader_Autoloader::getInstance();
$pdf = new Zend_Pdf();
$page1 = $pdf->newPage(Zend_Pdf_Page::SIZE_A4_LANDSCAPE);
$font = Zend_Pdf_Font::fontWithPath(APPLICATION_PATH . "/../public/font/UbuntuMono-R.ttf");
$page1->setFont($font, Sige_Pdf_Certificado::TAM_FONTE);
// configura o plano de fundo
$this->background($page1, $idEncontro);
for ($index = 0; $index < count($array); $index++) {
$page1->drawText($array[$index], Sige_Pdf_Certificado::POS_X_INICIAL, Sige_Pdf_Certificado::POS_Y_INICIAL - $index * Sige_Pdf_Certificado::DES_Y, 'UTF-8');
}
// configura a(s) assinatura(s)
$this->assinaturas($page1, $idEncontro);
$pdf->pages[] = $page1;
// salve apenas em modo debug!
// $pdf->save(APPLICATION_PATH . '/../tmp/certificado-participante.pdf');
// Get PDF document as a string
return $pdf->render();
}
示例9: getPdf
public function getPdf($shipments = array())
{
$this->_beforeGetPdf();
$this->_initRenderer('shipment');
$pdf = new Zend_Pdf();
$style = new Zend_Pdf_Style();
$this->_setFontBold($style, 10);
foreach ($shipments as $shipment) {
$page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$pdf->pages[] = $page;
$order = $shipment->getOrder();
/* Add image */
$this->insertLogo($page, $shipment->getStore());
/* Add address */
$this->insertAddress($page, $shipment->getStore());
/* Add head */
$this->insertOrder($page, $order, Mage::getStoreConfigFlag(self::XML_PATH_SALES_PDF_SHIPMENT_PUT_ORDER_ID, $order->getStoreId()));
/* Add Barcode (custom: Matt Johnson 2008-06-13)*/
/* convertToBarcodeString resides in extended abstract.php file*/
$barcodeString = $this->convertToBarcodeString($order->getRealOrderId());
$page->setFillColor(new Zend_Pdf_Color_RGB(0, 0, 0));
$page->setFont(Zend_Pdf_Font::fontWithPath(dirname(__FILE__) . '/' . 'Code128bWin.ttf'), 18);
$page->drawText($barcodeString, 250, 800, 'CP1252');
$page->setFillColor(new Zend_Pdf_Color_GrayScale(1));
$this->_setFontRegular($page);
$page->drawText(Mage::helper('sales')->__('Packingslip # ') . $shipment->getIncrementId(), 35, 780, 'UTF-8');
/* Add table */
$page->setFillColor(new Zend_Pdf_Color_RGB(0.93, 0.92, 0.92));
$page->setLineColor(new Zend_Pdf_Color_GrayScale(0.5));
$page->setLineWidth(0.5);
/* Add table head */
$page->drawRectangle(25, $this->y, 570, $this->y - 15);
$this->y -= 10;
$page->setFillColor(new Zend_Pdf_Color_RGB(0.4, 0.4, 0.4));
$page->drawText(Mage::helper('sales')->__('QTY'), 35, $this->y, 'UTF-8');
$page->drawText(Mage::helper('sales')->__('Products'), 60, $this->y, 'UTF-8');
$page->drawText(Mage::helper('sales')->__('SKU'), 470, $this->y, 'UTF-8');
$this->y -= 15;
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
/* Add body */
foreach ($shipment->getAllItems() as $item) {
if ($item->getOrderItem()->getParentItem()) {
continue;
}
$shift = 10;
$shift = array();
if ($this->y < 15) {
/* Add new table head */
$page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$pdf->pages[] = $page;
$this->y = 800;
$this->_setFontRegular($page);
$page->setFillColor(new Zend_Pdf_Color_RGB(0.93, 0.92, 0.92));
$page->setLineColor(new Zend_Pdf_Color_GrayScale(0.5));
$page->setLineWidth(0.5);
$page->drawRectangle(25, $this->y, 570, $this->y - 15);
$this->y -= 10;
$page->setFillColor(new Zend_Pdf_Color_RGB(0.4, 0.4, 0.4));
$page->drawText(Mage::helper('sales')->__('QTY'), 35, $this->y, 'UTF-8');
$page->drawText(Mage::helper('sales')->__('Products'), 60, $this->y, 'UTF-8');
$page->drawText(Mage::helper('sales')->__('SKU'), 470, $this->y, 'UTF-8');
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
$this->y -= 20;
}
/* Draw item */
$this->_drawItem($item, $page, $order);
}
}
$this->_afterGetPdf();
return $pdf;
}
示例10:
->setStyle($style)
->rotate(0, 0, M_PI_2/3);
$page->saveGS();
$page->clipCircle(550, -10, 50);
if ($stampImage != null) {
$page->drawImage($stampImage, 500, -60, 600, 40);
}
$page->restoreGS();
$page->drawText('Modified by Zend Framework!', 150, 0)
->restoreGS();
}
// Add new page generated by Zend_Pdf object (page is attached to the specified the document)
$pdf->pages[] = ($page1 = $pdf->newPage('A4'));
// Add new page generated by Zend_Pdf_Page object (page is not attached to the document)
$pdf->pages[] = ($page2 = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_LETTER_LANDSCAPE));
// Create new font
$font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA);
// Apply font and draw text
$page1->setFont($font, 36)
->setFillColor(Zend_Pdf_Color_Html::color('#9999cc'))
->drawText('Helvetica 36 text string', 60, 500);
// Use font object for another page
$page2->setFont($font, 24)
->drawText('Helvetica 24 text string', 60, 500);
示例11: pdfdisplayAction
public function pdfdisplayAction()
{
$date1 = $this->_request->getParam('date1');
$date2 = $this->_request->getParam('date2');
$glsubcode = $this->_request->getParam('ledger');
$pdf = new Zend_Pdf();
$page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$pdf->pages[] = $page;
$app = $this->view->baseUrl();
$word = explode('/', $app);
$projname = $word[1];
//Image
$image_name = "/var/www/" . $projname . "/public/images/logo.jpg";
$image = Zend_Pdf_Image::imageWithPath($image_name);
//$page->drawImage($image, 25, 770, 570, 820);
$page->drawImage($image, 30, 770, 130, 820);
$page->setLineWidth(1)->drawLine(25, 25, 570, 25);
//bottom horizontal
$page->setLineWidth(1)->drawLine(25, 25, 25, 820);
//left vertical
$page->setLineWidth(1)->drawLine(570, 25, 570, 820);
//right vertical
$page->setLineWidth(1)->drawLine(570, 820, 25, 820);
//top horizontal
//set the font
$page->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA), 8);
$this->view->search = 10;
$generalLedger = new Generalledger_Model_Generalledger();
//Lia
$this->view->ledegerList = $generalLedger->generalLedger($date1, $date2, $glsubcode);
$openingCash = $generalLedger->openingBalance($date1, $glsubcode);
print_r($openingCash);
// // Assets
$this->view->ledegerListAssets = $generalLedger->generalLedgerAssets($date1, $date2, $glsubcode);
$this->view->openingCashAssets = $generalLedger->openingBalanceAssets($date1, $glsubcode);
if (!$this->view->ledegerListAssets && !$this->view->openingCashAssets) {
} else {
$this->view->search = 0;
echo "<font color='red'><b> Record not found</b> </font>";
}
if (count($openingCash)) {
foreach ($openingCash as $openingCash) {
if ($openingCash["glsubcode_id"] == $ledegerList["glsubcode_id"]) {
$liabilityCash = $openingCash["openingCash"];
}
}
}
$text = array("Particular", "debit", "credit", "balance", "Opening balance");
$x0 = 60;
$x1 = 200;
$x2 = 340;
$x3 = 480;
$page->drawLine(50, 740, 550, 740);
$page->drawLine(50, 720, 550, 720);
$page->drawText($text[0], $x0, 725);
$page->drawText($text[1], $x1, 725);
$page->drawText($text[2], $x2, 725);
$page->drawText($text[3], $x3, 725);
$page->drawText($text[4], $x0, 700);
foreach ($openingCash as $openingCash) {
$page->drawText($openingCash["openingCash"], $x3, 700);
}
$y1 = 725;
//$page->drawText(Opening balance,$x0, $y1);
$pdf->save('/var/www/' . $projname . '/reports/GL.pdf');
$path = '/var/www/' . $projname . '/reports/GL.pdf';
// $pdf->save('/var/www/ourbank/reports/GL.pdf');
// $path = '/var/www/ourbank/reports/GL.pdf';
chmod($path, 0777);
}
示例12:
<?php
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
$pdf = new Zend_Pdf();
$page1 = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$page2 = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$page3 = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
// Page created, but not included into pages list
$pdf->pages[] = $page1;
$pdf->pages[] = $page2;
$destination1 = Zend_Pdf_Destination_Fit::create($page2);
$destination2 = Zend_Pdf_Destination_Fit::create($page3);
// Returns $page2 object
$page = $pdf->resolveDestination($destination1);
// Returns null, page 3 is not included into document yet
$page = $pdf->resolveDestination($destination2);
$pdf->setNamedDestination('Page2', $destination1);
$pdf->setNamedDestination('Page3', $destination2);
// Returns $destination2
$destination = $pdf->getNamedDestination('Page3');
// Returns $destination1
$pdf->resolveDestination(Zend_Pdf_Destination_Named::create('Page2'));
// Returns null, page 3 is not included into document yet
$pdf->resolveDestination(Zend_Pdf_Destination_Named::create('Page3'));
示例13: testFontExtracting
public function testFontExtracting()
{
if (PHP_OS == 'AIX') {
$this->markTestSkipped('Not supported on AIX');
}
$pdf = new Zend_Pdf();
$fontsList = array(Zend_Pdf_Font::FONT_COURIER, Zend_Pdf_Font::FONT_HELVETICA_BOLD, Zend_Pdf_Font::FONT_TIMES_BOLD_ITALIC);
foreach ($fontsList as $fontName) {
// Add new page generated by Zend_Pdf object (page is attached to the specified the document)
$pdf->pages[] = $page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4_LANDSCAPE);
$font = Zend_Pdf_Font::fontWithName($fontName);
$page->setFont($font, 10)->drawText($font->getFontName(Zend_Pdf_Font::NAME_POSTSCRIPT, 'en') . ':', 100, 400);
$page->setFont($font, 20)->drawText("'The quick brown fox jumps over the lazy dog'", 100, 360);
$type = $font->getFontType();
}
$TTFFontsList = array('VeraBd.ttf', 'VeraBI.ttf', 'VeraIt.ttf', 'VeraMoBd.ttf', 'VeraMoBI.ttf', 'VeraMoIt.ttf', 'VeraMono.ttf', 'VeraSeBd.ttf', 'VeraSe.ttf', 'Vera.ttf');
foreach ($TTFFontsList as $fontName) {
// Add new page generated by Zend_Pdf object (page is attached to the specified the document)
$pdf->pages[] = $page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4_LANDSCAPE);
$font = Zend_Pdf_Font::fontWithPath(dirname(__FILE__) . '/_fonts/' . $fontName);
$page->setFont($font, 10)->drawText($font->getFontName(Zend_Pdf_Font::NAME_POSTSCRIPT, 'en', 'CP1252') . ':', 100, 400);
$page->setFont($font, 20)->drawText("'The quick brown fox jumps over the lazy dog'", 100, 360);
$type = $font->getFontType();
}
$pdf->save(dirname(__FILE__) . '/_files/output.pdf');
unset($pdf);
$pdf1 = Zend_Pdf::load(dirname(__FILE__) . '/_files/output.pdf');
$newPages = array();
$fontList = array();
$fontNames = array();
foreach ($pdf1->pages as $page) {
$pageFonts = $page->extractFonts();
foreach ($pageFonts as $font) {
$fontList[] = $font;
$fontNames[] = $font->getFontName(Zend_Pdf_Font::NAME_POSTSCRIPT, 'en', 'UTF-8');
}
}
$this->assertEquals(array(Zend_Pdf_Font::FONT_COURIER, Zend_Pdf_Font::FONT_HELVETICA_BOLD, Zend_Pdf_Font::FONT_TIMES_BOLD_ITALIC, 'BitstreamVeraSans-Bold', 'BitstreamVeraSans-BoldOblique', 'BitstreamVeraSans-Oblique', 'BitstreamVeraSansMono-Bold', 'BitstreamVeraSansMono-BoldOb', 'BitstreamVeraSansMono-Oblique', 'BitstreamVeraSansMono-Roman', 'BitstreamVeraSerif-Bold', 'BitstreamVeraSerif-Roman', 'BitstreamVeraSans-Roman'), $fontNames);
$pdf1->pages[] = $page = $pdf1->newPage(Zend_Pdf_Page::SIZE_A4);
$yPosition = 700;
foreach ($fontList as $font) {
$page->setFont($font, 15)->drawText("The quick brown fox jumps over the lazy dog", 100, $yPosition);
$yPosition -= 30;
}
$fontNames1 = array();
foreach ($pdf1->extractFonts() as $font) {
$fontNames1[] = $font->getFontName(Zend_Pdf_Font::NAME_POSTSCRIPT, 'en', 'UTF-8');
}
$this->assertEquals(array(Zend_Pdf_Font::FONT_COURIER, Zend_Pdf_Font::FONT_HELVETICA_BOLD, Zend_Pdf_Font::FONT_TIMES_BOLD_ITALIC, 'BitstreamVeraSans-Bold', 'BitstreamVeraSans-BoldOblique', 'BitstreamVeraSans-Oblique', 'BitstreamVeraSansMono-Bold', 'BitstreamVeraSansMono-BoldOb', 'BitstreamVeraSansMono-Oblique', 'BitstreamVeraSansMono-Roman', 'BitstreamVeraSerif-Bold', 'BitstreamVeraSerif-Roman', 'BitstreamVeraSans-Roman'), $fontNames1);
$page = reset($pdf1->pages);
$font = $page->extractFont(Zend_Pdf_Font::FONT_COURIER);
$this->assertTrue($font instanceof Zend_Pdf_Resource_Font_Extracted);
$font = $page->extractFont(Zend_Pdf_Font::FONT_TIMES_BOLD_ITALIC);
$this->assertNull($font);
$font = $pdf1->extractFont(Zend_Pdf_Font::FONT_TIMES_BOLD_ITALIC);
$this->assertTrue($font instanceof Zend_Pdf_Resource_Font_Extracted);
$font = $pdf1->extractFont(Zend_Pdf_Font::FONT_TIMES_ROMAN);
$this->assertNull($font);
$pdf1->save(dirname(__FILE__) . '/_files/output1.pdf');
unset($pdf1);
$pdf2 = Zend_Pdf::load(dirname(__FILE__) . '/_files/output1.pdf');
$this->assertTrue($pdf2 instanceof Zend_Pdf);
unset($pdf2);
unlink(dirname(__FILE__) . '/_files/output.pdf');
unlink(dirname(__FILE__) . '/_files/output1.pdf');
}
示例14: pdfgenerationAction
function pdfgenerationAction()
{
//$fetchMeetings=new Meetingreport_Model_Meetingreport();
$pdf = new Zend_Pdf();
$page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
// $page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4_LANDSCAPE);
$pdf->pages[] = $page;
// Image
$app = $this->view->baseUrl();
$word = explode('/', $app);
$projname = '';
for ($i = 0; $i < count($word); $i++) {
if ($i > 0 && $i < count($word) - 1) {
$projname .= '/' . $word[$i];
}
}
$image_name = "/var/www" . $app . "/images/logo.jpg";
$image = Zend_Pdf_Image::imageWithPath($image_name);
//$page->drawImage($image, 25, 770, 570, 820);
$page->drawImage($image, 30, 770, 130, 820);
$page->setLineWidth(1)->drawLine(25, 25, 570, 25);
//bottom horizontal
$page->setLineWidth(1)->drawLine(25, 25, 25, 820);
//left vertical
$page->setLineWidth(1)->drawLine(570, 25, 570, 820);
//right vertical
$page->setLineWidth(1)->drawLine(570, 820, 25, 820);
//top horizontal
$page->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA), 8);
$text = array("Bank", "Branch", "Thumb Impression Declaration", "I hereby declare that Smt/sri ______________________ has given the thumb impression in the presence of me and his mother tongue", " ___________________________", "Date", "Yours sincerely");
$x0 = 60;
$x10 = 450;
$x11 = 285;
$page->drawText($text[0], $x0, 725);
$page->drawText($text[1], $x0, 700);
$page->drawText($text[2], $x0, 675);
$page->drawText($text[3], $x0, 650);
$page->drawText($text[4], $x0, 625);
$page->drawText($text[5], $x0, 575);
$page->drawText($text[6], $x10, 575);
$page->setLineWidth(1)->drawLine(50, 750, 550, 750);
$page->setLineWidth(1)->drawLine(50, 750, 50, 465);
$page->setLineWidth(1)->drawLine(50, 750, 50, 465);
$page->setLineWidth(1)->drawLine(50, 465, 550, 465);
$page->setLineWidth(1)->drawLine(550, 465, 550, 750);
$page->setLineWidth(1)->drawLine(50, 690, 550, 690);
$page->setLineWidth(1)->drawLine(50, 670, 550, 670);
$y1 = 700;
$totalAmount = "0";
$totaldebit = "0";
$pdfData = $pdf->render();
$pdf->save('/var/www' . $projname . '/reports/thumbdeclaration' . date('Y-m-d') . '.pdf');
$path = '/var/www' . $projname . '/reports/thumbdeclaration' . date('Y-m-d') . '.pdf';
chmod($path, 0777);
}
示例15: getPdf
public function getPdf($shipments = array())
{
$pdf = new Zend_Pdf();
$style = new Zend_Pdf_Style();
$style->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA_BOLD), 10);
foreach ($shipments as $shipment) {
$page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$pdf->pages[] = $page;
$order = $shipment->getOrder();
/* Add image */
$this->insertLogo($page);
/* Add address */
$this->insertAddress($page);
/* Add head */
$this->insertOrder($page, $order);
$page->setFillColor(new Zend_Pdf_Color_GrayScale(1));
$page->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA), 7);
$page->drawText(Mage::helper('sales')->__('Packingslip # ') . $shipment->getIncrementId(), 35, 780);
/* Add table */
$page->setFillColor(new Zend_Pdf_Color_RGB(0.93, 0.92, 0.92));
$page->setLineColor(new Zend_Pdf_Color_GrayScale(0.5));
$page->setLineWidth(0.5);
/* Add table head */
$page->drawRectangle(25, $this->y, 570, $this->y - 15);
$this->y -= 10;
$page->setFillColor(new Zend_Pdf_Color_RGB(0.4, 0.4, 0.4));
$page->drawText(Mage::helper('sales')->__('QTY'), 35, $this->y);
$page->drawText(Mage::helper('sales')->__('Products'), 60, $this->y);
$page->drawText(Mage::helper('sales')->__('SKU'), 470, $this->y);
$this->y -= 15;
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
/* Add body */
foreach ($shipment->getAllItems() as $item) {
$shift = 10;
if ($this->y < 15) {
/* Add new table head */
$page = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
$pdf->pages[] = $page;
$this->y = 800;
$page->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA), 7);
$page->setFillColor(new Zend_Pdf_Color_RGB(0.93, 0.92, 0.92));
$page->setLineColor(new Zend_Pdf_Color_GrayScale(0.5));
$page->setLineWidth(0.5);
$page->drawRectangle(25, $this->y, 570, $this->y - 15);
$this->y -= 10;
$page->setFillColor(new Zend_Pdf_Color_RGB(0.4, 0.4, 0.4));
$page->drawText(Mage::helper('sales')->__('QTY'), 35, $this->y);
$page->drawText(Mage::helper('sales')->__('Products'), 60, $this->y);
$page->drawText(Mage::helper('sales')->__('SKU'), 470, $this->y);
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
$this->y -= 20;
}
/* Add products */
$page->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA), 7);
$page->drawText($item->getQty() * 1, 35, $this->y);
$page->drawText($item->getName(), 60, $this->y);
$page->drawText($item->getName(), 60, $this->y);
foreach (explode('</li>', $item->getDescription()) as $description) {
$page->drawText(strip_tags($description), 65, $this->y - $shift);
$shift += 10;
}
$page->drawText($item->getSku(), 470, $this->y);
$this->y -= $shift;
}
}
return $pdf;
}