php在pdf文件上写字

首先通过composer引入fpdi包

composer require setasign/fpdi

接下来是代码示例

        $file = "/www/test.pdf";
        $pdf = new Fpdi();
        //设置读取的pdf文件
        $pdf->setSourceFile($file);
        //这个是去除pdf上面的头部的横线
        $pdf->setPrintHeader(false);
        //这个是去除pdf底部的横线
        $pdf->setPrintFooter(false);
        //这里是表示读取pdf的页码,1表示第一页
        $tplId = $pdf->importPage(1);
        //这个是重点。可以避免内容过大,自动新增一页。也就是不让页面溢出
        $pdf->SetAutoPageBreak(false,0);
        //添加新页面,设置尺寸。
        //如果没有设置尺寸,默认是A4尺寸,我这样的尺寸是宽150mm,高100mm
        $pdf->AddPage('',['MediaBox'=>['urx'=>150,'ury'=>150,'llx'=>0,'lly'=>50]]);
        //讲读取的pdf写入到新创建的pdf上面
        $pdf->useImportedPage($tplId);
        //设置字体大小
        $pdf->SetFontSize(25);
        //写入html代码
        $pdf->MultiCell(100,0,'<p>A</p>',0,'H',false,0,125,80,true,0,true);
        //保存到文件
        $save = '/www/xxx.pdf';
        $pdf->output($save,'F');
        //直接在浏览器输出
        $pdf->output('','E');

几个问题总结一下

1.默认会页码线,可通过setPrintHeader和setPrintFooter设置成false去掉

2.默认页面大小是A4,可通过相关参数设置相关的大小,包里面有指定了常用的尺寸,a3,a4等,可根据实际需求。设置想要的尺寸

3.页面自动增页问题,可通过设置SetAutoPageBreak解决问题


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值