本文整理汇总了PHP中Zend_Pdf_Page::setFillColor方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Pdf_Page::setFillColor方法的具体用法?PHP Zend_Pdf_Page::setFillColor怎么用?PHP Zend_Pdf_Page::setFillColor使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend_Pdf_Page
的用法示例。
在下文中一共展示了Zend_Pdf_Page::setFillColor方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testDrawing
public function testDrawing()
{
$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');
}
示例2: insertHeaderText
/**
* Draw header for page
*
* @param Zend_Pdf_Page $page
* @return void
*/
protected function insertHeaderText(Zend_Pdf_Page $page)
{
/* Add page header */
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
$font = $this->_setFontBold($page, 12);
$page->drawText("Retail/Tax Invoice/Cash Memorandum", 25, 800, 'UTF-8');
}
示例3: insertHeaderText
/**
* Draw header for page
*
* @param Zend_Pdf_Page $page
* @return void
*/
protected function insertHeaderText(Zend_Pdf_Page $page)
{
/* Add page header */
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
$font = $this->_setFontBold($page, 13);
$page->drawText("Order Details", 25, 815, 'UTF-8');
}
示例4: addProductContentCode
/**
* Add Product Content Code
*
* @param string $code
* @return Mage_Usa_Model_Shipping_Carrier_Dhl_Label_Pdf_PageBuilder
* @throws Zend_Pdf_Exception
* @throws InvalidArgumentException
*/
public function addProductContentCode($code)
{
$this->_page->saveGS();
$codes = array('TDK' => 0, 'TDE' => 1, 'TDL' => 0, 'TDM' => 1, 'TDT' => 0, 'TDY' => 1, 'XPD' => 0, 'DOX' => 0, 'WPX' => 1, 'ECX' => 0, 'DOM' => 0);
if (!key_exists($code, $codes)) {
throw new InvalidArgumentException(Mage::helper('usa')->__('Product content code is invalid'));
}
$font = null;
if ($codes[$code]) {
$this->_page->drawRectangle($this->_x(140), $this->_y(0), $this->_x(190), $this->_y(28), Zend_Pdf_Page::SHAPE_DRAW_FILL);
$this->_page->setFillColor(new Zend_Pdf_Color_Html("#ffffff"));
$font = $this->_fontBold;
} else {
$font = $this->_fontNormal;
}
$this->_page->setFont($font, 17);
$this->_page->drawText($code, $this->_x(146), $this->_y(21));
$this->_page->restoreGS();
return $this;
}
示例5: drawFont
protected function drawFont($object)
{
$fontItem = $object->getItem();
if ($fontItem->getFace() == 'bold') {
$fontDecoration = 'bold';
} else {
$fontDecoration = 'regular';
}
$fontPath = SERVER_BASE . '/fonts/' . $fontItem->getName() . '.ttf';
if (is_file($fontPath)) {
$font = Zend_Pdf_Font::fontWithPath($fontPath, Zend_Pdf_Font::EMBED_SUPPRESS_EMBED_EXCEPTION);
} else {
if ($fontDecoration == "bold") {
$font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA_BOLD);
} else {
$font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA);
}
}
if ($fontItem->getFace() == "invert") {
$this->page->setFillColor(new Zend_Pdf_Color_Rgb(0, 0, 0));
//schwarze farbe setzen fuer Hintergrund
$width = $this->widthForStringUsingFontSize($object->getValue(), $font, $fontItem->getSize());
$height = $fontItem->getSize();
$this->page->drawRectangle($this->coordX($this->mmToPts($object->getPosx())), $this->coordY($this->mmToPts($object->getPosy())) + $height / 2, $this->coordX($this->mmToPts($object->getPosx())) + $width, $this->coordY($this->mmToPts($object->getPosy())) - $height / 2, Zend_Pdf_Page::SHAPE_DRAW_FILL);
$this->page->setFillColor(new Zend_Pdf_Color_Rgb(1, 1, 1));
//weiße farbe setzen fuer Text
} else {
$this->page->setFillColor(new Zend_Pdf_Color_Rgb(0, 0, 0));
//schwarze farbe setzen fuer text
}
$this->page->setFont($font, $fontItem->getSize());
if ($fontItem->getRotation() !== null) {
$this->page->rotate($this->coordX($this->mmToPts($object->getPosx())), $this->coordY($this->mmToPts($object->getPosy())), deg2rad(360 - $fontItem->getRotation()));
}
$this->page->drawText($object->getValue(), $this->coordX($this->mmToPts($object->getPosx())), $this->coordY($this->mmToPts($object->getPosy()) + $fontItem->getSize() / 2), 'UTF-8');
if ($fontItem->getRotation() !== null) {
$this->page->rotate($this->coordX($this->mmToPts($object->getPosx())), $this->coordY($this->mmToPts($object->getPosy())), -deg2rad(360 - $fontItem->getRotation()));
}
}
示例6: insertTableHeader
/**
* insert the table header of the shipment
*
* @param Zend_Pdf_Page $page page to write on
*/
protected function insertTableHeader($page)
{
$page->setFillColor($this->colors['grey1']);
$page->setLineColor($this->colors['grey1']);
$page->setLineWidth(1);
$page->drawRectangle($this->margin['left'], $this->y, $this->margin['right'] - 10, $this->y - 15);
$page->setFillColor($this->colors['black']);
$this->_setFontRegular($page, 9);
$this->y -= 11;
$page->drawText(Mage::helper('firegento_pdf')->__('No.'), $this->margin['left'], $this->y, $this->encoding);
$page->drawText(Mage::helper('firegento_pdf')->__('Description'), $this->margin['left'] + 105, $this->y, $this->encoding);
$page->drawText(Mage::helper('firegento_pdf')->__('Qty'), $this->margin['left'] + 450, $this->y, $this->encoding);
}
示例7: insertTableHeader
/**
* Insert Table Header for Items
*
* @param Zend_Pdf_Page $page current page object of Zend_PDF
*
* @return void
*/
protected function insertTableHeader(&$page)
{
$page->setFillColor($this->colors['grey1']);
$page->setLineColor($this->colors['grey1']);
$page->setLineWidth(1);
$page->drawRectangle($this->margin['left'], $this->y, $this->margin['right'], $this->y - 15);
$page->setFillColor($this->colors['black']);
$font = $this->_setFontRegular($page, 9);
$this->y -= 11;
$page->drawText(Mage::helper('firegento_pdf')->__('Pos'), $this->margin['left'] + 3, $this->y, $this->encoding);
$page->drawText(Mage::helper('firegento_pdf')->__('No.'), $this->margin['left'] + 25, $this->y, $this->encoding);
$page->drawText(Mage::helper('firegento_pdf')->__('Description'), $this->margin['left'] + 130, $this->y, $this->encoding);
$columns = array();
$columns['price'] = array('label' => Mage::helper('firegento_pdf')->__('Price'), '_width' => 60);
$columns['price_incl_tax'] = array('label' => Mage::helper('firegento_pdf')->__('Price (incl. tax)'), '_width' => 60);
$columns['qty'] = array('label' => Mage::helper('firegento_pdf')->__('Qty'), '_width' => 40);
$columns['tax'] = array('label' => Mage::helper('firegento_pdf')->__('Tax'), '_width' => 50);
$columns['tax_rate'] = array('label' => Mage::helper('firegento_pdf')->__('Tax rate'), '_width' => 50);
$columns['subtotal'] = array('label' => Mage::helper('firegento_pdf')->__('Total'), '_width' => 50);
$columns['subtotal_incl_tax'] = array('label' => Mage::helper('firegento_pdf')->__('Total (incl. tax)'), '_width' => 70);
// draw price, tax, and subtotal in specified order
$columnsOrder = explode(',', Mage::getStoreConfig('sales_pdf/invoice/item_price_column_order'));
// draw starting from right
$columnsOrder = array_reverse($columnsOrder);
$columnOffset = 0;
foreach ($columnsOrder as $columnName) {
$columnName = trim($columnName);
if (array_key_exists($columnName, $columns)) {
$column = $columns[$columnName];
$labelWidth = $this->widthForStringUsingFontSize($column['label'], $font, 9);
$page->drawText($column['label'], $this->margin['right'] - $columnOffset - $labelWidth, $this->y, $this->encoding);
$columnOffset += $column['_width'];
}
}
}
示例8:
// 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);
// Use another font
$page2->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_TIMES), 32)
->drawText('Times-Roman 32 text string', 60, 450);
// Draw rectangle
$page2->setFillColor(new Zend_Pdf_Color_GrayScale(0.8))
->setLineColor(new Zend_Pdf_Color_GrayScale(0.2))
->setLineDashingPattern(array(3, 2, 3, 4), 1.6)
->drawRectangle(60, 400, 400, 350);
// Draw circle
$page2->setLineDashingPattern(Zend_Pdf_Page::LINE_DASHING_SOLID)
->setFillColor(new Zend_Pdf_Color_Rgb(1, 0, 0))
->drawCircle(85, 375, 25);
// Draw sectors
$page2->drawCircle(200, 375, 25, 2*M_PI/3, -M_PI/6)
->setFillColor(new Zend_Pdf_Color_Cmyk(1, 0, 0, 0))
->drawCircle(200, 375, 25, M_PI/6, 2*M_PI/3)
->setFillColor(new Zend_Pdf_Color_Rgb(1, 1, 0))
->drawCircle(200, 375, 25, -M_PI/6, M_PI/6);
示例9: insertAddress
/**
* Insert address to pdf page
*
* @param Zend_Pdf_Page $page
* @param null $store
*/
protected function insertAddress(&$page, $store = null)
{
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
$font = $this->_setFontRegular($page, 10);
$page->setLineWidth(0);
$this->y = $this->y ? $this->y : 815;
$top = 815;
$collection = Mage::getModel('marketplace/userprofile')->getCollection()->addFieldToFilter('mageuserid', array('eq' => Mage::getSingleton('customer/session')->getCustomerId()));
foreach ($collection as $row) {
$address = $row->getOthersInfo();
}
foreach (explode("\n", $address) as $value) {
if ($value !== '') {
$value = preg_replace('/<br[^>]*>/i', "\n", $value);
foreach (Mage::helper('core/string')->str_split($value, 45, true, true) as $_value) {
$page->drawText(trim(strip_tags($_value)), $this->getAlignRight($_value, 130, 440, $font, 10), $top, 'UTF-8');
$top -= 10;
}
}
}
$this->y = $this->y > $top ? $top : $this->y;
}
示例10: _generatePdf
/**
* Generate a review portal pdf.
*
* @param integer $portalId
* @return string The pdf name
*/
protected function _generatePdf($portalId)
{
$portal = new Object_ReviewPortal($portalId);
if (!$portal->getId()) {
return false;
}
// Get the screenshots of all the portal pages.
$pages = Repo_ReviewPortalPage::getInstance()->getPortalPages($portalId);
if (!$pages || $pages->count() == 0) {
return false;
}
$pdf = new Zend_Pdf();
$pageNumber = 1;
$font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA);
$fontSize = 10;
foreach ($pages as $_p) {
$_images = array();
$_page = new Object_Page($_p->id);
// Try get static screenshots if the setting is set.
if ($_page->screenshot_type == Repo_Page::SCREENSHOT_TYPE_STATIC) {
$_images = $_page->getStaticScreenshots(true);
}
// Get dynamic one.
if (empty($_images)) {
$_images[] = Manager_ScreenCapture_Page::getInstance()->getScreenshot($_p->id);
}
foreach ($_images as $_image) {
$_pdfImage = Zend_Pdf_Image::imageWithPath($_image);
$_pdfPage = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_LETTER_LANDSCAPE);
$_pdfPage->drawImage($_pdfImage, 20, 36, $_pdfPage->getWidth() - 20, $_pdfPage->getHeight() - 20);
$_pdfPage->setFont($font, 16);
$_pdfPage->setFillColor(Zend_Pdf_Color_Html::color('#333333'))->drawText($pageNumber, $_pdfPage->getWidth() / 2, 10);
$pageNumber++;
$pdf->pages[] = $_pdfPage;
}
}
$pdfName = $portalId . '_' . time() . '.pdf';
$path = $this->_rootPath . DS . $pdfName;
$pdf->save($path);
return $pdfName;
}
示例11:
// 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));
示例12: insertHeader
/**
* Insert Header
*
* @param Zend_Pdf_Page $page Current page object of Zend_Pdf
* @param Mage_Sales_Model_Order $order Order object
* @param object $document Document object
*
* @return void
*/
protected function insertHeader(&$page, $order, $document)
{
$page->setFillColor($this->colors['black']);
$mode = $this->getMode();
$this->_setFontBold($page, 15);
if ($mode == 'invoice') {
$title = 'Invoice';
} elseif ($mode == 'shipment') {
$title = 'Shipment';
} else {
$title = 'Creditmemo';
}
$page->drawText(Mage::helper('firegento_pdf')->__($title), $this->margin['left'], $this->y, $this->encoding);
$this->_setFontRegular($page);
$this->y += 80;
$labelRightOffset = 180;
$valueRightOffset = 10;
$font = $this->_setFontRegular($page, 10);
$width = 80;
$numberOfLines = 0;
// Invoice/shipment/creditmemo Number
if ($mode == 'invoice') {
$numberTitle = 'Invoice number:';
} elseif ($mode == 'shipment') {
$numberTitle = 'Shipment number:';
} else {
$numberTitle = 'Creditmemo number:';
}
$page->drawText(Mage::helper('firegento_pdf')->__($numberTitle), $this->margin['right'] - $labelRightOffset, $this->y, $this->encoding);
$incrementId = $document->getIncrementId();
$page->drawText($incrementId, $this->margin['right'] - $valueRightOffset - $this->widthForStringUsingFontSize($incrementId, $font, 10), $this->y, $this->encoding);
$this->Ln();
$numberOfLines++;
// Order Number
$putOrderId = $this->_putOrderId($order);
if ($putOrderId) {
$page->drawText(Mage::helper('firegento_pdf')->__('Order number:'), $this->margin['right'] - $labelRightOffset, $this->y, $this->encoding);
$page->drawText($putOrderId, $this->margin['right'] - $valueRightOffset - $this->widthForStringUsingFontSize($putOrderId, $font, 10), $this->y, $this->encoding);
$this->Ln();
$numberOfLines++;
}
// Customer Number
if ($this->_showCustomerNumber($order->getStore())) {
$page->drawText(Mage::helper('firegento_pdf')->__('Customer number:'), $this->margin['right'] - $labelRightOffset, $this->y, $this->encoding);
$numberOfLines++;
if ($order->getCustomerId() != '') {
$prefix = Mage::getStoreConfig('sales_pdf/invoice/customeridprefix');
if (!empty($prefix)) {
$customerid = $prefix . $order->getCustomerId();
} else {
$customerid = $order->getCustomerId();
}
$page->drawText($customerid, $this->margin['right'] - $valueRightOffset - $this->widthForStringUsingFontSize($customerid, $font, 10), $this->y, $this->encoding);
$this->Ln();
$numberOfLines++;
} else {
$page->drawText('-', $this->margin['right'] - $valueRightOffset - $this->widthForStringUsingFontSize('-', $font, 10), $this->y, $this->encoding);
$this->Ln();
$numberOfLines++;
}
}
// Customer IP
if (!Mage::getStoreConfigFlag('sales/general/hide_customer_ip', $order->getStoreId())) {
$page->drawText(Mage::helper('firegento_pdf')->__('Customer IP:'), $this->margin['right'] - $labelRightOffset, $this->y, $this->encoding);
$customerIP = $order->getData('remote_ip');
$font = $this->_setFontRegular($page, 10);
$page->drawText($customerIP, $this->margin['right'] - $valueRightOffset - $this->widthForStringUsingFontSize($customerIP, $font, 10), $this->y, $this->encoding);
$this->Ln();
$numberOfLines++;
}
$page->drawText(Mage::helper('firegento_pdf')->__($mode == 'invoice' ? 'Invoice date:' : 'Date:'), $this->margin['right'] - $labelRightOffset, $this->y, $this->encoding);
$documentDate = Mage::helper('core')->formatDate($document->getCreatedAtDate(), 'medium', false);
$page->drawText($documentDate, $this->margin['right'] - $valueRightOffset - $this->widthForStringUsingFontSize($documentDate, $font, 10), $this->y, $this->encoding);
$this->Ln();
$numberOfLines++;
// Payment method.
$putPaymentMethod = $mode == 'invoice' && Mage::getStoreConfig('sales_pdf/invoice/payment_method_position') == FireGento_Pdf_Model_System_Config_Source_Payment::POSITION_HEADER;
if ($putPaymentMethod) {
$page->drawText(Mage::helper('firegento_pdf')->__('Payment method:'), $this->margin['right'] - $labelRightOffset, $this->y, $this->encoding);
$paymentMethodArray = $this->_prepareText($order->getPayment()->getMethodInstance()->getTitle(), $page, $font, 10, $width);
$page->drawText(array_shift($paymentMethodArray), $this->margin['right'] - $valueRightOffset - $width, $this->y, $this->encoding);
$this->Ln();
$numberOfLines++;
$paymentMethodArray = $this->_prepareText(implode(" ", $paymentMethodArray), $page, $font, 10, 2 * $width);
foreach ($paymentMethodArray as $methodString) {
$page->drawText($methodString, $this->margin['right'] - $labelRightOffset, $this->y, $this->encoding);
$this->Ln();
$numberOfLines++;
}
}
// Shipping method.
//.........这里部分代码省略.........
示例13: insertHeader
/**
* Insert Header
*
* @param Zend_Pdf_Page $page Current page object of Zend_Pdf
* @param object $order Order object
* @param object $document Document object
* @return void
*/
protected function insertHeader(&$page, $order, $document)
{
$page->setFillColor($this->colors['black']);
$mode = $this->getMode();
$this->_setFontBold($page, 15);
$page->drawText(Mage::helper('firegento_pdf')->__($mode == 'invoice' ? 'Invoice' : 'Creditmemo'), $this->margin['left'], $this->y, $this->encoding);
$this->_setFontRegular($page);
$this->y += 80;
$rightoffset = 180;
$page->drawText(Mage::helper('firegento_pdf')->__($mode == 'invoice' ? 'Invoice number:' : 'Creditmemo number:'), $this->margin['right'] - $rightoffset, $this->y, $this->encoding);
$this->Ln();
$yPlus = 15;
$putOrderId = $this->_putOrderId($order);
if ($putOrderId) {
$page->drawText(Mage::helper('firegento_pdf')->__('Order number:'), $this->margin['right'] - $rightoffset, $this->y, $this->encoding);
$this->Ln();
$yPlus += 15;
}
if ($order->getCustomerId() != '') {
$page->drawText(Mage::helper('firegento_pdf')->__('Customer number:'), $this->margin['right'] - $rightoffset, $this->y, $this->encoding);
$this->Ln();
$yPlus += 15;
}
if (!Mage::getStoreConfigFlag('sales/general/hide_customer_ip', $order->getStoreId())) {
$page->drawText(Mage::helper('firegento_pdf')->__('Customer IP:'), $this->margin['right'] - $rightoffset, $this->y, $this->encoding);
$this->Ln();
$yPlus += 15;
}
$page->drawText(Mage::helper('firegento_pdf')->__($mode == 'invoice' ? 'Invoice date:' : 'Date:'), $this->margin['right'] - $rightoffset, $this->y, $this->encoding);
$this->Ln();
$yPlus += 15;
// Draw payment method.
$putPaymentMethod = $mode == 'invoice' && Mage::getStoreConfig('sales_pdf/invoice/payment_method_position') == FireGento_Pdf_Model_System_Config_Source_Payment::POSITION_HEADER;
if ($putPaymentMethod) {
$page->drawText(Mage::helper('firegento_pdf')->__('Payment method:'), $this->margin['right'] - $rightoffset, $this->y, $this->encoding);
$this->Ln();
$yPlus += 15;
}
// Draw shipping method.
$putShippingMethod = $mode == 'invoice' && Mage::getStoreConfig('sales_pdf/invoice/shipping_method_position') == FireGento_Pdf_Model_System_Config_Source_Shipping::POSITION_HEADER;
if ($putShippingMethod) {
$page->drawText(Mage::helper('firegento_pdf')->__('Shipping method:'), $this->margin['right'] - $rightoffset, $this->y, $this->encoding);
$this->Ln();
$yPlus += 15;
}
$this->y += $yPlus;
$rightoffset = 10;
$font = $this->_setFontRegular($page, 10);
$incrementId = $document->getIncrementId();
$page->drawText($incrementId, $this->margin['right'] - $rightoffset - $this->widthForStringUsingFontSize($incrementId, $font, 10), $this->y, $this->encoding);
$this->Ln();
if ($putOrderId) {
$page->drawText($putOrderId, $this->margin['right'] - $rightoffset - $this->widthForStringUsingFontSize($putOrderId, $font, 10), $this->y, $this->encoding);
$this->Ln();
}
if ($order->getCustomerId() != '') {
$prefix = Mage::getStoreConfig('sales_pdf/invoice/customeridprefix');
if (!empty($prefix)) {
$customerid = $prefix . $order->getCustomerId();
} else {
$customerid = $order->getCustomerId();
}
$page->drawText($customerid, $this->margin['right'] - $rightoffset - $this->widthForStringUsingFontSize($customerid, $font, 10), $this->y, $this->encoding);
$this->Ln();
}
if (!Mage::getStoreConfigFlag('sales/general/hide_customer_ip', $order->getStoreId())) {
$customerIP = $order->getData('remote_ip');
$font = $this->_setFontRegular($page, 10);
$page->drawText($customerIP, $this->margin['right'] - $rightoffset - $this->widthForStringUsingFontSize($customerIP, $font, 10), $this->y, $this->encoding);
$this->Ln();
}
$documentDate = Mage::helper('core')->formatDate($document->getCreatedAtDate(), 'medium', false);
$page->drawText($documentDate, $this->margin['right'] - $rightoffset - $this->widthForStringUsingFontSize($documentDate, $font, 10), $this->y, $this->encoding);
$this->Ln();
if ($putPaymentMethod) {
$paymentMethod = $order->getPayment()->getMethodInstance()->getTitle();
$page->drawText($paymentMethod, $this->margin['right'] - $rightoffset - $this->widthForStringUsingFontSize($paymentMethod, $font, 10), $this->y, $this->encoding);
$this->Ln();
}
if ($putShippingMethod) {
$shippingMethod = $order->getShippingDescription();
$page->drawText($shippingMethod, $this->margin['right'] - $rightoffset - $this->widthForStringUsingFontSize($shippingMethod, $font, 10), $this->y, $this->encoding);
$this->Ln();
}
}
示例14: DrawItems
protected static function DrawItems(Zend_Pdf_Page $objPage, $objContributionAmountArray, $intY)
{
$intXArray = array(20, 92, 200, 308, 465);
$objPage->setLineColor(new Zend_Pdf_Color_GrayScale(0.2));
$objPage->setFillColor(new Zend_Pdf_Color_GrayScale(0.2));
$objPage->drawRectangle($intXArray[0] - 6, $intY, $intXArray[4] + 6, $intY - 10);
$intY -= 7.5;
$objPage->setFillColor(new Zend_Pdf_Color_GrayScale(1));
$objPage->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA_BOLD), 7);
$objPage->drawText('POSTED DATE', $intXArray[0], $intY, 'UTF-8');
$objPage->drawText('CONTRIBUTED BY', $intXArray[1], $intY, 'UTF-8');
$objPage->drawText('FUND', $intXArray[2], $intY, 'UTF-8');
$objPage->drawText('TRANSACTION', $intXArray[3], $intY, 'UTF-8');
self::DrawTextRight($objPage, $intXArray[4], $intY, 'AMOUNT');
$objPage->setFillColor(new Zend_Pdf_Color_GrayScale(0));
$intY -= 3.5;
$objPage->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA), 9);
foreach ($objContributionAmountArray as $objAmount) {
$intY -= 10;
$objPage->drawText($objAmount->StewardshipContribution->DateCredited->ToString('MMM D YYYY'), $intXArray[0], $intY, 'UTF-8');
$objPage->drawText($objAmount->StewardshipContribution->Person->Name, $intXArray[1], $intY, 'UTF-8');
$objPage->drawText($objAmount->StewardshipFund->Name, $intXArray[2], $intY, 'UTF-8');
$objPage->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA), 7.5);
$objPage->drawText($objAmount->StewardshipContribution->TransactionShort, $intXArray[3], $intY, 'UTF-8');
$objPage->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA), 9);
$strAmount = QApplication::DisplayCurrency($objAmount->Amount);
if ($objAmount->StewardshipContribution->NonDeductibleFlag) {
$strAmount = $strAmount . ' (*)';
}
self::DrawTextRight($objPage, $intXArray[4], $intY, $strAmount);
}
}
示例15: insertOrder
/**
* Insert order to pdf page
*
* @param Zend_Pdf_Page $page
* @param Mage_Sales_Model_Order $obj
* @param bool $putOrderId
*/
protected function insertOrder(&$page, $obj, $putOrderId = true)
{
if ($obj instanceof Mage_Sales_Model_Order) {
$shipment = null;
$order = $obj;
} elseif ($obj instanceof Mage_Sales_Model_Order_Shipment) {
$shipment = $obj;
$order = $shipment->getOrder();
}
$this->y = $this->y ? $this->y : 815;
$top = $this->y;
//$theitemm = Mage::getStoreConfig('system_config_name/groups/estoreiq_logo');
//$eye_logo_image = Mage::getStoreConfig('estoreiq_options/messages/estoreiq_logo');
//$theitemm = Mage::getBaseDir('media') . '/estoreiq-logo/' . $eye_logo_image;
//$page->drawText(
//'img: '.$theitemm,
//35,
//($top -= 15),
// 'UTF-8'
// );
$top -= 15;
$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, $top, 275, ($top - 25));
//$page->drawRectangle(275, $top, 570, ($top - 25));
/* Calculate blocks info */
/* Billing Address */
/*
$billingAddress = $this->_formatAddress($order->getBillingAddress()->format('pdf'));
*/
/* Payment */
/*
$paymentInfo = Mage::helper('payment')->getInfoBlock($order->getPayment())
->setIsSecureMode(true)
->toPdf();
$paymentInfo = htmlspecialchars_decode($paymentInfo, ENT_QUOTES);
$payment = explode('{{pdf_row_separator}}', $paymentInfo);
foreach ($payment as $key=>$value){
if (strip_tags(trim($value)) == '') {
unset($payment[$key]);
}
}
reset($payment);
*/
/* Shipping Address and Method */
if (!$order->getIsVirtual()) {
/* Shipping Address */
$shippingAddress = $this->_formatAddress($order->getShippingAddress()->format('pdf'));
$shippingMethod = $order->getShippingDescription();
}
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
$this->_setFontBold($page, 12);
//$page->drawText(Mage::helper('sales')->__('Sold to:'), 35, ($top - 15), 'UTF-8');
if (!$order->getIsVirtual()) {
//$page->drawText(Mage::helper('sales')->__('Ship to:'), 285, ($top - 15), 'UTF-8');
} else {
//$page->drawText(Mage::helper('sales')->__('Payment Method:'), 285, ($top - 15), 'UTF-8');
}
$addressesHeight = $this->_calcAddressHeight($billingAddress);
if (isset($shippingAddress)) {
$addressesHeight = max($addressesHeight, $this->_calcAddressHeight($shippingAddress));
}
$page->setFillColor(new Zend_Pdf_Color_GrayScale(1));
//$page->drawRectangle(25, ($top - 25), 570, $top - 33 - $addressesHeight);
$page->setFillColor(new Zend_Pdf_Color_GrayScale(0));
$this->_setFontRegular($page, 10);
$this->y = $top + 40;
$addressesStartY = $this->y;
foreach ($billingAddress as $value) {
if ($value !== '') {
$text = array();
foreach (Mage::helper('core/string')->str_split($value, 45, true, true) as $_value) {
$text[] = $_value;
}
foreach ($text as $part) {
if (strpos($part, "F:") === false) {
$page->drawText(strip_tags(ltrim($part)), 35, $this->y, 'UTF-8');
$this->y -= 15;
}
}
}
}
$addressesEndY = $this->y;
if (!$order->getIsVirtual()) {
$this->y = $addressesStartY;
foreach ($shippingAddress as $value) {
if ($value !== '') {
$text = array();
foreach (Mage::helper('core/string')->str_split($value, 45, true, true) as $_value) {
$text[] = $_value;
}
foreach ($text as $part) {
//.........这里部分代码省略.........