Witam
mam problem z tworzeniem pdf-a
generuje sobie stronę i chce zapisać ją do pdf-u za pomocą ob_get_contents.
Przy prostym tekście i prostej tabelce plik się generuje ale w kodzie gdy podglądam pdf-a widać znaczniki html-a
mój kod
<?ob_start();?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
.import1_table {...
}
.import2_table {...
}
.import2_table td {...
}
</style>
</head>
<?
require_once('tcpdf/config/lang/pol.php');
require_once('tcpdf/tcpdf.php');
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('...');
$pdf->SetTitle('...i');
$pdf->SetSubject('Dokument');
$pdf->SetKeywords('TCPDF, PDF');
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 006', PDF_HEADER_STRING);
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN
, '', PDF_FONT_SIZE_MAIN
)); $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA
, '', PDF_FONT_SIZE_DATA
));
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
$pdf->setLanguageArray($l);
listawysylkowa($_GET["id"]);
///////////////////////////////////////
function listawysylkowa($id)
{
$wybierz_transakcje = mysql_query("select * from transakcje where lista_id=".$id); $i=1;
{
?>
<table class="import1_table">
<tr>
<td><?=$i?></td>
</tr>
</table>
<table class="import2_table" cellspacing="0" cellpadding="0">
<tr>
<td colspan="2" style="text-align: right;">Koszty wysyłki:</td>
<td style="text-align: right;"><?=$wybierz_transakcje2["transport"]?> zł</td>
</tr>
<tr style="background-color: #F0F0F0;">
<td colspan="2" style="text-align: right; padding: 8px 0;">Suma do zapłaty (uwzględnia cenę przedmiotów, koszty wysyłki, ew. rabaty):</td>
<td style="text-align: right;">
<?=round($razemcena+$wybierz_transakcje2["transport"],2
);?></td>
</tr>
<tr>
<td colspan="3"></td>
</tr>
</table>
<br style="clear: both;"/>
<?
$i++;
$razemcena=0;
}
}
$pdf->writeHTML($html, true, false, true, false, '');
$pdf->lastPage();
$pdf->Output('/pdf/plik.pdf', 'D');
mocno go odchodziłem żeby nie zaśmiecać forum. Wszystkie parametry z bazy są pobierane prawidłowo tylko nie wrzucałem już zapytań tu na forum.
Do sedna. Generując w ten sposób plik zapisuję do siebie na komputer, ale po uruchomieniu dostaje komunikat, że nieobsługiwany typ pliku lub plik jest uszkodzony. Wszystkie pliki nmam zapisane w kodowaniu UTF-8 bez BOM.
W czym może tkwić problem?
z góry dziękuję za wszystkie wskazówki.
Ten post edytował Swirek 26.08.2011, 17:53:04