是否可以在Zend_Pdf中创建表?如果是的话,你能给我一些代码片段吗?
我已经尝试过搜索文档和devzone,但我找不到任何关于将表格添加到pdf的内容。
答案 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,处理行,列,标题,文本换行,渲染多页表,支持单元格填充和左/右/中心对齐。它有时可能很古怪,但却能完成它的工作。