Powered by Blogger.

Hiển thị PDF tiếng Việt trong Prestashop

Hướng dẫn hiển thị đơn hàng PDF hỗ trợ tiếng Việt Unicode UTF-8 trong PrestaShop, Việt hóa Prestashop.

Lưu ý: sao lưu các file trước khi sửa đổi
Các bước thực hiện 1. Download TCPDF về, FPDF không hỗ trợ Unicode nên sử dụng TCPDF thay thế.
Link download TCPDF: TCPDF at Sourceforge

2. Bung TCPDF vào thư mục Tools, cùng chỗ với FPDF
3. Sửa 3 file sau đây:
config\config.inc.php: thêm 1 dòng
define('_PS_TCPDF_PATH_', _PS_TOOL_DIR_.'tcpdf/');
+ classes\PDF.php:
- dòng 15:
include_once(_PS_TCPDF_PATH_.'tcpdf.php');
– dòng 17:
class PDF extends TCPDF
– dòng 51:
parent::__construct($orientation, $unit, $format, true, 'UTF-8');
– dòng 162 + 297:
$pdf->getAliasNbPages();
– dòng 498:
$this->MultiCell($w[++$i], 5, Tools::iconv('utf-8', self::encoding(), $product['product_name']).' - '.self::l('Customized'), 'B', 'L');
– dòng 520:
$this->MultiCell($w[++$i], 5, Tools::iconv('utf-8', self::encoding(), $product['product_name']), 'B', 'L');
– dòng 708:
return $font ? $font : 'freesans';
+ class\Tools.php: tìm đến dòng 784 có hàm static public function iconv(…)
comment toàn bộ code của hàm này và return $string luôn. Cụ thể:
static public function iconv($from, $to, $string){
 //$converted = htmlentities($string, ENT_NOQUOTES, $from);
 //$converted = html_entity_decode($converted, ENT_NOQUOTES, $to);
 //return $converted;
 return $string;}
Cách này sẽ cho ra file PDF hiển thị được tiếng Việt khi click vào link.
Tuy nhiên file PDF configuration trong Back Office chưa hiển thị được tiếng Việt
và sẽ được cập nhật sau.
Muốn đổi font thì sửa code trực tiếp (xem dòng 708 ở trên).
    Blogger Comment
    Facebook Comment