使用PHP生成PDF

时间:2010-11-02 09:04:44

标签: php mysql pdf fpdf

如何生成带有MYSQL的PDF文档查询超过15个带有换行文本的字段?我用fpdf选项生成了PDF。但是我用nowrap文本只创建了8个字段。所以任何人请解决方案。感谢。

例如。我用nowrap文本创建了。

$pdf=new PDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',12);
$pdf->SetTextColor(4,126,167);
$pdf->Cell(10,10,'Worksheet Report');
$pdf->Ln();

//Column titles
$header=array('Client','Team In Charge','Staff In Charge','Priority','Master Activity','Sub Activity','Last Reports Sent','Job in Hand','Team Incharge Notes','External Due Date','Befree Due Date','Status');
$pdf->SetFont('Arial','B',6);
$pdf->FancyTable($header);

$pdf->SetFont('Arial','',5);
$pdf->SetFillColor(255,255,255);
$pdf->SetTextColor(0);
$pdf->SetLineWidth(.2);
$sql=$_SESSION['query'];
$result = mysql_query($sql);
while($row = @mysql_fetch_array($result)){
$pdf->Cell(15,10,htmlspecialchars($row["lp_wrk_CompanyName"]),1,0,'T',true);
$pdf->Cell(17,10,$commonUses->getFirstLastName($row["wrk_TeamInCharge"]),1,0,'T',true);
$pdf->Cell(17,10,$commonUses->getFirstLastName($row["wrk_StaffInCharge"]),1,0,'T',true);
$pdf->Cell(12,10,htmlspecialchars($row["lp_wrk_priority"]),1,0,'T',true);
$pdf->Cell(17,10,htmlspecialchars($row["lp_wrk_MasCode"]).($row["lp_wrk_MasCode"]!=""? "-":"").htmlspecialchars($row["lp_wrk_MasterActivity"]),1,0,'T',true);
$pdf->Cell(15,10,htmlspecialchars($row["lp_wrk_SubCode"]).($row["lp_wrk_SubCode"]!=""? "-":"").htmlspecialchars($row["lp_wrk_SubActivity"]),1,0,'T',true);
$pdf->Cell(19,10,htmlspecialchars($row["wrk_Details"]),1,0,'T',true);
$pdf->Cell(18,10,htmlspecialchars($row["wrk_Notes"]),1,0,'T',true);
$pdf->Cell(19,10,htmlspecialchars($row["wrk_TeamInChargeNotes"]),1,0,'T',true);
$pdf->Cell(18,10,$commonUses->showGridDateFormat($row["wrk_DueDate"]),1,0,'T',true);
$pdf->Cell(18,10,$commonUses->showGridDateFormat($row["wrk_InternalDueDate"]),1,0,'T',true);

$pdf->Cell(15,10,htmlspecialchars($row["lp_wrk_Status"]),1,0,'T',true);
$pdf->Ln();
}

4 个答案:

答案 0 :(得分:3)

有一个名为DocRaptor的网络服务,它使用Prince从html生成pdf和xls。他们提供免费计划以及更大的付费计划。

答案 1 :(得分:0)

查看此网站链接: - http://qualitypoint.blogspot.com/2010/07/resolved-wrap-text-issue-in-fpdf-table.html http://blog.themeforest.net/tutorials/how-to-create-pdf-files-with-php/

我希望它对你有用:)

答案 2 :(得分:0)

查看dompdf课程。它会从您的html代码生成pdf,因此可以更轻松,更快速地获得您想要的结果。浮雕仍然有点挑剔,所以你必须想象你的都在90年代并做一个基于桌面的设计。

答案 3 :(得分:0)

我的建议是在html中打印出表格,而不是转换成pdf:更简单,更快捷,更灵活:当你拥有html文档时,很容易(例如)转换成jpg,如果你将来需要。

如果您可以在服务器上安装软件,我会向您致意wkhtmltopdf

您生成html文件,wkhtmltopdf将其转换为pdf,并提供完整(基于webkit)的CSS支持。

另外,我发现html2ps是一个很棒的工作,但对于大文件来说速度相当慢.css支持很好,但不能保证它会支持css3,例如。