准备工作
首先查询了相关的类库,有FPDF,zendPDF,TcPDF等等。首先看了下先选择了FPDF,可以说除了中文字符以外没有什么问题,中文乱码而且看了下最新版本没有很好的解决方案,所以只能放弃。后来就专门找支持中文的发现了TcPDF,开始也是中文字体支持不是很好,但是发现了有人做了中文的语言包才使得TcPDF更加完美起来。

简介
TCPDF 是一个流行的用于生成 PDF 文档的 PHP 类。TCPDF是当前唯一完整支持 UTF-8 Unicode 以及从右至左书写的语言包括双向文稿的 PHP 库。

TCPDF说明文档
一、首先调用TCPDF文件
require_once(‘tcpdf.php’);
二、实例化TCPDF类 页面方向(P =肖像,L =景观)、测量(mm)、页面格式
$pdf = new TCPDF(‘P’, ‘mm’, ‘A4’, true, ‘UTF-8’, false);
代码实现
vendor(‘Pdf’);
$pdf = new \TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, ‘UTF-8’, false);

  1. $pdf->SetCreator(PDF_CREATOR);
  2. $pdf->SetAuthor('sunnier');
  3. $pdf->SetTitle('123');
  4. $pdf->SetSubject('123');
  5. $pdf->SetKeywords('sunnier');
  6. // set default header data
  7. $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);
  8. // set header and footer fonts
  9. $pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
  10. $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
  11. // set default monospaced font
  12. $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
  13. // set margins
  14. $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
  15. $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
  16. $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
  17. // set auto page breaks
  18. $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
  19. // set image scale factor
  20. $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
  21. // set some language-dependent strings (optional)
  22. global $l;
  23. $pdf->setLanguageArray($l);
  24. // ---------------------------------------------------------
  25. // set font
  26. $pdf->SetFont('simfang', '', 10);
  27. // - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  28. // Print a table
  29. // add a page
  30. $pdf->AddPage();
  31. // 随便写HTML
  32. $html = 'adsf';
  33. // output the HTML content
  34. $pdf->writeHTML($html, true, false, true, false, '');
  35. // reset pointer to the last page
  36. $pdf->lastPage();
  37. $pdf->Output('哈哈哈'.pdf', 'I');

演示图:

可以看到其中可以插入图片也是没有问题的,写法就按照html写就OK,当然不只是支持HTML,只是这里比较适合这种方式。

更多相关文章

  1. phpquery中文手册
  2. 2分钟玩转中文接口测试工具-ApiPost
  3. grid仿PHP中文网首页
  4. vscode 常用插件安装
  5. vscode常用插件(持续更新)
  6. 一个免费开源的轻量级PHP开发框架
  7. Visual Studio Code如何切换为简体中文
  8. WritShop 是一款强大的全域集电商系统,为赋能多元化电商服务的解
  9. parcle打包工具的一些资料链接

随机推荐

  1. Android(安卓)WiFi Direct文件传输
  2. Intent(意图)
  3. 转:关于android中图片裁剪以及PorterDuffX
  4. Android应用程序组件Content Provider应
  5. Android原生(Native)C开发之三 鼠标事件
  6. Android防止崩溃的库,有效的降低Crash率
  7. Android高手进阶教程(十)之----Android(
  8. Android(安卓)JNI 调用 C/C++
  9. Qt on Android(安卓)Episode 5(翻译)
  10. Android初学者必知会的编程规范