Phông chữ TrueType (.ttf)
ISO/IEC Tiêu chuẩnĐịnh dạng TrueType (TTF) do Apple phát triển và cấp phép cho Microsoft. Hinting và cách hiển thị tùy thuộc vào hệ thống và bộ máy văn bản.
Chuyển đổi TTF sang WOFF2
Trình chuyển đổi từ TTF sang WOFF2 miễn phí trên trình duyệt. Chuyển đổi tệp ngay lập tức trên thiết bị của bạn.
Kiểm tra & Siêu dữ liệu
Các hệ điều hành và trình phân tích tệp nhận dạng tệp TTF bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:
Chữ ký ở đầu tệp (mẫu byte nhận diện)
Các hệ điều hành và trình phân tích tệp nhận dạng tệp TTF bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:
CHỮ KÝ HEX (OFFSET 0):
00 01 00 00BIỂU DIỄN ASCII: ....
Tiêu chuẩn hóa: ISO/IEC 14496-22 / Apple TrueType Reference Manual
Thông số kỹ thuật
| Kiến trúc Container | Thư mục bảng SFNT chứa glyph đường cong Bézier bậc hai (bảng 'glyf') và lệnh bytecode gợi ý phông chữ |
| Nén | Bảng SFNT không nén (được nén bằng Brotli trong WOFF2) |
| Thứ tự byte | Big-endian (tiêu chuẩn SFNT Motorola) |
| Không gian màu | Glyph biểu tượng cảm xúc màu COLR/CPAL, Bảng biểu tượng cảm xúc SBIX của Apple, Bitmap màu CBDT của Google |
| Kênh & Cấu trúc | Đường viền glyph, máy ảo bytecode gợi ý, kerning và bảng ánh xạ ký tự (cmap) |
| Kích thước tối đa | Tối đa 65.535 glyph cho mỗi tệp phông chữ |
| Độ trong suốt | Độ trong suốt alpha được hỗ trợ trong định dạng glyph biểu tượng cảm xúc màu |
| Truyền phát & Tăng dần | Truy cập ngẫu nhiên theo bảng qua thư mục bảng SFNT |
Ma trận so sánh kỹ thuật: TTF so với các đối thủ
| Thuộc tính kỹ thuật | TTF (Hiện tại) | OTF | WOFF2 | WOFF |
|---|---|---|---|---|
| Toán học đường cong viền | Đường cong Bezier bậc hai ('glyf') | Đường cong Bezier bậc ba ('CFF ') | Bậc hai hoặc bậc ba (được nén) | Bậc hai hoặc bậc ba (được nén) |
| Công cụ tinh chỉnh phông chữ | Máy ảo bytecode Turing hoàn chỉnh | Các hint PostScript mang tính khai báo | Được bảo tồn từ phông chữ nguồn | Được bảo tồn từ phông chữ nguồn |
| Byte nhận diện | 0x00 0x01 0x00 0x00 | OTTO (0x4F 0x54 0x54 0x4F) | wOF2 (0x77 0x4F 0x46 0x32) | wOFF (0x77 0x4F 0x46 0x46) |
| Tối ưu hóa web | Chưa nén (hướng đến máy tính để bàn) | Chưa nén (hướng đến máy tính để bàn) | Nén bằng Brotli; mức tiết kiệm dung lượng tùy phông chữ. | Được nén bằng zlib |
Các dạng hỏng thường gặp và hướng dẫn khôi phục bằng mã hex
Phông chữ hiển thị các lỗi pixel có răng cưa hoặc hình dạng chữ cái bị biến dạng ở các kích thước phông chữ cụ thể.
Nguyên nhân gốc rễ: Lỗi trong bytecode tinh chỉnh TrueType được thực thi bởi máy ảo phông chữ.
Khắc phục: Tạo lại đường viền phông chữ hoặc loại bỏ tinh chỉnh bằng Công cụ phông chữ File2File.app.
Phân tích bảo mật và các đường tấn công nhằm vào bộ phân tích cú pháp
Máy ảo bytecode của TrueType thực thi các lệnh giống hợp ngữ chưa được xác minh, trong lịch sử đã từng là mục tiêu khai thác cấp nhân hệ điều hành.
Các véc-tơ tấn công đã biết
- Ghi bộ nhớ vượt quá giới hạn trong trình thông dịch bytecode TrueType (ví dụ: CVE-2015-2426).
- Tràn số nguyên trong quá trình phân tích thư mục bảng phông chữ trong các trình điều khiển đồ họa nhân hệ điều hành.
- Từ chối dịch vụ thông qua các vòng lặp vô hạn trong quá trình thực thi tinh chỉnh phông chữ.
Biện pháp phòng thủ tốt nhất: Thực thi việc tinh chỉnh phông chữ nghiêm ngặt trong các vùng bộ nhớ cách ly không có đặc quyền.
Nguồn gốc lịch sử và các cột mốc
Ưu điểm & Lợi ích chính
- Hinting TrueType có thể cải thiện hiển thị glyph trên màn hình độ phân giải thấp, nhưng kết quả tùy thuộc vào bộ rasterizer.
- TrueType được nhiều hệ thống máy tính và di động hỗ trợ, nhưng mức hỗ trợ tùy nền tảng và phông chữ.
- Hiệu suất kết xuất đặc biệt: các đường cong Bezier bậc hai được raster hóa nhanh hơn về mặt tính toán so với các đường cong bậc ba.
Hạn chế & Nhược điểm kỹ thuật
- Việc tạo ra các hướng dẫn tinh chỉnh TrueType thủ công cực kỳ khó khăn và tốn thời gian đối với các nhà thiết kế kiểu chữ.
- Bộ chứa SFNT chưa nén lớn hơn các định dạng dành riêng cho web như WOFF2.
- Thiếu các tập hợp thay thế phong cách OpenType phong phú thường thấy trong OTF dựa trên PostScript.
Thông tin kỹ thuật thú vị
- 4 byte đầu tiên của một phông chữ TrueType tiêu chuẩn là 0x00 0x01 0x00 0x00, đại diện cho phiên bản 1.0 ở định dạng dấu phẩy cố định 16.16.
- Apple đã tạo ra TrueType để họ không phải trả tiền bản quyền cho Adobe đối với các phông chữ PostScript; sau đó Apple đã đổi TrueType lấy công nghệ máy in TrueImage từ Microsoft.
- Một số phông chữ emoji dùng bảng glyph màu trong phông TrueType hoặc OpenType; hình thức emoji và hỗ trợ phông chữ tùy nền tảng.
Các câu hỏi kỹ thuật thường gặp
Tôi có thể chuyển đổi TTF sang WOFF2 cho trang web của mình không?
Chuyển TTF sang WOFF2 bằng File2File.app có thể giảm dung lượng tệp; mức giảm tùy thuộc phông chữ và cài đặt chuyển đổi.
Tại sao Apple và Microsoft tạo ra TrueType?
Họ tạo ra TrueType để tránh phải trả phí bản quyền đắt đỏ cho Adobe đối với các font Type 1, và để trao cho hệ điều hành quyền kiểm soát hoàn toàn đối với việc hiển thị điểm ảnh (rasterization) font trên màn hình.
Làm cách nào để cài đặt font TTF?
Trên Windows, nhấp chuột phải vào tệp .ttf và chọn 'Install' (Cài đặt). Trên Mac, nhấp đúp vào tệp .ttf và nhấp vào 'Install Font' (Cài đặt phông chữ) trong Font Book.
Các cặp chuyển đổi TTF liên quan
Chuyển phông chữ TrueType sang WOFF2 có thể giảm dung lượng tải xuống khi dùng trên web; mức giảm tùy thuộc vào các bảng dữ liệu của phông chữ và việc có tạo phông chữ con hay không.
Việc chuyển đổi phông chữ web WOFF2 sang tệp TrueType TTF cho phép bạn sử dụng kiểu chữ web đã nén trong các bộ phần mềm thiết kế trên máy tính để bàn và hệ điều hành cũ.