Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要在Magento中包含带有PDF的图像_Pdf_Magento_Invoice - Fatal编程技术网

需要在Magento中包含带有PDF的图像

需要在Magento中包含带有PDF的图像,pdf,magento,invoice,Pdf,Magento,Invoice,当我们从发票下载时,我需要在PDF文件中包含“客户徽标” 我尝试了以下代码 $page->drawImage($customerLogo, 25, 800, 125, 825); 但它通过以下致命错误 Fatal error: Call to a member function getResource() on a non-object in D:\Application\xampp\htdocs\projects\guardian\lib\Zend\Pdf\Page.php on li

当我们从发票下载时,我需要在PDF文件中包含“客户徽标”

我尝试了以下代码

$page->drawImage($customerLogo, 25, 800, 125, 825);
但它通过以下致命错误

Fatal error: Call to a member function getResource() on a non-object in D:\Application\xampp\htdocs\projects\guardian\lib\Zend\Pdf\Page.php on line 344

任何人都知道如何解决此问题。

要发生此错误,
$customerLogo
必须为空。答案是确保
$customerLogo
不为空。

我以前使用过此方法:

将图像放入/media文件夹中的图像中,然后将图像显示在以下代码中:

$image = Mage::getConfig()->getOptions()->getMediaDir().DS.'you-logo-here.png';             
                        if (is_file($image)) {
                            $image = Zend_Pdf_Image::imageWithPath($image);
                            $page->drawImage($image, $x+5, $y-18, $x+45, $y-6);
                        }  

您必须使用php drawImage的尺寸和坐标。但这应该可以做到。

有趣的是,这是Zend Framework的文件,我相信它是可以做到的。你确定你正确下载了所有文件吗?我检查了“$customerLogo”,它不为空,返回“D:\..\\..\media\catalog\customer\logo\1307011576pdff.png”。我在那个位置看到了那个图像。如果你检查了它,它表明你需要传递一个对象,而不是一个字符串。事实上,它应该在传递错误的参数类型时引发一个早期错误。