Tôi nhận ra rằng về cơ bản tôi không biết gì về cách các phông chữ được hiển thị trong máy tính của tôi.
Từ những gì tôi có thể quan sát, việc hiển thị phông chữ thường được thực hiện một cách nhất quán trong toàn hệ thống. Chẳng hạn, các cài đặt gợi ý phông chữ pixel mà tôi định cấu hình trong bảng điều khiển DE của mình có ảnh hưởng đến văn bản xuất hiện trên viền cửa sổ, trong trình duyệt của tôi, trong trình soạn thảo văn bản của tôi, v.v. (Tôi nên quan sát rằng một số ứng dụng Java cho thấy sự khác biệt đáng chú ý, vì vậy tôi đoán rằng chúng đang sử dụng một cơ chế kết xuất phông chữ khác nhau).
Những gì tôi nhận được ở trên là có lẽ tất cả các ứng dụng cần kết xuất phông chữ đều sử dụng một số thư viện trên toàn hệ điều hành (hoặc DE).
Mặt khác, các trình duyệt thường quản lý kết xuất của riêng họ thông qua một công cụ kết xuất, đảm nhiệm việc định vị các mục khác nhau - bao gồm cả văn bản - theo quy tắc luồng cụ thể.
Tôi không chắc làm thế nào hai sự thật này là tương thích. Tôi cho rằng trình duyệt sẽ phải yêu cầu HĐH vẽ glyph tại một vị trí nhất định, nhưng làm thế nào nó có thể quản lý luồng văn bản mà không cần biết trước glyph sẽ chiếm bao nhiêu dung lượng? Có các cuộc gọi riêng để xác định kích thước glyph, để trình duyệt có thể quản lý luồng như thể các ký tự là các hộp nhỏ mà sau đó được HĐH điền vào không? (Mặc dù điều này không quan tâm đến k sâu). Hoặc hệ điều hành chịu trách nhiệm vẽ toàn bộ khu vực văn bản, bao gồm cả dòng văn bản? Hệ điều hành có trả lại glyph được kết xuất dưới dạng bitmap và để nó cho ứng dụng vẽ nó trên màn hình không?