Этот скрипт перебирает некоторые файлы JPG и добавляет их в PDF. После каждого JPG мне нужно вставить PDF-файл, и, насколько я могу судить, это можно сделать только с помощью FPDI.
$GLOBALS['txt'] = 'Cover Text';
$GLOBALS['mid_x'] = 11/2;
$imagesFiles = glob('newimages/*.{png,jpg,jpeg,JPG,JPEG}', GLOB_BRACE);
require('fpdf17/fpdf.php');
require_once('fpdi/fpdi.php');
class PDF extends FPDF {
}
$pdf=new PDF("L","in","Letter");
$pdf->SetMargins(.1,.1,.1);
$pdf->AddPage();
$pdf->Image('newimages/02-CoverImage-2013.jpg', 0, 0, 11, 8.5, "JPG");
$pdf->SetFont('Arial','',48);
$pdf->SetTextColor(255,255,255); // White
$pdf->Text($GLOBALS['mid_x']-$pdf-GetStringWidth($GLOBALS['txt'])/2,7,$GLOBALS['txt']);
FOREACH ($imagesFiles as $filename) {
$pdf->AddPage();
$pdf->Image($filename, 0, 0, 11, 8.5, "JPG");
}
$pdf->Output();
Я могу создать функцию со следующим сценарием FPDI, который будет вызываться в цикле FOREACH выше, но как мне удается вставить выходные данные функции FPDI в файл FPDF?
$files = glob('pdfs/*.{pdf,PDF}', GLOB_BRACE);
require_once('fpdf17/fpdf.php');
require_once('fpdi/fpdi.php');
$pdf = new FPDI();
$pageNo = 1;
$pageCount = $pdf->setSourceFile($files[3]);
$templateId = $pdf->importPage($pageNo);
$size = $pdf->getTemplateSize($templateId);
if ($size['w'] > $size['h']) {
$pdf->AddPage('L', array($size['w'], $size['h']));
} else {
$pdf->AddPage('P', array($size['w'], $size['h']));
}
$pdf->useTemplate($templateId);
$pdf->Output();
С помощью $pdf->addCalendarPage()
не удается с:
Вызов неопределенного метода PDF :: addCalendarPage ()
С помощью $pdf->Image(addCalendarPage())
не удается с:
Не удается переопределить класс PDF в функции FPDI
Задача ещё не решена.
Других решений пока нет …