Phông chữ
Một cài đặt cụ thể của kiểu chữ ở kích thước, độ đậm và kiểu dáng nhất định. Trong sắp chữ kỹ thuật số, tệp phông chữ (TTF, OTF, WOFF2) chứa định nghĩa glyph và thước đo.
What is a Font?
A font is a collection of glyphs — visual representations of characters — designed with a unified visual style and packaged into a file that software can use to render text. In everyday speech "font" and "typeface" are used interchangeably, but there is a technical distinction: a typeface is the design family (e.g., Helvetica), while a font originally referred to a specific weight and size within that family (e.g., Helvetica Bold 12pt). In digital usage, a font file contains an entire typeface family or a single style within it.
Fonts are critical to Unicode rendering. No single font covers all 154,998 characters in Unicode 16.0. Instead, operating systems use font fallback chains: when a character is missing from the primary font, the renderer automatically substitutes a glyph from the next font in the chain that contains it.
Font File Formats
Modern fonts use the OpenType (.otf) or TrueType (.ttf) formats, which are functionally equivalent containers. Web fonts are distributed as WOFF (Web Open Font Format) or WOFF2 (compressed), which are wrappers around the same data.
| Format | Extension | Best For |
|---|---|---|
| TrueType | .ttf |
Windows/cross-platform compatibility |
| OpenType CFF | .otf |
PostScript-based outlines, print quality |
| WOFF | .woff |
Web delivery (legacy browsers) |
| WOFF2 | .woff2 |
Web delivery (modern, ~30% smaller) |
| Variable Font | .ttf or .otf |
Multiple weights/styles in one file |
Unicode Coverage
Every font has a Unicode coverage — the set of code points for which it provides glyphs. Tools like fc-query (Linux), Font Book (macOS), or online tools like Wakamai Fondue reveal exactly which characters a font covers.
Fonts designed for broad Unicode support include: - Noto (Google): aims for complete Unicode coverage across all scripts - GNU Unifont: bitmap font covering the entire Basic Multilingual Plane - DejaVu Sans: covers Latin, Greek, Cyrillic, and many symbols
Variable Fonts
OpenType 1.8 introduced variable fonts, which encode an entire design space (weight, width, slant, optical size) as a single file with interpolation axes. Instead of separate Bold, Light, and Condensed files, one variable font file can render any point along those axes. This reduces HTTP requests for web fonts and enables smooth typographic animations.
/* Variable font usage in CSS */
@font-face {
font-family: "Inter";
src: url("Inter.var.woff2") format("woff2-variations");
font-weight: 100 900;
}
h1 {
font-family: "Inter";
font-weight: 650; /* any value between 100–900 */
}
Quick Facts
| Property | Value |
|---|---|
| Typeface vs. font | Typeface = design family; font = specific file/style |
| Max Unicode 16.0 characters | 154,998 assigned code points |
| Most complete Unicode font | Noto (Google), GNU Unifont |
| Web font formats | WOFF2 (preferred), WOFF (fallback) |
| Variable font axis examples | wght (weight), wdth (width), ital (italic), opsz (optical size) |
| Font fallback mechanism | OS-level chain; controlled by font-family stack in CSS |
| CSS property for Unicode range | unicode-range in @font-face (subset loading) |
Thuật ngữ liên quan
Thêm trong Typography
Hai ký tự trở lên được kết hợp thành một glyph duy …
Dạng chữ hoa ở chiều cao của chữ thường. CSS: font-variant: small-caps. …
CSS @font-face descriptor specifying which Unicode code points a font should cover. …
U+2026 HORIZONTAL ELLIPSIS (…). Một ký tự duy nhất thay thế ba …
Cặp dấu chấm câu bao quanh lời nói trực tiếp hoặc trích …
Dấu được thêm vào chữ cái để thay đổi cách phát âm …
Em: chiều rộng bằng kích thước phông chữ. En: bằng một nửa …
The mechanism by which a rendering engine substitutes glyphs from a secondary …
Dấu chấm câu dùng để phân tách các phần của câu hoặc …
Điều chỉnh khoảng cách giữa các cặp ký tự cụ thể để …