Wanted: Information on O.S Handling of GUI/Fonts&Text, etc..
Posted: Fri Feb 25, 2011 8:37 pm
This is a slightly different spin-off from my "wtf GUI....." thread, which has taken a different route of discussion I do not wish to disturb at this time...
I've been trying to understand how "Text" gadgets/widgets/whatever you call them are created, and handled; But I'm not finding a lot of information on the subject of Text Rendering on PC's..
It's so puzzling to me, because even within a GUI system, a Font is still a graphic that is displayed.. I can't find any real general information on how Windows/Linux GTK etc actually use fonts and display them, like in the window I am typing this message in now for instance..
You can have text all over the place, in various Windows and positions, but if they are simple 2D graphics it amazes me how they are displayed so quickly/resource efficiently, etc..
I'd really like to understand how Font systems work in general, on Windows, on Linux / GTK / other GUI frameworks.. How they all interact with each other to display Text in text like Gadgets, and how systems are able to handle stuff like selecting and highlighting a block of text, cutting/copying & pasting, spell checking (how DOES it know one letter is a G and another is an A or XYZ... much less in multiple fonts? Are the Fonts "mapped" to keyscan/virtual keycodes ?), etc...
I was thinking maybe it would help me, to possibly build my own custom Gadget to display text, and do it the way I like it.. Or at least use a 2D Screen mode, with an entirely graphics based GUI that mimics the look of a skinned Windows program, using Bitmap fonts, and hopefully supporting stuff like Resizing Windows and selecting/copying text, etc..
If anyone can indulge me with information and links for good reading (Technical, but not Einstein technical!), I would really appreciate this...
I've been trying to understand how "Text" gadgets/widgets/whatever you call them are created, and handled; But I'm not finding a lot of information on the subject of Text Rendering on PC's..
It's so puzzling to me, because even within a GUI system, a Font is still a graphic that is displayed.. I can't find any real general information on how Windows/Linux GTK etc actually use fonts and display them, like in the window I am typing this message in now for instance..
You can have text all over the place, in various Windows and positions, but if they are simple 2D graphics it amazes me how they are displayed so quickly/resource efficiently, etc..
I'd really like to understand how Font systems work in general, on Windows, on Linux / GTK / other GUI frameworks.. How they all interact with each other to display Text in text like Gadgets, and how systems are able to handle stuff like selecting and highlighting a block of text, cutting/copying & pasting, spell checking (how DOES it know one letter is a G and another is an A or XYZ... much less in multiple fonts? Are the Fonts "mapped" to keyscan/virtual keycodes ?), etc...
I was thinking maybe it would help me, to possibly build my own custom Gadget to display text, and do it the way I like it.. Or at least use a 2D Screen mode, with an entirely graphics based GUI that mimics the look of a skinned Windows program, using Bitmap fonts, and hopefully supporting stuff like Resizing Windows and selecting/copying text, etc..
If anyone can indulge me with information and links for good reading (Technical, but not Einstein technical!), I would really appreciate this...