首页 > Web开发 > 详细

php批量打印发票三(php用FPDF合并所有图片为PDF文档)

时间:2020-11-20 17:40:01      阅读:57      评论:0      收藏:0      [点我收藏+]

三. php用FPDF合并所有图片为PDF文档

过程

1.下载FPDF库, F意为free,免费的意思. 但它调用fpdi时, 有区分免费和商业版本. 所以起初想用FPDF和FPDI库, 进行PDF合并, 结果发现发票的PDF是修改过了,加了签章,免费版的合并不了,只能用商业版, 所以放弃了, 如果是普通PDF, 还是很方便快捷

方法1: 把图片合并成1个PDF文档

 

方法2: 把多个PDF合并成1个PDF文档

前题: PDF没修改过

引入FPDF和FPDI, 代码如下, 这个从官方文档看, 示例代码很多. 复制来就能用

//PDF文档合并,功能正常, 不能合并编辑过的PDF,比如有签名的,比如盖章的发票.
use setasign\Fpdi\Fpdi;

require_once(‘fpdf/fpdf.php‘);
require_once(‘fpdi/src/autoload.php‘);

class ConcatPdf extends Fpdi
{
    public $files = array();

    public function setFiles($files)
    {
        $this->files = $files;
    }

    public function concat()
    {
        foreach($this->files AS $file) {
            $pageCount = $this->setSourceFile($file);
            for ($pageNo = 1; $pageNo <= $pageCount; $pageNo++) {
                $pageId = $this->ImportPage($pageNo);
                $s = $this->getTemplatesize($pageId);
                $this->AddPage($s[‘orientation‘], $s);
                $this->useImportedPage($pageId);
            }
        }
    }
}

$pdf = new ConcatPdf();
$pdf->setFiles(array(‘5.pdf‘, ‘6.pdf‘));
$pdf->concat();
$pdf->Output(‘I‘, ‘concat.pdf‘);

 

php批量打印发票三(php用FPDF合并所有图片为PDF文档)

原文:https://www.cnblogs.com/snowguest/p/14011193.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!