php网页数据导出pdf打印,php实现pdf导出和打印功能。

所用插件:TCODF

//导出pdf

public function export_pdf($order_sn){

require_once(FCPATH .‘../shared/plugin/tcpdf/tcpdf.php‘);

$pdf = new TCPDF(PDF_PAGE_ORIENTATION, "pt", "A4", true, ‘UTF-8‘, false);

$pdf->SetFooterMargin(50);

$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);

if (@file_exists(FCPATH .‘../shared/plugin/tcpdf/examples/lang/eng.php‘)) {

require_once(FCPATH .‘../shared/plugin/tcpdf/examples/lang/eng.php‘);

$pdf->setLanguageArray($l);

}

$pdf->SetMargins(20,50,10 ,true);

$pdf->AddPage();

$pdf->SetFont(‘stsongstdlight‘, ‘‘, 12);

$buffer = $this->assign_value($order_sn);

$startpos = strpos($buffer,‘‘);

$endpos = strpos($buffer,‘‘);

$html = substr($buffer,$startpos,$endpos-$startpos+strlen(‘‘));

header("Content-type: text/html; charset=utf-8");

$name = "customs_declaration";

$export_name = $name.‘_‘.$order_sn;

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

$pdf->Output($export_name.‘.pdf‘, ‘d‘);

}

//将获取的网页赋值

public function assign_value($order_sn){

ob_start();

$this->declaration_print($order_sn);

$buffer = ob_get_contents();

ob_clean();

return $buffer;

}

通过ob缓存,将动态的页面缓存,已用来导出。

js打印

function preview(oper){

if (oper < 10){

//get_page_info();

bdhtml=window.document.body.innerHTML;//获取当前页的html代码

sprnstr="";//设置打印开始区域

eprnstr="";//设置打印结束区域

prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18); //从开始代码向后取html

prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//从结束代码向前取html

window.document.body.innerHTML=prnhtml;

window.print();

//prnhtml.print();

window.document.body.innerHTML=bdhtml;

} else {

window.print();

}

}

原文:http://www.cnblogs.com/tangchuanyang/p/4097478.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用第三方库如TCPDF或mPDF实现PHP中将网页导出PDF文件。 以下是使用TCPDF实现的示例代码: ```php <?php require_once('tcpdf/tcpdf.php'); // 创建PDF对象 $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); // 设置文档信息 $pdf->SetCreator(PDF_CREATOR); $pdf->SetAuthor('作者'); $pdf->SetTitle('标题'); $pdf->SetSubject('主题'); $pdf->SetKeywords('关键词'); // 设置页眉和页脚信息 $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING); $pdf->setFooterData(array(0,64,0), array(0,64,128)); // 设置页眉和页脚字体 $pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN)); $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA)); // 设置默认字体 $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED); // 设置间距 $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT); $pdf->SetHeaderMargin(PDF_MARGIN_HEADER); $pdf->SetFooterMargin(PDF_MARGIN_FOOTER); // 设置自动分页 $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM); // 设置图像比例因子 $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); // 设置字体 $pdf->SetFont('stsongstdlight', '', 14); // 将HTML转换为PDF $pdf->AddPage(); $html = '<h1>Hello, world!</h1><p>This is a sample PDF document created with TCPDF.</p>'; $pdf->writeHTML($html, true, false, true, false, ''); // 输出PDF文件 $pdf->Output('example.pdf', 'D'); ``` 以上代码将在当前目录中生成名为"example.pdf"的PDF文件,可以在浏览器中下载。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值