2017-02-09 64 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的问题。 –