Ich möchte ein PDF-Dokument aus einem statischen HTML, das durch XSLT 2.0-Transformation gemacht.Kleines Problem mit PDF-Generierung, mit TCPDF-Bibliothek
function ProducePDF($pdf_name, $html_page){
// 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('Tony');
$pdf->SetTitle('A document');
$pdf->SetSubject('Information');
$pdf->SetKeywords('TCPDF, PDF');
// set default header data
$pdf->SetHeaderData('', PDF_HEADER_LOGO_WIDTH,'','');
// 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('helvetica', '', 14);
// add a page
$pdf->AddPage();
$html = file_get_contents($html_page);
// output the HTML content
$pdf->writeHTML($html, true, false, true, false, '');
// reset pointer to the last page
$pdf->lastPage();
//Close and output PDF document
$pdf->Output($pdf_name, 'FI');}
Das Ergebnis PDF-Dokument ist here
die HTML-Quelle document
Wie Sie sehen können, TCPDF einige Müll von JS von Quelle HTML-Dokument auf der letzten Seite des erzeugten PDF erzeugt. Warum tut es so? Gibt es eine Art Workaround für dieses Problem?
Ich denke, Sie müssen $ pdf verwenden-> IncludeJS ($ js); js einbeziehen [siehe hier] (http://www.tcpdf.org/examples/example_053.phps) – Jainil
Es klingt wirklich, aber ich denke, dass die Engine nur eine "ganze Seite" braucht, dann braucht es Müll aus Quell-HTML. Wie auch immer, danke für die Antwort. – Twissell