我产生如下的php输出
$.fn.getPDF = function(folder_suffix){
var fullurl = folder_suffix+"/superimpressivereport.php";
$.ajax({
url: fullurl,
dataType:'html'
}).done(function(data) {
$.fn.converthtmltopdf(data):
});
};
$.fn. fn.converthtmltopdf = function(htmlcssoutput){
//TODO
}
我想将使用引导程序和CSS的生成的输出html转换为整洁的pdf文件。是否有一个可用于即时生成pdf的库,以便用户可以在其本地计算机上生成和下载pdf文件?
万分感谢!
最佳答案
您无法使用Javascript执行此操作
对于pdf,您可以使用http://www.fpdf.org/
它非常易于使用,下面是创建带有事件条形码的票证的示例:
$pdf = new FPDF();
$pdf->AddPage("H",array(100,160));
$pdf->AddFont('code128',"", 'code128.php');
$pdf->AddFont('3of9',"", '3of9.php');
$pdf->Image('img/'.$alias.'/ticket.gif', -20, 0, 180, 100);
//blank
$pdf->SetFont('arial','',6);
$pdf->Cell(145,10,'', 0,1,'R');
// EVENT DATE
$pdf->SetFont('arial','',6);
$pdf->Cell(145,3,'Event Date:', 0,1,'R');
$pdf->SetFont('arial','B',8);
$pdf->Cell(145,5,$event_date, 0,1,'R');
// EVENT TIME
$pdf->SetFont('arial','',6);
$pdf->Cell(145,3,'Event Time:', 0,1,'R');
$pdf->SetFont('arial','B',8);
$pdf->Cell(145,5,$event_time, 0,1,'R');
// TICKET SERIAL
$pdf->SetFont('arial','',6);
$pdf->Cell(145,5, "Class: $class_code | Serial Number: $serial_number", 0,1,'R');
$pdf->SetFont('3of9','',10);
$pdf->Cell(145,5, "*$serial_number*", 0,1,'R');
// TICKET PASS
$pdf->SetFont('arial','',6);
$pdf->Cell(145,5, "Passcode: $passcode", 0,1,'R');
$pdf->SetFont('3of9','',10);
$pdf->Cell(145,5, "*$passcode*", 0,1,'R');
// PURCHASE BY
$pdf->SetFont('arial','',6);
$pdf->Cell(145,3, "Purchased by : $purchased_by", 0,1,'R');
// Payment Method
$pdf->SetFont('arial','',6);
$pdf->Cell(145,3, "Payment Method : $payment_method", 0,1,'R');
// Transaction ID
$pdf->SetFont('arial','',6);
$pdf->Cell(145,3, "Transaction ID : $transaction_id", 0,1,'R');
if ($method == "display") {
header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="the.pdf"');
header('Content-Transfer-Encoding: binary');
return $pdf->Output();
} else {
return $pdf->Output("$filename", "S");
}