PDF bị lỗi font tiếng Việt: 5 nguyên nhân và cách fix từng trường hợp
Screenshot lỗi thực tế. 5 nguyên nhân: font không embed, encoding sai, converter lỗi, font VNI, system font.
Mở file PDF lên thấy "Hîng dÉn sö dông" thay vì "Hướng dẫn sử dụng". Hoặc chuyển PDF sang Word xong chữ thành ô vuông ▯▯▯. Hoặc file trên máy mình đọc được, gửi cho người khác thì lỗi.
Đây là lỗi font tiếng Việt — mình gặp suốt, và sau mấy lần phải fix gấp cho sếp thì đã ghi lại hết. 5 trường hợp phổ biến nhất, cách nhận biết và fix từng cái.
Chẩn đoán nhanh
| Bạn thấy gì? | Nguyên nhân | Fix |
|---|---|---|
| Ký tự sai có quy luật: î, É, ö thay cho ư, ẫ, ủ | Font VNI / TCVN3 (encoding cũ) | Convert encoding hoặc OCR |
| Ô vuông ▯▯▯ hoặc trống | Font không embed trong file | Export lại với embed font |
| Mất một vài dấu: "Huớng" thay "Hướng" | Font subset thiếu glyph | Embed full font hoặc đổi font |
| Đúng trên màn hình, sai khi in | Máy in thay thế font | In as image |
| Đúng trong PDF, lỗi khi → Word | Converter không đọc được encoding | Dùng OCR thay convert thẳng |
Case 1: "Hîng dÉn sö dông" — font VNI/TCVN3
Cái này gặp với file cũ — tạo từ trước 2005, khi mà Việt Nam chưa chuyển hẳn sang Unicode. Hồi đó dùng font .VnTime, .VnArial, VNI-Times. Các font này không dùng Unicode — nó "mượn" vị trí ký tự Latin để chứa ký tự Việt.
Ví dụ: ký tự ở vị trí "î" trong bảng mã ASCII, font VNI hiển thị là "ư". Máy bạn mà không cài font VNI → hiện đúng "î" → sai.
Cách nhận biết chắc chắn: Mở PDF → Properties → Fonts tab. Nếu thấy font tên bắt đầu .Vn hoặc VNI- → đúng case này.
Fix:
- Có file Word gốc: Mở Word → Select All → dùng Unikey (Ctrl+Shift+F6) hoặc tool convert VNI→Unicode → đổi font sang Times New Roman → export PDF mới
- Chỉ có PDF: Dùng OCR. Tesseract nhận dạng từ ảnh render, bỏ qua encoding gốc → ra text Unicode đúng. Mất tầm 30 giây/trang.
- Cần copy text nhanh: Copy đoạn text sai → paste vào tool chuyển đổi encoding (search "VNI to Unicode online") → ra text đúng
Mình gặp case này nhiều nhất với hồ sơ cũ — hợp đồng, quy chế công ty từ 2003-2008. Giờ muốn số hóa lại thì phải OCR hết.
Case 2: Ô vuông ▯▯▯ — font không embed
Trường hợp kinh điển: mình tạo PDF trên máy, mở lên OK. Gửi cho đồng nghiệp, họ thấy toàn ô vuông. Hoặc file mới hôm qua đọc được, hôm nay cài lại Windows xong thì lỗi.
Lý do: khi export PDF, font không được nhúng vào file. PDF chỉ ghi "dùng font ABC" — máy nào có font ABC thì hiện đúng, máy nào không có thì thay thế font khác (và mất glyph tiếng Việt).
Hay gặp khi:
- Export PDF từ Word mà không tick "Embed fonts"
- Dùng PDF printer cũ (CutePDF, doPDF version cũ)
- File tạo trên Mac gửi sang Windows (macOS có nhiều font mặc định mà Windows không có)
Fix:
- Phòng ngừa (quan trọng nhất): Word → Save as PDF → Options → tick "Embed fonts in the document". Hoặc đơn giản hơn: dùng "Microsoft Print to PDF" (Windows 10+) — nó auto embed tất cả font.
- File đã bị lỗi: Nếu máy bạn mở đúng (vì có font) → mở lên → File → Print → chọn "Microsoft Print to PDF" → save ra file mới. File mới sẽ embed font.
- Không có máy nào mở đúng: OCR là option cuối cùng.
Check font có embed chưa:
Adobe Reader → File → Properties → tab Fonts:
Arial (Embedded Subset)→ OKArial(không có Embedded) → sẽ lỗi trên máy không có font này
Case 3: Mất vài dấu — font subset thiếu glyph
Phần lớn chữ đúng, nhưng rải rác vài ký tự mất dấu. "Hướng" thành "Huớng". "Nguyễn" thành "Nguyên". Lạ — vì không phải mất hết, chỉ mất một số.
Lý do: PDF embed font kiểu "subset" — chỉ nhúng các ký tự thực sự xuất hiện trong file. Nếu tool tính sai, một số glyph tổ hợp (dấu chồng dấu) bị thiếu.
Hay gặp khi:
- Export PDF từ trình duyệt (Print to PDF từ web page)
- Export từ Canva, Figma — các tool design thường subset font
- Dùng font "lạ" (handwriting, decorative) không có đủ glyph tiếng Việt
Fix:
- Export lại với option "Embed entire font" (không subset)
- Đổi sang font chắc chắn đầy đủ tiếng Việt: Times New Roman, Arial, Roboto, Be Vietnam Pro, Noto Sans Vietnamese
- Check sau export: Select All → Copy → Paste vào Notepad → đọc lại. Nếu Notepad hiện đúng = OK
Case 4: Đúng trên màn hình, sai khi in
Mình gặp case này 1 lần — file PDF đẹp trên máy, in ra thì tiếng Việt bay hết dấu. Hóa ra máy in PostScript đời cũ tự thay font bằng font built-in của nó (không có glyph tiếng Việt).
Fix nhanh:
- Print dialog → Advanced → tick "Print as Image". PDF được render thành ảnh rồi in → chậm hơn nhưng chính xác 100%.
- Hoặc update driver máy in — driver cũ hay tự ý thay font.
Bây giờ ít gặp hơn vì máy in mới handle Unicode tốt. Nhưng nếu công ty bạn có máy in cũ (Brother, Ricoh đời 2010 trở về trước) — biết sẵn mà đỡ mất thời gian debug.
Case 5: PDF đúng, chuyển sang Word thì lỗi
File PDF mở đọc bình thường. Chuyển sang Word để sửa — bùm, text loạn xạ. Thường gặp với:
- PDF dùng CID font (font mapping kiểu Trung/Nhật/Hàn mà được reuse cho tiếng Việt)
- PDF từ scan + OCR cũ (text layer có encoding lạ)
- PDF bị encrypt (owner password) — converter không đọc full text layer
Fix:
- Thử copy text thủ công: Nếu Select + Copy trong PDF ra đúng text → vấn đề ở converter, không phải file. Thử tool convert khác.
- Nếu copy cũng lỗi: Dùng OCR thay vì convert trực tiếp. OCR nhận dạng từ hình ảnh render, bỏ qua text layer gốc → ra text mới, Unicode chuẩn.
- Nếu file bị password: Gỡ owner password trước (Gỡ mật khẩu PDF) rồi convert.
Checklist phòng ngừa
Mình giờ tạo PDF mới luôn check mấy thứ này:
- Dùng font Unicode phổ biến. Times New Roman, Arial, Roboto. Tránh .VnTime, VNI-*, font lạ trên mạng.
- Embed font khi export. Word → Save as PDF → Options → tick Embed. Hoặc Print → Microsoft Print to PDF (auto embed).
- Ctrl+A → Ctrl+C → paste Notepad. Nếu Notepad hiện đúng = file OK. Mất 5 giây, đỡ phải fix sau.
- Gửi thử cho 1 người khác mở. Nếu họ đọc được = font embed đúng.
Và rule quan trọng nhất: giữ file nguồn (Word/Excel/InDesign). PDF chỉ là output. Nếu PDF lỗi font → quay về file nguồn export lại, nhanh hơn rất nhiều so với cố fix file PDF.
Muốn hiểu sâu hơn font embedding hoạt động thế nào: Font embedding trong PDF — embedded vs subset vs system font.
Dùng ngay: Chuyển PDF sang Word (.docx) — Giữ nguyên font, bảng biểu
Chuyển PDF sang Word online miễn phí, giữ nguyên bảng biểu, hình ảnh, font chữ tiếng Việt. Hỗ trợ OCR cho PDF scan. Không cần cài phần mềm, nhanh và chính xác.
Mở công cụ →