FPDF 如何使用动态附加 png path/name
FPDF How to attach a png with a dynamic path/name
你好,我的目标是使用动态生成的 png 文件(二维码)创建一个 pdf。
我像下面这样使用 FPDF 库:
require('fpdf/fpdf.php');
class PDF extends FPDF
{
private $pathQR;
function setPathQR($pathQR){
$this->pathQR = $pathQR;
}
// Page header
function Header()
{
// Logo
$this->Image('img/logo.png',10,10,-300);
// Arial bold 15
$this->SetFont('Helvetica','B',14);
// Move to the right
$this->Cell(80);
// Title
$this->Cell(100,10,'TITLE',0,0,'C');
// Line break
$this->Ln(10);
$this->SetFont('Helvetica','',12);
$this->Cell(85);
$this->Cell(80,10,'Other row..',0,0,'R');
$this->Ln(10);
$this->SetFont('Times','B',14);
$this->Cell(85);
$this->Cell(80,10,'Blablabla',0,0,'C');
$this->Ln(15);
$this->SetFont('Courier','B',24);
$this->Cell(85);
$this->Cell(80,10,'V T M',1,0,'C');
$this->Image('qrcode/'.$pathQR.'.png',10,10,-300);
$this->Ln(15);
$this->SetFont('Helvetica','',12);
$this->Cell(85);
}
}
// Instanciation of inherited class
$pdf = new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',16);
$pdf->setPathQR($e_mail);
$filename="pathFix/file-".$e_mail.".pdf";
$pdf->Output($filename,'F');
我在 PDF 中创建了一个函数 class
function setPathQR($pathQR){
$this->pathQR = $pathQR;
}
我调用该函数为 pathQR ($e_mail)
设置值
$pdf->setPathQR($e_mail);
但我收到错误 注意:未定义的变量:C 中的 pathQR:\xampp\htdocs...
在这一行
$this->Image('qrcode/'.$pathQR.'.png',10,10,-300);
为什么不识别$pathQR?怎么了?
谢谢
您可以使用 setter 方法将 $e_mail
变量传递给您的 class。在你创建了一个 fPDF 的实例之后,添加一些类似的东西:
class PDF extends FPDF {
public $email;
public function setemail($input) {$this->email = $input;}
当你想设置它时使用:
$pdf->setemail($e_mail);
在您的 header
方法中使用以下方式引用电子邮件地址:
$this->Image('qrcode/'. $this->email .'.png',10,10,-300);
你好,我的目标是使用动态生成的 png 文件(二维码)创建一个 pdf。
我像下面这样使用 FPDF 库:
require('fpdf/fpdf.php');
class PDF extends FPDF
{
private $pathQR;
function setPathQR($pathQR){
$this->pathQR = $pathQR;
}
// Page header
function Header()
{
// Logo
$this->Image('img/logo.png',10,10,-300);
// Arial bold 15
$this->SetFont('Helvetica','B',14);
// Move to the right
$this->Cell(80);
// Title
$this->Cell(100,10,'TITLE',0,0,'C');
// Line break
$this->Ln(10);
$this->SetFont('Helvetica','',12);
$this->Cell(85);
$this->Cell(80,10,'Other row..',0,0,'R');
$this->Ln(10);
$this->SetFont('Times','B',14);
$this->Cell(85);
$this->Cell(80,10,'Blablabla',0,0,'C');
$this->Ln(15);
$this->SetFont('Courier','B',24);
$this->Cell(85);
$this->Cell(80,10,'V T M',1,0,'C');
$this->Image('qrcode/'.$pathQR.'.png',10,10,-300);
$this->Ln(15);
$this->SetFont('Helvetica','',12);
$this->Cell(85);
}
}
// Instanciation of inherited class
$pdf = new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',16);
$pdf->setPathQR($e_mail);
$filename="pathFix/file-".$e_mail.".pdf";
$pdf->Output($filename,'F');
我在 PDF 中创建了一个函数 class
function setPathQR($pathQR){
$this->pathQR = $pathQR;
}
我调用该函数为 pathQR ($e_mail)
设置值$pdf->setPathQR($e_mail);
但我收到错误 注意:未定义的变量:C 中的 pathQR:\xampp\htdocs...
在这一行
$this->Image('qrcode/'.$pathQR.'.png',10,10,-300);
为什么不识别$pathQR?怎么了? 谢谢
您可以使用 setter 方法将 $e_mail
变量传递给您的 class。在你创建了一个 fPDF 的实例之后,添加一些类似的东西:
class PDF extends FPDF {
public $email;
public function setemail($input) {$this->email = $input;}
当你想设置它时使用:
$pdf->setemail($e_mail);
在您的 header
方法中使用以下方式引用电子邮件地址:
$this->Image('qrcode/'. $this->email .'.png',10,10,-300);