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ọn hoặc thả tệp vào đây

Riêng tư - tệp không bao giờ rời khỏi thiết bị của bạn

Hoặc dán Ctrl+V
Cam kết bảo vệ quyền riêng tư, không truyền dữ liệu qua mạng: 0 byte được tải lên máy chủ bên ngoài. Toàn bộ quá trình xử lý diễn ra cục bộ trong hộp cát trình duyệt của bạn.

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 00

BIỂ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 ContainerThư 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énBảng SFNT không nén (được nén bằng Brotli trong WOFF2)
Thứ tự byteBig-endian (tiêu chuẩn SFNT Motorola)
Không gian màuGlyph 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 đaTố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ầnTruy 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ậtTTF (Hiện tại)OTFWOFF2WOFF
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ỉnhCá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ện0x00 0x01 0x00 0x00OTTO (0x4F 0x54 0x54 0x4F)wOF2 (0x77 0x4F 0x46 0x32)wOFF (0x77 0x4F 0x46 0x46)
Tối ưu hóa webChư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

1992Microsoft tích hợp sẵn 44 phông chữ TrueType cốt lõi (bao gồm Arial, Times New Roman và Courier New) vào Windows 3.1.
1991Apple ra mắt TrueType cùng với Mac OS System 7.
1989Các kỹ sư của Apple là Sampo Kaasila và Mike Reed tạo ra TrueType (mật danh 'Royal') để tránh phải trả tiền bản quyền cho Adobe đối với các phông chữ PostScript.

Ư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.