请点击此链接,它应该可以工作..
http://www.php-guru.in/2013/html-to-pdf-conversion-in-codeigniter/
或者你可以看下面
网络上有许多 PHP 库可以将 HTML 页面转换为 PDF 文件。当您在核心 PHP 中处理任何 Web 应用程序时,它们很容易实现和部署。但是当我们尝试将这些库与任何框架或模板集成时,如果我们使用的框架没有自己的库来将其与任何 PDF 库集成,这将变得非常繁琐。当我需要将 HTML 页面转换为 PDF 文件并且我使用的框架是 codeigniter 时,我也遇到了同样的情况。
我在网上搜索并获得了一些 PHP 库来将 HTML 页面转换为 PDF 文件。经过大量研究和谷歌搜索后,我决定使用 TCPDF PHP 库将 HTML 页面转换为 PDF 文件以满足我的要求。我发现 TCPDf PHP 库很容易与 codeigniter 集成,并表示正在开发它。在成功完成了codeigniter和TCPDF的集成之后,我想到了在网络上分享这个脚本。
现在,让我们从代码的实现开始。
下载TCPDF库代码,可以从TCPDF网站http://www.tcpdf.org/下载。
现在在您使用 codeigniter 开发的 Web 应用程序的“application/helpers/”目录中创建“tcpdf”文件夹。复制所有 TCPDF 库文件并将其粘贴到“application/helpers/tcpdf/”目录中。更新TCPDF的配置文件“tcpdf_config.php”,位于“application/helpers/tcpdf/config”目录下,根据你的应用需求进行修改。我们可以在 cofing 文件中设置 logo、字体、字体大小、with、height、header 等。授予对 tcpdf 文件夹中的“缓存”文件夹的读取、写入权限。在定义目录结构、更新配置文件和分配权限之后,这里开始你的实际编码部分。
在codeigniter的“application/helpers/”目录下创建一个PHP帮助文件,说“pdf_helper.php”,然后复制下面给出的代码并粘贴到帮助文件中
助手:application/helpers/pdf_helper.php
function tcpdf()
{
require_once('tcpdf/config/lang/eng.php');
require_once('tcpdf/tcpdf.php');
}
然后在controller文件中调用上面的helper,假设我们的controller文件是“createpdf.php”,它的方法是pdf(),那么pdf()方法会加载“pdf_helper”helper,也会有其他的代码。
控制器:application/controllers/createpdf.php
function pdf()
{
$this->load->helper('pdf_helper');
/*
---- ---- ---- ----
your code here
---- ---- ---- ----
*/
$this->load->view('pdfreport', $data);
}
现在创建一个视图文件,在“application/views/”目录中说“pdfreport.php”,它也在控制器的pdf()方法中加载。所以在视图文件中我们可以直接调用我们在“pdf_helper”助手中定义的tcpdf()函数,它将加载所有需要的TCPDF类、函数、变量等。然后我们可以直接使用我们的TCPDF示例代码当前控制器或视图。现在在当前视图“pdfreport”中复制下面给定的代码:
查看:application/views/pdfreport.php
tcpdf();
$obj_pdf = new TCPDF('P', PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
$obj_pdf->SetCreator(PDF_CREATOR);
$title = "PDF Report";
$obj_pdf->SetTitle($title);
$obj_pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, $title, PDF_HEADER_STRING);
$obj_pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$obj_pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
$obj_pdf->SetDefaultMonospacedFont('helvetica');
$obj_pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$obj_pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
$obj_pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$obj_pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
$obj_pdf->SetFont('helvetica', '', 9);
$obj_pdf->setFontSubsetting(false);
$obj_pdf->AddPage();
ob_start();
// we can have any view part here like HTML, PHP etc
$content = ob_get_contents();
ob_end_clean();
$obj_pdf->writeHTML($content, true, false, true, false, '');
$obj_pdf->Output('output.pdf', 'I');
因此,我们的 HTML 页面将使用 CodeIgniter 中的 TCPDF 转换为 PDF。我们还可以使用 TCPDF 库在 PDF 文件中嵌入图片、css、修改。