2017-02-09 50 views
0

有很多關於這個主題的帖子,但鏈接到任何sloution不再工作了......我跟着this文章。 我下載了TCPDF master。 Upzipped它在文件夾供應商/ TCPDF Eddited xtcpdf.php在Cakephp中使用TCPDF

<?php 
App::import('Vendor','tcpdf/tcpdf'); 

class XTCPDF extends TCPDF{ 

} 

編輯config.php文件(這是正確的道路? /** * 安裝路徑(在/ var/WWW/TCPDF /)。 *默認情況下會自動計算,但您也可以將其設置爲固定字符串以提高性能。 */ define('K_PATH_MAIN','/ var/www/ppp/app/Vendor/tcpdf');

/** 
* URL path to tcpdf installation folder (http://localhost/tcpdf/). 
* By default it is automatically set but you can also set it as a fixed string to improve performances. 
*/ 
define ('K_PATH_URL', 'http://localhost/ppp/Vendor/tcpdf'); 

創建應用/查看/佈局/ pdf/def ault.ctp

<?php 

header("Content-type: application/pdf"); 

echo $content_for_layout; 
?> 

然後在網頁控制器:

public function newpdf(){ 

    $users = $this->User->find('all'); 

    $this->set(compact('users')); 

    $this->layout = '/pdf/default'; 

    $this->render()->type('application/pdf'); 

} 

和德圖/ webcontroller

public function newpdf(){ 

    $users = $this->User->find('all'); 

    $this->set(compact('users')); 

    $this->layout = '/pdf/default'; 

    $this->render()->type('application/pdf'); 

} 

當我想測試我得到一個空白頁,沒有任何東西...

  • 我在網頁中做了這個功能。那還好嗎?或者我應該在其他地方做這個功能?
  • 配置文件中的路徑,我在linux上的本地主機上工作。路徑:/var/www/ppp/app/Vendor/tcpdf。這是正確的道路嗎?
  • URL設置爲http://localhost/ppp/app/Vendor/tcpdf這是正確的URL嗎? 在此先感謝
+1

請將相關代碼,您所做的功能等添加到問題中。 – Alfabravo

回答

0

首先是做你檢查TCPDF是否加載與否

App::import('Vendor','tcpdf',array('file' => 'tcpdf/tcpdf.php')); 

然後路徑要放在pdf.It必須是真實路徑

$path=realpath('../webroot/pdf/') . '/'; 

然後初始化TCPDF

$pdf= new tcpdf(); 

個然後設置所需的文件選項

$pdf->SetCreator(PDF_CREATOR); 
$pdf->SetAuthor('Your Name'); 
$pdf->SetTitle(title); 
$pdf->SetSubject('TCPDF'); 
$pdf->SetKeywords(keywords); 
// add a page 
$pdf->AddPage(); 

然後讓要轉換爲PDF

$html= $this->render('/Elements/Pdf'); 

的HTML編寫HTML到PDF

$pdf->writeHTML($html, true, false, true, false, ''); 

後輸出

$name='pdf.pdf'; 
$pdf->Output($path.$name, 'F'); 

讓我知道如果還有一些問題。

+0

在網站上也有CakePDF,這也沒有工作。昨天我解決了這個問題,同時也解決了TCPDF的問題。 –