发票pdf徽标图像问题

时间:2012-05-04 11:32:27

标签: magento

您好在Magento我想在我的发票和包装详细信息页面中使用大徽标,以及我在后端根据配置 - > sales-> Invoice

它缩放到200 * 50,我不知道如何解决这个问题。

任何人帮助

2 个答案:

答案 0 :(得分:1)

HY, 发票的pdf打印出来 /app/code/core/Mage/Sales/Model/Order/invoice.pdf 徽标打印功能在abstract.pdf中 在函数insertLogo

protected function insertLogo(&$page, $store = null)
{
    $image = Mage::getStoreConfig('sales/identity/logo', $store);
    if ($image) {
        $image = Mage::getBaseDir('media') . '/sales/store/logo/' . $image;
        if (is_file($image)) {
            $image = Zend_Pdf_Image::imageWithPath($image);
            $page->drawImage($image, 25, 800, 125, 825);
        }
    }
    //return $page;
}

当然,从那里开始一个局部的ovveride来修改徽标的大小和位置。 我不知道在上传过程中是否完成了徽标缩放,如果是,您应首先处理“上传时缩放”问题。

再见 朱塞佩

答案 1 :(得分:0)

我使用以下代码添加图片页眉和页脚,希望它有所帮助。

图片路径: /media/sales/store/logo/default/pdf_invoice_header.png /media/sales/store/logo/default/pdf_invoice_footer.png

文件路径:app / code / local / Mage / Sales / Model / Order / Pdf / Invoice.php (从app / code / core / Mage / Sales / Model / Order / Pdf / Invoice.php复制)

    ...
    protected function _drawHeader(Zend_Pdf_Page $page)
{
    /* Add table head */
    /* Custom Code Start */
    $header_image = Mage::getConfig()->getOptions()->getMediaDir().DS.'sales/store/logo/default/pdf_invoice_header.png';             
    if (is_file($header_image)) {
        $header_image = Zend_Pdf_Image::imageWithPath($header_image);
        $page->drawImage($header_image, 0, 767, 595, 842);
    }
    $footer_image = Mage::getConfig()->getOptions()->getMediaDir().DS.'sales/store/logo/default/pdf_invoice_footer.png';             
    if (is_file($footer_image)) {
        $footer_image = Zend_Pdf_Image::imageWithPath($footer_image);
        $page->drawImage($footer_image, 0, 10, 595, 60);
    }
    /* Custom Code End */
    ...