*** Welcome to piglix ***

Pango

Pango
Pango-name.svg
Pango name written as intended
Original author(s) Owen Taylor
Raph Levien
Developer(s) Behdad Esfahbod
Initial release 11 July 1999; 17 years ago (1999-07-11)
Stable release 1.40.3 (September 13, 2016; 5 months ago (2016-09-13))
Repository git.gnome.org/browse/pango
Written in C
Operating system Unix-like, Microsoft Windows, Other
Type Software development library
License LGPL
Website www.pango.org

Pango (stylized as Παν語) is a text layout engine library which works with the HarfBuzz shaping engine for displaying multi-language text. Full-function rendering of text and cross-platform support is achieved when Pango is used with platform APIs or third-party libraries, such as Uniscribe and FreeType, as text rendering backends. Pango-processed text will appear similar under different operating systems.

Pango is a special-purpose library for text and not a general-purpose graphics rendering library such as Cairo, with which Pango can be used. Indeed, the Cairo documentation recommends Pango be used to "render" text rather than Cairo for all but the simplest text "rendering".

The name pango comes from Greek pan (παν, "all") and Japanese go (語, "language").

Pango 1.17 and newer support the locl feature tag that allows localized glyphs to be used for the same Unicode code point. Assuming you have Verdana version 5.01 installed, which supports the locl feature for the latn/ROM (Romanian) script, a quick demonstration (on Linux) is:

For an explanation of the substitutions rules for Romanian, see this discussion.

Setting the locale via the POSIX environment variable, e.g. LANG=ro_RO.UTF-8 will also cause Pango to use locl font feature. Finally, you can change the language on the fly in the same text using Pango markup, e.g.:

Since 1.37.1, Pango added more attributes to provide completely support for processing OpenType feature.

The official showcase of Pango's script-aware features is here.

Pango has been integrated into most Linux distributions. The GTK+ UI toolkit uses Pango for all of its text rendering. The Linux versions of the Mozilla Firefox web browser and Mozilla Thunderbird mail client use Pango for text rendering.


...
Wikipedia

...