【发布时间】:2021-10-08 17:26:40
【问题描述】:
我无法在生成的 pdf 中正确看到德语字符。这是我的代码:
<?php
// Load autoloader (using Composer)
require __DIR__ . '/vendor/autoload.php';
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
$pdf->SetPrintHeader(false);
$pdf->AddPage();
// create some HTML content
$html = '<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
Die angeführten Preise sind Fixpreise für eine schlüsselfertige Ausführung gemäß Leistungsbeschreibung und Ausstattungsliste
und gelten bei einem Vertragsabschluss bis 31.12.2021.<br/>
Die m²-Angaben sind Cirka-Maße. Geringfügige Abweichungen sind möglich und auf Grundrissvarianten oder technische
Änderungen, behördliche Vorschriften etc. zurückzuführen.<br/>
In den oben genannten Preisen sind sämtliche in vorliegender Preisliste angeführten Kaufnebenkosten (mit Ausnahme der
Beglaubigungskosten und Barauslagen im Zusammenhang mit der Eintragung im Grundbuch) enthalten, der Verkauf erfolgt
provisionsfrei direkt vom Bauträger. Kosten im Zusammenhang mit der Finanzierung (insbesondere auch Kosten für die
Bankgarantie) sind von der Käuferseite zu tragen.
</body>
</html>';
$pdf->writeHTML(utf8_encode($html), true, false, true, false, '');
$pdf->lastPage();
$lastPage = $pdf->getPage();
$pdf->Output('generated.pdf', 'I');
这就是它的样子:
虽然在 html 上看起来不错
【问题讨论】:
-
如果你的数据已经是 UTF-8 - 那你为什么要对它应用
utf8_encode...? -
@CBroe 在 html 上看起来一切正常,附上图片。
-
好吧,我猜在那种情况下,你没有没有申请
utf8_encode。 -
$pdf->writeHTML(utf8_encode($html), true, false, true, false, '');在生成 pdf 时我正在这样做.. 它不会工作吗? -
@CBroe 当我从 $pdf->writeHTML(utf8_encode($html), 中删除
utf8_encode时它运行良好