Есть ли решение для шаблона PDF в PHP? - PullRequest
4 голосов
/ 17 мая 2010

Мне нужно сгенерировать кавычки в формате pdf на PHP с шаблоном и динамическими значениями, извлеченными из базы данных.

это жизнеспособно?

Ответы [ 3 ]

7 голосов
/ 17 мая 2010

ОБНОВЛЕНИЕ: я вижу, что люди недавно проголосовали против этого и хотели добавить, что wkhtmltopdf может быть лучшим вариантом для большинства приложений.

да, fpdf + fpdi работал для меня

в основном вы сначала создаете шаблон pdf, затем загружаете его в новый объект FPDI и используете функции FPDF для рисования «поверх» шаблона - очень похоже на работу слоев Photoshop.

$pdf = new FPDI(); 

$pdf->setSourceFile('template.pdf'); 
$tpl = $pdf->importPage(1); 
$pdf->addPage(); 
$pdf->useTemplate($tpl); <- template is imported

$pdf->setXY(10, 20);
$pdf->write(100, "Hi there"); <- write or draw something on the template

$pdf->output('newpdf.pdf', 'D'); <- ready, save or output your pdf
2 голосов
/ 17 мая 2010

Попробуйте DOMPDF . Это очень хорошо и просто в использовании, и имеет несколько очень полезных API. Я использовал его дважды, и это действительно поражает меня тем, что вы не можете сделать.

Действительно, вы можете установить несколько страниц в PDF-файле, созданном «на лету», с измененными размерами изображений, действующими как продукты каталога.

Имеет очень хорошую документацию с примерами. Если у вас возникли проблемы с его интеграцией, не стесняйтесь размещать здесь свой вопрос, и пользователи будут активно отвечать на ваши вопросы.

DOMPDF - классная штука. Я думаю, что он также выиграл несколько наград, за его чистый стандарт кодирования. Проверьте себя, чтобы узнать больше !!!

0 голосов
/ 17 мая 2010

Если вы можете позволить себе затраты на лицензирование, PDFLIB имеет хорошую систему шаблонов, которую они называют "блоками". Вы рисуете блоки на исходном шаблоне в Acrobat, присваиваете ему имя, а затем в коде PHP просто введите «заполните этот блок следующим текстом / изображением / eps».

Как только весь служебный код открытия шаблона / загрузки шрифтов / и т. Д. ... завершен, коды заполнения бланков сводятся к:

PDF_fill_textblock($pdf, $pagehandle, $blockname, "Text to insert", 'fitting method arguments');
PDF_fill_imageblock($pdf, $pagehandle, $blockname, $imagehandle, 'fitting method arguments');
PDF_fill_pdfblock($pdf, $pagehandle, $blockname, $pdfhandle, 'arguments here');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...