PHP中的pdf模板有解决方案吗?

时间:2010-05-17 12:47:16

标签: php pdf

我需要PHP生成pdf格式的引号,并从数据库中检索模板和动态值。

它可行吗?

3 个答案:

答案 0 :(得分:7)

更新:我看到最近有人提出这个问题,并希望补充说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

答案 1 :(得分:2)

试试DOMPDF。这是非常好的&amp;易于使用,并有一些非常有用的API。我已经使用了两次,我真的很惊讶你不能做什么。

实际上,您可以在即时创建的PDF中设置多个页面,并将调整大小的图像用作目录产品。

它有一个非常好的文档,显示了示例。如果您在集成它时遇到任何问题,请随时在此处发布您的问题,并且用户将主动回答您的问题。

DOMPDF是一个非常酷的东西。我认为它因其纯粹的编码标准而赢得了一些奖项。 看看你自己,更多!!!

答案 2 :(得分:0)

如果您能负担许可费用,PDFLIB有一个很好的模板系统,他们称之为“阻止”。您在Acrobat中将块绘制到源模板上,为其指定一个名称,然后在PHP代码中发出“使用以下text / image / 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');