14

私はTCPDFライブラリのバージョン: 5.9.011を使用しています。HTMLレイアウトをPDFとして実行しようとしています。例を試してみましたが、サイトに提供されています

$html = '<h1>HTML Example</h1>
<h2>List</h2>
Some special characters: &lt; € &euro; &#8364; &amp; è &egrave; &copy; &gt; \\slash \\\\double-slash \\\\\\triple-slash
';
// output the HTML content
$pdf->writeHTML($html, true, false, true, false, '');

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

どうやら、生成された PDF のみがデフォルトのヘッダーとフッターで、中央のコンテンツが空白であることがわかりました。

ただし、次のような特殊文字を削除すると:

$html = '<h1>HTML Example</h1>
<h2>List</h2>
Some special characters:
';

PDF は、指定されたとおりに中間コンテンツを取得します$html

4

12 に答える 12

14

行の前$pdf->writeHTML

$html = utf8_decode($html);

多分

$html = utf8_encode($html);
于 2014-08-08T15:48:20.343 に答える
9

他の人がすでに述べたように、コンストラクターを変更する必要があります。UTF-8 フレースを設定し、以下のように新しい文字列を変更します。

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

これを変更するだけでは、常に空白のページが表示されるのを防ぐことはできません。空白のページが表示されないようにするには、フォント タイプを「helvetica」などに変更します。

$pdf->SetFont('helvetica', '', 11, '', true);

できます!

于 2013-02-09T15:18:16.170 に答える
5

コンストラクターを変更し、UTF-8 フレースを設定して、以下のように新しい文字列を変更する必要があります。

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

上記の例では、エンコーディングを UTF-8 ではなく ISO-8859-1 に設定し、true を false に変更しています。

クリッシュ

于 2011-05-26T07:08:37.663 に答える
3

私も同様の問題を抱えていました。複数のリストと目盛り記号を箇条書きにしたHTMLファイルからpdfを生成する必要がありました。

これらの解決策をすべて試しましたが、どれもうまくいきませんでした。写真を使用する必要がありましたが、プロセスが遅くなりました。最後に、私はこれに出くわしました:http://www.tcpdf.org/examples/example_055.pdf、最後に多くの記号を含む「zapfdingbats」フォントがあります。

そこで、すべての目盛り画像を : に置き換え<span>3<span>、この要素のフォントを に設定するとfont-family="zapfdingbats"、うまくいきました。少しハックですが、うまくいきます。

于 2016-01-22T10:29:53.977 に答える
3

HTML コンテンツを pdf に書き込んでおり、チェック マーク記号を印刷する必要があります。これが私がやったことで、うまくいきました。

$pdf->SetFont('zapfdingbats');
$pdf->SetFont('helvetica'); // for regular content

そして、HTMLに以下のコードでチェックマークを追加しました

<span style="font-family: zapfdingbats;">4</span>

これを願って

于 2019-01-21T17:41:39.450 に答える
0

同様の問題があり、この方法ですべて修正しました:

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

そして最後に:

$pdf->writeHTMLCell(0, 0, '', '', utf8_decode($html), 0, 1, 0, true, '', true);
于 2015-05-23T11:14:15.327 に答える
0

最新バージョンの TCPDF を使用しています。ここに記載されている手順に従ってください。それはうまくいくはずです

于 2010-11-10T07:27:23.483 に答える