Biên soạn: Ban biên tập Tạo Chữ Đẹp. Cập nhật lần cuối: . Bảng trong bài này không phải kết quả thử trên từng ứng dụng. Chúng tôi trình bày rõ phương pháp ngay bên dưới. Các nhận định về từng ứng dụng dựa trên tài liệu công khai và đặc tính Unicode, không phải kết quả thử trên từng ứng dụng thật; hãy dán thử một dòng ngắn trước khi đăng hoặc trả phí đổi tên. Nguồn ở cuối bài.
Câu trả lời ngắn
Không có font hay kiểu chữ nào bảo đảm hiển thị đúng trên mọi ứng dụng. Chữ kiểu không phải font, mà là ký tự Unicode, và mỗi ứng dụng tự quyết định dùng font nào để vẽ chúng, cùng với font dự phòng khi font chính không có ký tự. Điều có thể làm là xếp các kiểu chữ theo mức rủi ro dựa trên dữ liệu công khai, rồi kiểm tra trên máy của bạn. Bài này làm đúng việc đó, và nói rõ phần nào là dữ liệu, phần nào là đánh giá của chúng tôi.
Phương pháp: chúng tôi đã làm gì và chưa làm gì
Nhiều trang đăng bảng “đã thử trên 20 ứng dụng”. Chúng tôi chưa thử như vậy trên thiết bị thật, nên bảng dưới không chứa kết quả thử nào. Thay vào đó là hai nguồn dữ liệu có thể kiểm tra, và một đánh giá có ghi rõ độ tin cậy. Phần thử thiết bị sẽ được thêm sau, và lúc đó sẽ ghi rõ máy, phiên bản và ngày thử.
- Tuổi Unicode: mỗi ký tự có phiên bản Unicode đầu tiên chứa nó, lấy từ tệp DerivedAge của Unicode Character Database. Ký tự càng mới, càng dễ thiếu trên máy cũ.
- Mặt phẳng: ký tự trong mặt phẳng cơ bản (BMP, đến U+FFFF) được hỗ trợ rộng rãi hơn các ký tự ngoài đó.
- Độ phủ font: thống kê của FileFormat.info cho biết mỗi font phủ bao nhiêu ký tự của từng khối. Đây là dữ liệu chung về font, không phải dữ liệu của từng ứng dụng, và phiên bản font trong thống kê có thể cũ hơn bản trên máy bạn.
Mức rủi ro chúng tôi gán theo quy tắc: Thấp nếu ký tự cũ, nằm trong BMP và có trong các font hệ thống phổ biến; Trung bình nếu thuộc một trong ba điều kiện kém hơn (ngoài BMP, mới hơn Unicode 3.1, hoặc phủ không đều); Cao nếu từ hai điều kiện trở lên hoặc rất ít font có. Đây là đánh giá, không phải đo đạc.
Bảng 1: Mức rủi ro hiển thị theo nhóm kiểu chữ
| Nhóm kiểu chữ | Ví dụ | Unicode đầu tiên | Mặt phẳng | Rủi ro (đánh giá) | Độ tin cậy |
|---|---|---|---|---|---|
| Chữ Latin thường, có dấu tiếng Việt | Việt Nam | 1.1 | BMP | Rất thấp | Cao |
| Chữ gạch chân, gạch ngang (dấu ghép) | V̲i̲ệ̲t̲ | 1.1 | BMP | Thấp | Trung bình |
| Small caps | ᴠɪᴇᴛ | 1.1 và 4.0 | BMP | Thấp đến trung bình | Trung bình |
| Chữ mũ, chữ chỉ số | ⁰¹² ₀₁₂ | 1.1 (chữ cái mũ: 4.0) | BMP | Trung bình | Trung bình |
| Chữ trong vòng tròn | ⓋⒾⒺⓉ | 1.1 | BMP | Trung bình | Trung bình |
| Chữ rộng (fullwidth) | VIET | 1.1 | BMP | Trung bình | Thấp, chưa có thống kê font hệ thống |
| Chữ toán học (đậm, nghiêng, viết tay, gothic, nét đôi) | 𝐕𝐈𝐄𝐓 𝕍𝕀𝔼𝕋 | 3.1 | Ngoài BMP | Trung bình | Cao |
| Số trong vòng tròn từ 21 đến 50 | ㉑ ㊿ | 3.2 | BMP | Trung bình | Thấp |
| Chữ trong ô vuông | 🅅🄸🄴🅃 | 6.0 | Ngoài BMP | Cao | Trung bình |
| Số bảy đoạn | 🯰🯱🯲 | 13.0 | Ngoài BMP | Cao | Cao |
| Ký tự trang trí kiểu ꧁ ༺ | ꧁༺ ༻꧂ | 5.2 (Java) và 2.0 (Tạng) | BMP | Cao | Trung bình |
Các số phiên bản trên lấy từ cơ sở dữ liệu ký tự của Unicode. Ví dụ chữ A toán học đậm U+1D400 xuất hiện từ Unicode 3.1, chữ trong ô vuông U+1F170 từ 6.0 và số bảy đoạn U+1FBF0 từ 13.0. Ký tự trang trí ꧁ (U+A9C1) thuộc bảng chữ Java, xuất hiện từ 5.2, còn ༺ (U+0F3A) thuộc bảng chữ Tạng, từ 2.0. Với các ký tự này, font hệ thống thường không có sẵn mà phải dựa vào font dự phòng của riêng từng hệ thống.
Bảng 2: Độ phủ font theo thống kê công khai
Bảng dưới trích số ký tự mà mỗi font phủ được trong một khối, theo thống kê của FileFormat.info. Dấu “–” nghĩa là font không có trong danh sách hỗ trợ của khối đó.
| Khối Unicode (tổng ký tự) | Segoe UI Symbol | Cambria Math | Arial | Segoe UI | Roboto | DejaVu Sans |
|---|---|---|---|---|---|---|
| Chữ toán học (997) | 996 | 996 | – | – | – | 117 |
| Enclosed Alphanumerics, chữ và số vòng tròn (160) | 160 | 32 | – | 1 | – | 10 |
| Enclosed Alphanumeric Supplement, chữ ô vuông (201) | 171 | – | – | – | – | – |
| Phonetic Extensions, small caps (128) | – | 128 | 128 | 128 | – | 106 |
| Dấu ghép Combining Diacritical Marks (112) | 10 | 112 | 112 | 112 | 7 | 93 |
| Chữ mũ và chỉ số (46) | 42 | 42 | 13 | 42 | 2 | 42 |
Hai điều đáng chú ý. Một là không font nào phủ tốt mọi khối: Segoe UI Symbol rất mạnh với chữ toán học và chữ vòng tròn nhưng gần như không có dấu ghép (10 trên 112), còn Arial phủ tốt small caps và dấu ghép nhưng không có trong danh sách chữ toán học. Hai là font mặc định của nhiều ứng dụng, như Roboto, chỉ phủ vài phần trăm các khối này, nên ứng dụng phải dựa vào font dự phòng. Vì vậy hai máy dùng cùng ứng dụng có thể cho hai kết quả khác nhau.
Ứng dụng quyết định, không phải kiểu chữ
Unicode nêu rõ một hệ điều hành có thể có font hỗ trợ, nhưng ứng dụng chạy trên đó có thể có logic chọn font riêng chưa cập nhật. Game là ví dụ rõ nhất. Trang hỗ trợ đổi nickname của Garena Free Fire (bản Brazil, tiếng Bồ Đào Nha) khuyên tránh ký tự đặc biệt vì họ không thể bảo đảm mọi ký tự hiện được do cấu hình thiết bị. Điều này đúng với bất kỳ ứng dụng nào tự vẽ chữ: cùng một ký tự có thể hiện trong trình duyệt nhưng không hiện trong game.
Giới hạn của phân tích này
Có bốn điều bạn nên biết trước khi dựa vào bảng. Thứ nhất, độ phủ font chỉ cho biết font có ký tự, không cho biết ứng dụng có dùng font đó hay không. Thứ hai, phiên bản font trong thống kê của FileFormat.info có thể cũ hơn phiên bản đang chạy trên máy bạn. Thứ ba, chúng tôi chưa có thống kê cho các font hệ thống mới của điện thoại, nên không đưa ra so sánh giữa iPhone và Android. Thứ tư, mức rủi ro là kết luận từ quy tắc đã nêu, không phải xác suất đo được. Nếu bạn muốn chắc chắn, hãy dán thử ở đúng nơi cần dùng.
Kiểm tra trên máy của bạn trong một phút
Dán chữ kiểu vào công cụ, nó vẽ từng ký tự bằng font của trình duyệt và báo ký tự nào có thể là ô vuông. Để kiểm tra một ứng dụng cụ thể, hãy dán cùng chuỗi vào ứng dụng đó, vì ứng dụng có thể dùng font khác trình duyệt.
Mọi thứ xử lý ngay trên trình duyệt của bạn, không gửi lên máy chủ.
Bảng 3: Kế hoạch thử trên thiết bị (chưa thực hiện)
Để minh bạch, đây là danh sách ứng dụng chúng tôi dự định thử. Cột trạng thái là sự thật tại thời điểm cập nhật: chưa có ứng dụng nào được thử trên thiết bị thật.
| Ứng dụng | Nhóm | Trạng thái thử thiết bị |
|---|---|---|
| Facebook, Messenger | Mạng xã hội | Chưa kiểm tra |
| Mạng xã hội | Chưa kiểm tra | |
| TikTok | Mạng xã hội | Chưa kiểm tra |
| Zalo | Nhắn tin | Chưa kiểm tra |
| Telegram | Nhắn tin | Chưa kiểm tra |
| Nhắn tin | Chưa kiểm tra | |
| Discord | Nhắn tin | Chưa kiểm tra |
| X (Twitter) | Mạng xã hội | Chưa kiểm tra |
| YouTube (tên kênh, bình luận) | Video | Chưa kiểm tra |
| Free Fire | Game | Chưa kiểm tra |
| Liên Quân Mobile | Game | Chưa kiểm tra |
| Play Together | Game | Chưa kiểm tra |
| PUBG Mobile | Game | Chưa kiểm tra |
| Word, Google Docs | Văn phòng | Chưa kiểm tra |
| Ghi chú trên iPhone và Android | Ghi chú | Chưa kiểm tra |
| Gmail | Chưa kiểm tra |
Xếp theo mức an toàn: nên chọn kiểu nào
- Chữ thường có dấu: an toàn nhất, nên dùng cho mọi thông tin quan trọng.
- Gạch chân, small caps và chữ mũ: rủi ro thấp đến trung bình, hợp trang trí vài chữ.
- Chữ toán học (đậm, nghiêng, nét đôi, viết tay): đẹp, phổ biến nhất và có nhiều font phủ; hợp tên và bio, nhưng nên kiểm tra.
- Chữ vòng tròn và chữ rộng: trung bình, kiểm tra thêm trước khi dùng cho tên game.
- Chữ ô vuông, số bảy đoạn và ký hiệu hiếm: chỉ dùng khi bạn đã dán thử ở đúng nơi cần dùng.
Muốn hiển thị chắc chắn: đừng dùng chữ kiểu
Khi chữ cần đúng ở mọi nơi, hãy chọn cách không phụ thuộc font của người xem. Xuất chữ thành ảnh bằng công cụ tạo chữ đẹp: ảnh luôn hiện đúng, nhưng không sao chép được và trình đọc màn hình không đọc được, nên cần thêm mô tả. Với tài liệu và thiết kế, chọn một font chữ đẹp hỗ trợ tiếng Việt và nhúng font. Với website, khai báo CSS web font.
Bài liên quan
- Chữ kiểu là gì
- Vì sao chữ kiểu bị lỗi ô vuông
- Chữ kiểu có dùng được tiếng Việt có dấu không
- Các kiểu chữ
Nguồn và cách chúng tôi kiểm tra
Phiên bản Unicode từ DerivedAge, độ phủ font từ FileFormat.info, hành vi hiển thị từ tài liệu của Unicode Consortium. Tài liệu tham khảo: Unicode Character Database: DerivedAge.txt (phiên bản 18.0); FileFormat.info: font hỗ trợ khối Mathematical Alphanumeric Symbols; FileFormat.info: font hỗ trợ khối Enclosed Alphanumerics; FileFormat.info: font hỗ trợ khối Enclosed Alphanumeric Supplement; FileFormat.info: font hỗ trợ khối Phonetic Extensions; FileFormat.info: font hỗ trợ khối Combining Diacritical Marks; FileFormat.info: font hỗ trợ khối Superscripts and Subscripts; Unicode FAQ: Display of Unsupported Characters; Unicode: Display Problems?; Garena Free Fire Brasil (tiếng Bồ Đào Nha): Como faço para trocar meu Nickname?. Kiểm tra lần cuối ở lần cập nhật gần nhất ().
Câu hỏi thường gặp
Có font chữ nào hiển thị được trên mọi ứng dụng không?
Không có cam kết nào như vậy. Mỗi ứng dụng tự quyết định dùng font nào và dự phòng ra sao; Unicode ghi rõ ứng dụng có thể có logic chọn font riêng chưa cập nhật. Cách an toàn nhất là dùng chữ Latin thường, vốn có trong mọi font, và dùng chữ kiểu chỉ cho phần trang trí.
Kiểu chữ nào ít bị lỗi nhất?
Theo phân tích của chúng tôi dựa trên tuổi Unicode, mặt phẳng và độ phủ font, nhóm ít rủi ro nhất là chữ gạch chân (dấu ghép), small caps và chữ mũ. Chữ toán học như 𝐀 ở mức trung bình. Ký tự ô vuông kiểu 🅰, số bảy đoạn và ký hiệu trang trí hiếm như ꧁ có rủi ro cao. Đây là đánh giá từ tài liệu, không phải kết quả thử trên từng app.
Vì sao có bảng này mà không có kết quả thử trên 20 ứng dụng?
Vì chúng tôi chưa thử trên thiết bị thật của từng ứng dụng, và không muốn đưa kết quả chưa kiểm chứng. Bảng hiện dùng số liệu có thể kiểm tra: phiên bản Unicode từ cơ sở dữ liệu ký tự, và độ phủ font từ FileFormat.info. Phần thử thiết bị sẽ bổ sung khi thực hiện xong.
Font hệ thống Windows, Android, iPhone có khác nhau không?
Có, nhưng bài này không so sánh trực tiếp từng hệ điều hành vì thiếu số liệu kiểm chứng. Số liệu có sẵn cho thấy khác biệt lớn giữa từng font: ví dụ Segoe UI Symbol và Cambria Math phủ gần đủ khối chữ toán học, còn DejaVu Sans chỉ phủ khoảng 12%. Kết quả thật còn phụ thuộc font dự phòng của hệ điều hành và ứng dụng.
Làm sao biết máy tôi có hiển thị được một kiểu chữ?
Dán chữ vào công cụ kiểm tra ký tự ngay trên trang. Công cụ vẽ từng ký tự bằng font của trình duyệt và báo ký tự nào có thể là ô vuông. Kết quả chỉ áp dụng cho trình duyệt đang mở, vì ứng dụng khác có thể dùng font khác.
Nếu cần chữ đẹp hiển thị đúng mọi nơi, nên làm gì?
Xuất chữ thành ảnh, vì ảnh không phụ thuộc font của người xem. Với website, dùng CSS web font để tự chỉ định font. Chữ kiểu Unicode phù hợp khi bạn cần văn bản có thể sao chép và chấp nhận một phần máy không hiển thị đúng.