![]() | This is a draft article. It is a work in progress open to editing by anyone. Please ensure core content policies are met before publishing it as a live Wikipedia article. Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL Last edited by [[User:|]] ([[User talk:|talk]] | contribs) 0 seconds ago. (Update)
Save your work by pressing the "Publish page" button below, and a button will appear here allowing you to submit your draft for review. |
Text shaping is the process of converting text to glyph indices and positions as part of text rendering.[1] It is complementary to font rendering as part of the text rendering process; font rendering is used to generate the glyphs, and text shaping decides which glyphs to render and where they should be put on the image plane.[2] Unicode is generally used to specify the text to be rendered.
Most graphical user interface systems, including those in MacOS, iOS,[3] and Microsoft Windows have their own native text rendering engines that include text shaping. Microsoft's Uniscribe framework permits the use of pluggable shaping engines.[4] Monotype's WorldType system also provides shaping functions.[5]
In the open source world, HarfBuzz is a popular text shaping engine. According to HarfBuzz's developers, HarfBuzz is used by a range of software products including Android, Chrome, ChromeOS, Firefox, GNOME, GTK+, KDE, Qt, LibreOffice, OpenJDK, XeTeX, PlayStation, Microsoft Edge, Adobe Photoshop, Illustrator, InDesign, and Godot Engine.[6]
Text shaping engines require descriptions of shaping properties and rules packaged in a format known as a shaping model. Shaping models include OpenType Layout, Graphite, and Apple Advanced Typography.[7]