初次使用TCPDF(生成pdf文件的包)
发布日期:2021-10-15 18:54:44 浏览次数:9 分类:技术文章

本文共 2770 字,大约阅读时间需要 9 分钟。

1:安装

由于本项目使用的是laravel5.5.*版本,所以直接:

composer require tecnickcom/tcpdf

安装执行完之后,会在vendor出现tecnickcom文件夹。

2:控制器中引入:
不需要注册服务提供器,直接在控制器中使用

use TCPDF;use TCPDF_FONTS;(如果不需要使用addTTFfont() 则不需要加载)

3:代码中就可以

//$pdf = new TCPDF();$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);$fontname = TCPDF_FONTS::addTTFfont('font/Droid_Sans_Fallback.ttf', 'TrueTypeUnicode', '', 32);//$pdf->SetCreator('网站');//$pdf->SetAuthor('网站');//$pdf->SetTitle('TCPDF示例');//$pdf->SetSubject('TCPDF示');//$pdf->SetKeywords('TCPDF, PDF, PHP');//设置间距//$pdf->SetHeaderData('/img/download_logo.png', 300, 'www.znnwine.com', PDF_HEADER_STRING,array(0,64,255), array(0,64,128));//$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN)); //设置页头字体//去掉默认的页头页脚。比如那个横线$pdf->setPrintHeader(false);$pdf->setPrintFooter(false);// 设置页眉和页脚字体//$pdf->setHeaderFont(['stsongstdlight', '', '10']);//$pdf->setFooterFont(['helvetica', '', '8']);// 设置默认等宽字体//$pdf->SetDefaultMonospacedFont('courier');//$pdf->Image('/img/download_logo.png', 15, 140, 75, 113, 'PNG', 'http://www.tcpdf.org', '', true, 150, '', false, false, 1, false, false, false);$pdf->SetMargins(15, 15, 15);//页面间隔$pdf->SetHeaderMargin(5);//页眉top间隔$pdf->SetFooterMargin(10);//页脚bottom间隔//设置分页$pdf->SetAutoPageBreak(true, 25);//设置字体 stsongstdlight支持中文//$pdf->SetFont('dejavusans', '', 12);//$pdf->SetFont('stsongstdlight', '', 14);//$pdf->SetFont('cid0cs', '', 12);$pdf->SetFont($fontname, '', 12);//添加一页$pdf->AddPage();$pdf->Ln(10);//换行符$html = '       
';if(!empty($order_info['subs'])){
foreach ($order_info['subs'] as $k => $v){
$html.='
'; }} $html.='
WINRY NAME/酒庄名称 '.$order_info["winery"]["name_en"].'
PO NO/采购单号 '.$order_info["purchase_no"].'
ITEM/品名 Specification/规格 QUANTITY(Cases) /数量(箱)
'.$v['wine_name_en'].' '.$v['bottles_per_box'].' x '.$v['capacity'].'ml'.' '.$v['num'].'
托盘数 TOTAL
';$pdf->writeHTML($html, true, false, true, false, '');//输出PDF$pdf->Output($order_info["winery"]["name_en"].'.pdf', 'D');//I输出、D下载

注释:由于tcpdf虽然对中文也支持,但是当中英文同时出现的时候,对中文兼容性比较好,但是英文状态下,会出现一些字体问题,所以,引入的字体库:

font/Droid_Sans_Fallback.ttf//只需要放在项目根目录中public/font目录中即可,代码中引入路径,这样就实现了中英文都可以正常显示。这个字体库直接网上下载一份就可以。

效果展示:

在这里插入图片描述

在使用搜索的过程中,发现不止这一种pdf扩展包,包括laravel框架自带的pdf扩展包就有两种,当然也可以使用其他的扩展包进行开发。

转载地址:https://blog.csdn.net/shenshulong/article/details/84994743 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:textarea标签中输入文本时,按回车键如何在html页面中换行显示
下一篇:解决label点击事件触发两次问题

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年03月03日 13时12分55秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

c语言程序设计 科学出版社习题答案,C语言程序设计(科学出版社)第4章 课后习题参考答案.doc... 2019-04-21
c语言 无错 但只运行一半,求哈夫曼编码时程序运行到一半就终止了,编译无错... 2019-04-21
deepin linux 2014安装,2014.2版本的Deepin虚拟机安装浅谈(就是深度Linux) 2019-04-21
android 限速工具,Android下载器之限速篇 2019-04-21
html刷新ajax实现原理,AJAX的原理—如何做到异步和局部刷新 2019-04-21
html中列表菜单加文字请选择,html中下拉菜单 2019-04-21
读书郎平板中android,读书郎学生平板电脑怎么用 使用方法详解【图文】 2019-04-21
html5 调用摄像头 支持IE,JS调用本地摄像头拍照(兼容各大浏览器及IE8+) 2019-04-21
rust和gta5哪个吃配置_盘点4款Steam“自由度”很高的游戏,GTA5众所周知,目前最热门... 2019-04-21
es审计日志_elasticsearch 事务日志translog 2019-04-21
dw1510_超低温种子储存柜 2019-04-21
python用opencv计算汽车间距_计算机视觉:利用OpenCV和Python进行车辆计数详细步调... 2019-04-21
文件未找到mathpage.wll_解决MathPage.wll文件找不到的问题(找了好久的良心之作)... 2019-04-21
docker 查看容器磁盘大小_查看 docker 容器使用的资源 2019-04-21
python consul服务发现_Prometheus+Consul服务自动发现监控 2019-04-21
excel提取不规则字段_利用excel服务器来实现3级或者更多级的层级关联 2019-04-21
@autowired注解的作用_只因多看了一眼提示,又一次刷新了@Autowired注释的认知 2019-04-21
ab753变频器参数怎么拷贝到面板_变频器不知道如何上手,厂家教你如何三点搞定设置变频器参数... 2019-04-21
keepalived mysql双主架构图_华为CRM资深架构师:MySQL数据库架构和同步复制流程,看完就懂... 2019-04-21
gradle 本地maven仓库_Gradle的使用教程 2019-04-21