Возможно ли подавать PDF-файлы TCPDF или FPDI в виде строки? У меня есть входящий массив PDF-файлов в виде строк, и я не могу записать на диск. Об этом я ничего не смог найти в документации.
Если нет, существует ли эффективный способ хранения / чтения этих PDF-файлов из памяти или объектов? как подать их в FPDI?
FPDI не принимает строки, но TCPDI , который я только что выпустил, имеет метод setSourceData()
в дополнение к setSourceFile()
, поскольку у меня было то же самое требование. TCPDI имеет собственный парсер ( tcpdi_parser , на основе анализатора TCPDF), который поддерживает файлы PDF выше 1.4, не требуя коммерческого аддона для FPDI, что также может принести пользу при работе с существующими PDF-файлами.
вы можете использовать поток wraper , ..
вы можете написать wraper.php из ссылки класса выше
header('Content-Type: text/html; charset=utf-8'); require_once('tcpdf/tcpdf.php'); require_once('fpdi/fpdi.php'); require_once('wraper.php'); // Creating new page with PDF as a background $pdf = new FPDI(); $varInAnyScope = file_get_contents('proposal0.pdf'); $pdf->setSourceFile(VarStream::createReference($varInAnyScope)); $tplIdx = $pdf->importPage(1); $pdf->AddPage(); $pdf->useTemplate($tplIdx, 0, 0, 0, 0, true); $pdf->Write(0, "Stack overflow"); ob_clean(); $pdf->Output('WorksheetTest.pdf', 'I');