将PDF与编码PDF中的PHP组合-错误:“0”;模板不存在&引用;

将PDF与编码PDF中的PHP组合-错误:“0”;模板不存在&引用;,php,pdf,pdf-generation,tcpdf,fpdf,Php,Pdf,Pdf Generation,Tcpdf,Fpdf,我正在构建一个简单的web服务,它需要将两个PDF连接到一个PDF文件中。我可以将两个PDF作为文本(基本编码64)传递给服务,服务需要将组合的PDF作为编码文本输出,然后客户端将重新编码并生成PDF 我在这里发现了这个问题,这让我开始思考: 我找到了一些示例代码和多个库: 注:此问题已解决;我在这里回答这个问题也是为了任何遇到这个问题的人的利益 根据,TCPDI目前与FPDF最新版本捆绑的FPDF_TPL版本不兼容 试图使用FPDF_TPL的捆绑版本可能导致“模板不存在”错误;使用独立版

我正在构建一个简单的web服务,它需要将两个PDF连接到一个PDF文件中。我可以将两个PDF作为文本(基本编码64)传递给服务,服务需要将组合的PDF作为编码文本输出,然后客户端将重新编码并生成PDF

我在这里发现了这个问题,这让我开始思考:

我找到了一些示例代码和多个库:

  • 注:此问题已解决;我在这里回答这个问题也是为了任何遇到这个问题的人的利益

    根据,TCPDI目前与FPDF最新版本捆绑的FPDF_TPL版本不兼容

    试图使用FPDF_TPL的捆绑版本可能导致“模板不存在”错误;使用独立版本()可以解决此问题。如果您在使用FPDF_TPL 1.2.3时继续收到错误消息,请根据TCPDI或TCPDI_解析器(视情况而定)记录Github问题,并提供触发问题的示例PDF。

    注意:此问题已解决;我在这里回答这个问题也是为了任何遇到这个问题的人的利益

    根据,TCPDI目前与FPDF最新版本捆绑的FPDF_TPL版本不兼容


    试图使用FPDF_TPL的捆绑版本可能导致“模板不存在”错误;使用独立版本()可以解决此问题。如果您在使用FPDF_TPL 1.2.3时继续收到错误消息,请根据TCPDI或TCPDI_解析器(视情况而定)记录Github问题,并提供触发问题的示例PDF。

    $pdf641=\u POST['pdf1']不应该是
    $pdf641=$\u POST['pdf1']?@Meroje谢谢。仍然是相同的错误。
    $pdf641=\u POST['pdf1']不应该是
    $pdf641=$\u POST['pdf1']?@Meroje谢谢。还是一样的错误。
    
    <?php
    
    require_once($_SERVER['DOCUMENT_ROOT'].'/FPDF/tcpdf/tcpdf.php');
    require_once($_SERVER['DOCUMENT_ROOT'].'/FPDF/tcpdf/tcpdi.php');
    
    
    class ConcatPdf extends TCPDI 
    {
        public $files = array();
    
        public function setFiles($files)
        {
            $this->files = $files;
        }
    
        public function concat()
        {
            foreach($this->files AS $file) {
                //$pageCount = $this->setSourceFile($file);
                $pageCount = $this->setSourceData($file);//i modified this
                for ($pageNo = 1; $pageNo <= $pageCount; $pageNo++) {
                     $tplIdx = $this->ImportPage($pageNo);
                     $s = $this->getTemplatesize($tplIdx);
                     $this->AddPage($s['w'] > $s['h'] ? 'L' : 'P', array($s['w'], $s['h']));
                     $this->useTemplate($tplIdx); //error here
                }
            }
        }
    }
    
    
    $pdf641 = $_POST['pdf1'];
    $pdf642 = $_POST['pdf2'];
    
    $pdf = new ConcatPdf();
    $pdf->setFiles(array(base64_decode($pdf641), base64_decode($pdf642) ));
    $pdf->concat(); //!!error here!!
    echo base64_encode($pdf->Output('concat.pdf', 'S'));
    
    ?>