2

TCPDF を使用して HTML コードから PDF を生成していますが、特定の HTML 特殊文字を正しく表示できません。これが私のベアボーンコードです:

require_once('../libraries/tcpdf_6_0_020/tcpdf/tcpdf.php');

// create new PDF document
$pdf = new TCPDF('P', PDF_UNIT, 'LETTER', true, 'UTF-8', false);

// add a page
$pdf->AddPage();

$output = 'this is a special character: Ω';

//echo $output;die();

$pdf->writeHTML($output, true, false, false, false, '');

//Close and output PDF document
$pdf->Output('generated pdf.pdf', 'I');

上記の出力は次のとおりです。

this is a special character: ?

この同じ主題に関してここには多くの質問があり、それらのほとんどはコンストラクターを次のように変更するように言っています:

$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, false, 'ISO-8859-1', false);

私はそれを試しましたが、出力は次のようになります。

this is a special character: Ω

HTML 特殊文字を適切にレンダリングするにはどうすればよいですか?

4

2 に答える 2

7

これを試して

require_once('tcpdf/tcpdf.php');

$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

$pdf->SetFont('dejavusans', '', 10);

$pdf->AddPage();

$html = "this is a special character: Ω";

$pdf->writeHTML($html, true, false, true, false, '');

$pdf->lastPage();

$pdf->Output('test.pdf', 'I');
于 2013-07-16T15:30:47.297 に答える