簡體   English   中英

PHP utf-8問題

[英]PHP utf-8 issue

我正在使用pdf生成器類(TCPDF)從某些html生成pdf文件。 問題在於html文本具有一些utf8和unicode字符。 此類支持這些字符。

我已經進行了設置,並且在localhost上都可以正常工作。 但是,當我將文件上傳到Web主機時,會出現一個白頁。 我使用完全相同的代碼。

如果我刪除unicode和utf-8字符,它將起作用。 我已經復制了腳本,但是在服務器上無法正常工作。 是否有用於處理這些字符的php設置? 也許在php.ini中? 謝謝

在確保PHP已安裝mbstring擴展名的同時,還要確保在腳本中使用mb_internal_encoding('UTF-8');設置PHP的編碼mb_internal_encoding('UTF-8'); 或在php.ini中。

您還需要確保在TCPDF中指定的字體支持UTF-8字符。 多年來,我一直對此有很大的疑問,最終我決定使用與TCPDF捆綁在一起的Freesans和Freeserif字體。

同樣,在實例化TCPDF類時,請確保已設置類構造函數的第4個和第5個參數。 如果省略,則應默認為TRUE,UTF-8,但我總是指定以確保。

$pdf=new PDF('P', 'mm', 'A4', TRUE, 'UTF-8');
$pdf->SetPageOrientation('P', FALSE, $margin_v);
$pdf->SetMargins($margin_h, $margin_v, $margin_h, TRUE);

// USE BUNDLED freesans FONT FOR DECENT UTF-8 SUPPORT
$pdf->setFontSubsetting(TRUE);
$pdf->SetFont('freesans', '', 11);

檢查文檔中的TCPDF構造函數

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM