2014-04-08 88 views
0

使用Zend框架附帶的PDF解析器。我試圖畫圖像,但得到一個錯誤。使用zendPDF繪製圖像

function addReklam($reklamblad) //picture.png 
{ 

    // kolla hur många sidor som skapats och lägg till en sista reklamsida: 
    //Öppna fil här, lägg till den i PDF 
    $fish = 0; 
    if($this->drawed_lines<52) 
    { 
     $this->active_page = $this->pdf->pages[2]; 
     $fish = 1; 
    } 
    elseif($this->drawed_lines<92) 
    { 
     $this->active_page = $this->pdf->pages[3]; 
     $fish = 2; 
    } 
    elseif($this->drawed_lines<132) 
    { 
     $this->active_page = $this->pdf->pages[4]; 
     $fish = 3; 
    } 
    else 
    { 
     $this->active_page = $this->pdf->pages[5]; 
     $fish = 4; 
    } 


    //$this->active_page = $this->pdf->pages[5];  // sida 5 är reklamsidan 
    $image = $this->imageWidthPath($reklamblad); 
    $this->active_page->drawImage($image, $left, $bottom, $right, $top); 
} 

我得到這個消息:

Fatal error: Call to undefined method fakturapdf::imageWidthPath() in /data/web/script/pdffaktura/testpdf-txt.php on line 681 

編輯: 我已經試過現在這個樣子:

function addReklam($reklamblad) 
    { 

     // kolla hur många sidor som skapats och lägg till en sista reklamsida: 
     //Öppna fil här, lägg till den i PDF 
     $fish = 0; 
     if($this->drawed_lines<52) 
     { 
      $this->active_page = $this->pdf->pages[2]; 
      $fish = 1; 
     } 
     elseif($this->drawed_lines<92) 
     { 
      $this->active_page = $this->pdf->pages[3]; 
      $fish = 2; 
     } 
     elseif($this->drawed_lines<132) 
     { 
      $this->active_page = $this->pdf->pages[4]; 
      $fish = 3; 
     } 
     else 
     { 
      $this->active_page = $this->pdf->pages[5]; 
      $fish = 4; 
     } 


     //$this->active_page = $this->pdf->pages[5];  // sida 5 är reklamsidan 
     $image = Zend_Pdf_Image::imageWithPath($reklamblad); 
     $this->active_page->drawImage($image, 400, 400, 400, 400); 


    } 

這似乎做工精細,我會得到任何錯誤。但是,這是使用它的正確方法嗎?沒有什麼打印到PDF上。

+0

你在哪裏定義了'imageWidthPath()'?這不是一個Zend函數,也不是一個PHP函數。你有沒有在類addReklam()函數的類中定義它? – doydoy44

+0

@ doydoy44:查看我編輯的問題:-) – user500468

回答

0

是的,這是正確的。它是Zend_Pdf_Image::imageWithPath而不是$this->imageWidthPath()
這是一種靜態方法。
如果它可以幫助你,我發現it