Text shaping is the process of converting text toglyph indices and positions as part oftext rendering.[1] It is complementary tofont 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.
Text shaping results in substantially better results on Latin script; for some scripts withcomplex text layout such as Arabic script, text shaping is necessary for text to be readable at all.[3]
Mostgraphical user interface systems, including those inmacOS,iOS,[4] andMicrosoft Windows have their own native text rendering engines that include text shaping.Microsoft'sUniscribe framework permits the use of pluggable shaping engines.[5]Monotype'sWorldType system also provides shaping functions.[6]
In theopen source world,HarfBuzz is a popular text shaping engine. According to HarfBuzz's developers, HarfBuzz is used by a range of software products includingAndroid,Chrome,ChromeOS,Firefox,GNOME,GTK+,KDE,Qt,LibreOffice,OpenJDK,XeTeX,PlayStation,Microsoft Edge,Adobe Photoshop,Illustrator,InDesign, andGodot Engine.[7]
Text shaping engines require descriptions of shaping properties and rules packaged in a format known as a shaping model. Shaping models includeOpenType Layout,Graphite, andApple Advanced Typography.[8]
This computing article is astub. You can help Wikipedia byadding missing information. |