Как наложить HTML-сгенерированный PDF поверх существующего PDF?

Я хочу начать с исходного файла PDF, содержащего графику и текст, а затем взять некоторый HTML-код, который имеет динамические значения для некоторого пользовательского ввода, сгенерировать его как PDF, возможно, либо используя исходный PDF в качестве фона, ИЛИ как-нибудь запустить скрипт PHP, чтобы потом «объединить» оба PDF, где один выступает в качестве фона для другого.

У меня есть код, который отображает PDF в формате HTML: (с использованием DOMPDF)

$initialpdf = file_get_contents('file_html.html');

$initialpdf = str_replace(array(
        '%replaceText1%',
        '%replaceText2%'
    ), array (
        $replaceText1,
        $replaceText2,
    ), $initialpdf);

$fp = fopen('file_html_new.html','w');
file_put_contents('file_html_new.html', $initialpdf);

require_once("dompdf/dompdf_config.inc.php");
spl_autoload_register('DOMPDF_autoload');
function pdf_create($html, $filename, $paper, $orientation, $stream=TRUE)
{
    $dompdf = new DOMPDF();
    $dompdf->set_paper($paper,$orientation);
    $dompdf->load_html($html);
    $dompdf->render();
    $pdf = $dompdf->output();
    @file_put_contents($filename . ".pdf", $pdf);
}
$filename = 'HTML_Generated_pdf';
$dompdf = new DOMPDF();
$html = file_get_contents('file_html_new.html'); 
pdf_create($html,$filename,'Letter','landscape');

Приведенный выше код принимает html-файл «file_html.html» и выполняет замену строк на пользовательские вводимые значения, отображает его в виде нового HTML-файла с именем «file_html_new.html» и затем отображает этот файл как PDF.

У меня также есть другой код PHP, который отображает PDF с использованием PDF в качестве исходного источника: (с использованием FPDF)

<?php
ob_clean();
ini_set("session.auto_start", 0);
define('FPDF_FONTPATH','font/');
define('FPDI_FONTPATH','font/');
require('fpdf.php');
require('fpdi.php');

$pdf = new FPDI();
$pdf->setSourceFile("/home/user/public_html/wp-content/myPDF.pdf");
$tplIdx = $pdf->importPage(1);
$specs = $pdf->getTemplateSize($tplIdx);
$pdf->addPage($specs['h'] > $specs['w'] ? 'P' : 'L', 'Letter');
$pdf->useTemplate($tplIdx,  0, 0);

$pdf->SetFont('helvetica');
$pdf->SetXY(30, 30);
$pdf->Write(0, $replaceText1);
ob_end_clean();
$pdf->Output('New_Generated_PDF.pdf', 'F');
?>

Это берет уже существующий PDF, «myPDF.pdf», и использует его в качестве фона, записывая некоторые значения, переданные в документ, и сохраняя вновь созданный документ.

Хотя это, по сути, то, что я хочу сделать, мне нужно работать с html, потому что точное форматирование текста становится строгим и почти невозможно сделать, просто нанеся его вручную.

Я открыт для использования DOMPDF, FPDF, FPDI, TCPDF или любого другого ресурса PHP для достижения этой цели.

Есть ли способ объединить два способа, которые у меня есть выше?

Ответы на вопрос(1)

Ваш ответ на вопрос