Zend_Pdf表?

时间:2010-06-17 15:29:08

标签: php zend-framework

是否可以在Zend_Pdf中创建表?如果是的话,你能给我一些代码片段吗?

我已经尝试过搜索文档和devzone,但我找不到任何关于将表格添加到pdf的内容。

2 个答案:

答案 0 :(得分:1)

是的,你必须手动绘制线条。帮助你入门的东西:

$pdf->pages[0]
->setStyle($h3)
->drawLine(73, 244, 512, 244)   // HEAD Bottom
->drawLine(73, 244, 73, 166)    // MOST Left
->drawLine(512, 244, 512, 166)  // MOST Right
->drawLine(73, 166, 512, 166)       // MOST Bottom
->drawLine(225, 244, 225, 166)      // MOST Left
->setStyle($h2)
->drawText('Analytics Site', 73, 252)   // Table Headers
->setStyle($h3)
->drawText('Page Views', 80, 225)           // Table Headers (402) - 27
->drawText('Bounce Rate', 80, 200)      // Table Headers
->drawText('Avg. Time On Site', 80, 174)    // Table Headers
->drawLine(73, 192, 512, 192)   // Bottom
->drawLine(73, 218, 512, 218)   // Bottom
->drawText($site_metrics[0]->{"ga:pageviews"}, 235, 225)
->drawText(sprintf('%1.02f%%', $site_metrics[0]->{"ga:visitBounceRate"}), 235, 200)
->drawText($avg_time, 235, 174);

$pdf->pages[0] ->setStyle($h3) ->drawLine(73, 244, 512, 244) // HEAD Bottom ->drawLine(73, 244, 73, 166) // MOST Left ->drawLine(512, 244, 512, 166) // MOST Right ->drawLine(73, 166, 512, 166) // MOST Bottom ->drawLine(225, 244, 225, 166) // MOST Left ->setStyle($h2) ->drawText('Analytics Site', 73, 252) // Table Headers ->setStyle($h3) ->drawText('Page Views', 80, 225) // Table Headers (402) - 27 ->drawText('Bounce Rate', 80, 200) // Table Headers ->drawText('Avg. Time On Site', 80, 174) // Table Headers ->drawLine(73, 192, 512, 192) // Bottom ->drawLine(73, 218, 512, 218) // Bottom ->drawText($site_metrics[0]->{"ga:pageviews"}, 235, 225) ->drawText(sprintf('%1.02f%%', $site_metrics[0]->{"ga:visitBounceRate"}), 235, 200) ->drawText($avg_time, 235, 174);

该片段是针对我所做网站上每月分析报告的pdf。

答案 1 :(得分:1)

尝试Zend_Pdf_Table(http://sourceforge.net/projects/zendpdftable/)

它基于ZF1,处理行,列,标题,文本换行,渲染多页表,支持单元格填充和左/右/中心对齐。它有时可能很古怪,但却能完成它的工作。