У меня есть скрипт, который генерирует пдф файл из гет/пост запроса.
// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Nicola Asuni');
$pdf->SetTitle('TCPDF Example 006');
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
// set default header data
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 006', PDF_HEADER_STRING);
// set header and footer fonts
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
// set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
// set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
// set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
// set some language-dependent strings (optional)
if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
require_once(dirname(__FILE__).'/lang/eng.php');
$pdf->setLanguageArray($l);
}
// ---------------------------------------------------------
// set font
$pdf->SetFont('dejavusans', '', 10);
// add a page
$pdf->AddPage();
writeHTML($html, $ln=true, $fill=false, $reseth=false, $cell=false, $align='')
// writeHTMLCell($w, $h, $x, $y, $html='', $border=0, $ln=0, $fill=0, $reseth=true, $align='', $autopadding=true)
$pdf->Output($title, 'I');
Я пытаюсь отправить при клике на ссылку код html страницы, у меня не отправляется...
$(document).on("click",".download_files li a",function(event){
var html=$(".contents.con").html();
var title = $("h1").html();
window.location="/ajax_new/save_page_pdf.php?html="+html+"&title="+title;
});
Если же отправить
window.location="/ajax_new/save_page_pdf.php?html=123&title="+title;
то генерируется pdf в новом окне.
Вопрос, как передать html код в url , для того, чтобы скачать? html может быть большой. или путем аякса? у меня никак...
$(".download_files li a").click(function(e){
var data={};
data["type"]=$(this).attr("data-doc");
data["html"]=$(".contents.con").html();
html=$(".contents.con").html();
if ($("h1").length>0) {
data["title"] = $("h1").html();
}else{
if ($(".h1").length>0)
data["title"]=$(".h1").html();
}
$.ajax({
type: "POST",
url: "/ajax_new/save_page_pdf.php",
data: data,
success: download.bind(true, "title.pdf", "html")
function(data1) {
var blob=new Blob([data1]);
var link=document.createElement('a');
link.href=window.URL.createObjectURL(blob);
link.download=data["title"]+".pdf";
link.click();
}
});
});