PHP

Image và Font trong tcpdf

Hiển thị hình ảnh dạng base64 với writeHTML()

Sử dụng dạng:

$html = ‘<img width=”220″ height=”135″ src=”@’ . preg_replace(‘#^data:image/[^;]+;base64,#’, ”, $img_base64_encoded) . ‘”>’;

Với $img_base64_encoded là dữ liệu hình ảnh dạng base64. Thêm kí tự ‘@’ để biểu thị theo luồng dữ liệu hình ảnh.

Hiển thị font tiếng nhật trong file pdf.

Trong thư viện font tcpdf có font mặc định ‘cid0jp’ có thể hiển thị được tiếng nhật, tuy nhiên font chữ này không đồng bộ khi xem file pdf trên trình duyệt, trên PC, Smart Phone, sẽ có 1 số chữ kí tự khác font.

Để đồng bộ font chúng ta sử dụng bộ font ‘arialuni’ dùng cho chữ thường, font ‘hgpgothice’ cho chữ in đậm(bold).

Để thêm được 2 loại font chữ này add vào thư viện font tcpdf ta cần chuẩn bị 2 font này ở dạng file .ttf (có thể tải trên mạng hoặc tìm và copy trong bộ font của win ở dạng ‘.ttc’ sau đó cần convert bộ font này sang ‘.ttf’)

Sử dụng câu lệnh ‘php tcpdf_addfont.php -i font/arialuni.ttf’ cụ thể:

Mở cmd di chuyển tới thư mục tools trong folder thư viện plugin TCPDF.

Chạy lệnh trên với ‘php tcpdf_addfont.php -i’ là lệnh mặc định, font/HGGothicE-01.ttf là đường dẫn đến font cần thêm vào thư viện. Sau khi chạy lệnh xong sẽ 1 thông báo dạng

> Converting fonts for TCPDF:
*** Output dir set to D:\xampp7.25\htdocs\Sasugaken_Vuejs\sugatsune-sasugakun02\htdocs\plugin\TCPDF-master/fonts/
+++ OK : D:\xampp7.25\htdocs\Sasugaken_Vuejs\sugatsune-sasugakun02\htdocs\plugin\TCPDF-master\tools\HGGothicE-01.ttf added as hggothice01
>>> Process successfully completed!

Sử dụng tên file trả về ‘hggothice01’ tìm trong thư mục font của tcpdf xem có tồn tại 3 file hggothice01.z, hggothice01.php, hggothice01.ctg.z nếu có là đã thêm font thành công.

Sử dụng khi tạo pdf có thể dùng:

$pdf->SetFont(‘hggothice01’, ‘ ‘);

Hoặc dùng trong css : font-family: hggothice01;