我打印的mangento发票上很难看到订单和发票号码。我想将标题从深灰色默认值上的白色更改为白色上的普通旧黑色。有谁能指出我正确的地方更新这个?
我正在查看Mage \ Sales \ Model \ Order \ Pdf中的invoice.php文件,但是在那里打印报告中似乎有一些项目...我看不到与标题有关的任何内容。
由于
答案 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));`
只是想分享,因为我个人在此浪费了太多时间,并希望将下一个人保存一些。