我正在尝试根据来自 DB 的数据创建 1、2 或 3 个 PDF - 使用 FPDF 和 PHP。如果我必须创建 1 个 PDF,那没关系。但是如果我需要创建 2 或 3 我会遇到问题,因为无法重新声明某些类。
下面是测试必须生成多少 PDF 的 PHP 代码:
include "gera-certificado.php"; //creates the first PDF - ok
if($workshop_manha != ''){
include "gera-certificado-wm.php"; // if this var is not empty, then create the second PDF -> problem
}
if($workshop_tarde != ''){
include "gera-certificado-wt.php"; // if this var is not empty, then create the third PDF -> problem
}
FPDF 代码下方 - 包含 2 个图像(页眉和页脚)和仅 2 或 3 行名称为 var 的文本。在第一个 PDF 中生成 Ok 但在第二个和第三个中返回错误,因为重新声明了某些 FPDF 类。
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<?php
define('FPDF_FONTPATH','fpdf/font/');
require('fpdf/fpdf.php');
class PDF extends FPDF {
function Header() {
$this->SetFont("Arial","I",10);
//escreve no pdf largura,altura,conteudo,borda,quebra de linha,alinhamento,preenchimento fundo
//altura
$this->SetY(0);
$this->Image("img/topo-certificado.jpg",0,0,297,100); //Image($arquivo);
}
function Footer(){
$this->SetY(-15);
$this->Image("img/rodape-certificado.jpg",0,140,297,70); //Image($arquivo);
}
}
$pdf=new PDF('L','mm','A4');
$pdf->Open();
$pdf->AddPage();
$pdf->SetMargins(0,0,0);
$pdf->SetAutoPageBreak(false);
$pdf->SetAuthor('Dr. Ricardo Wainer');
$pdf->SetTitle('Certificado');
$pdf->SetFont('Arial','',13);
$pdf->SetTextColor(27,67,161); // Definir cor do texto
$pdf->SetDrawColor(0,0,0); // Definir cor do traço?
$pdf->SetXY(30,106);
$pdf->MultiCell(236,8,"Certificamos que ".strtoupper($nome)." participou do I Congresso Wainer de Psicoterapias Cognitivas, I Congresso Sul-Brasileiro de Terapias Integradas e de 3ª Onda e I Simpósio Brasileiro de Terapia do Esquema, realizado no dias 27, 28 e 29 de agosto de 2015, com carga horária de 22 horas.",0,'C');
$pdf->Output("../../certificados/".$id.".pdf");
?>
好的。而已!第二个和第三个 FPDF 代码与上面的代码相同,只是图像目录不同,因为 PDF 的页眉和页脚不同。提前感谢您的帮助和时间:)