magento - 发票:如何将深灰色标题更改为白色,将字体更改为黑色

时间:2012-04-20 02:55:18

标签: magento magento-1.5

我打印的mangento发票上很难看到订单和发票号码。我想将标题从深灰色默认值上的白色更改为白色上的普通旧黑色。有谁能指出我正确的地方更新这个?

我正在查看Mage \ Sales \ Model \ Order \ Pdf中的invoice.php文件,但是在那里打印报告中似乎有一些项目...我看不到与标题有关的任何内容。

由于

2 个答案:

答案 0 :(得分:7)

您要查找的文件是app/code/core/Mage/Sales/Model/Order/Pdf/Abstract.php。我已使用// <--标记了您需要更改的两行。 Zend_Pdf_Color_GrayScale的文档会告诉您0.0为黑色,1.0为白色。

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();
    }

    /* @var $order Mage_Sales_Model_Order */
    $page->setFillColor(new Zend_Pdf_Color_GrayScale(1));  // <-- White header

    $page->drawRectangle(25, 790, 570, 755);

    $page->setFillColor(new Zend_Pdf_Color_GrayScale(0));  // <-- Black text
    $this->_setFontRegular($page);

    if ($putOrderId) {
        $page->drawText(Mage::helper('sales')->__('Order # ').$order->getRealOrderId(), 35, 770, 'UTF-8');
    }
    $page->drawText(Mage::helper('sales')->__('Order Date: ') . Mage::helper('core')->formatDate($order->getCreatedAtStoreDate(), 'medium', false), 35, 760, 'UTF-8');

其他信息(在进行此更改时发现):

请注意,Creditmemo,Invoice和货件均与Abstract文件共享相同的基本标题。因此,当您更改抽象文件的背景颜色时,会有一行包含Shipment#,Invoice#或Credit Memo#,该行将打印在您还需要解决的以下每个文件中。

默认字体颜色为白色,因此将abstrat背景标题更改为白色会在白色(因此不可见)上产生白色。

在同一目录下的Creditmemo.php,Invoice.php和Shipment.php文件中找到以下行(3个文件几乎相同)并更新它。

public function getPdf($shipments = array())
{
    // .... a few lines of code .....  //

    /* Add head */
    $this->insertOrder($page, $shipment, Mage::getStoreConfigFlag(self::XML_PATH_SALES_PDF_SHIPMENT_PUT_ORDER_ID, $order->getStoreId()));

    // 0 to print black, 1 to print white
    $page->setFillColor(new Zend_Pdf_Color_GrayScale(1)); 
    $this->_setFontRegular($page);

答案 1 :(得分:4)

只是寻找这个答案的人,但无法在Invoice.php,Shipping.php等中找到要更改的代码。

我的Magento版本1.7.0.2更改了最高标题发票编号我也在第512行的Abstract.php文件中进行了此更改。

` public function insertDocumentNumber(Zend_Pdf_Page $page, $text)
    {
        $page->setFillColor(new Zend_Pdf_Color_GrayScale(0));`

只是想分享,因为我个人在此浪费了太多时间,并希望将下一个人保存一些。