Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 History and naming  





2 Support for OpenType features  





3 Major users  





4 See also  





5 References  





6 External links  














Pango






العربية
Bikol Central
Català
Deutsch
Español
فارسی
Français

Italiano
עברית
Magyar
Nederlands

Norsk bokmål
Polski
Português
Русский

Tagalog
Українська

 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 




In other projects  



Wikimedia Commons
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


Original author(s)Owen Taylor[1]
Raph Levien
Developer(s)Behdad Esfahbod
Initial release11 July 1999; 25 years ago (1999-07-11)[2]
Stable release

1.54.0[3] Edit this on Wikidata / 9 June 2024; 33 days ago (9 June 2024)

Repository
Written inC
Operating systemUnix-like, Microsoft Windows, Other
TypeSoftware development library
LicenseLGPL
Websitewww.pango.org

Pango (stylized as Παν語) is a text (i.e. glyph) layout engine library which works with the HarfBuzz shaping engine for displaying multi-language text.[4]

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.[clarification needed]

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. The Cairo documentation recommends Pango be used to "render" text rather than Cairo for all but the simplest text "rendering".[5]

History and naming[edit]

The name pango comes from Greek pan (παν, 'all') and Japanese go (, 'language').[6]

In January 2000, the merger of the GScript and GnomeText projects was named Pango.[7][8][9][10][11][12]

Pango version 1.0.0 was released 11 March 2002.[13][14]

Support for OpenType features[edit]

Default rendering above, localized Romanian rendering below.

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 lang in en ro; do pango-view \
 --font="Verdana 64" \
 --text "şţ vs. șț in $lang" \
 --language=$lang; done

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.:

pango-view \
 --font="Verdana 24" \
 --markup \
 --text 'In the same text: şţ(en) and <span lang="ro">şţ(ro).</span>'

Since 1.37.1, Pango added more attributes to provide complete support for processing OpenType feature.[15][16][17]

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

Major users[edit]

Simplified software architecture of GTK. Pango, GDK, ATK, GIO, Cairo and GLib.

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

See also[edit]

References[edit]

  1. ^ Interview: Red Hat's Owen Taylor on GTK+, also known for his contributions on Pango., by Eugenia Loli, 19th Dec 2003
  • ^ Pango, Made version 0.2, Owen Taylor, redhat.com
  • ^ "1.54". 9 June 2024. Retrieved 12 June 2024.
  • ^ "Pango website". Retrieved 7 July 2011.
  • ^ "Cairo: A Vector Graphics Library: text". Retrieved 27 November 2015.
  • ^ "The Pango connection: Part 1". IBM. Archived from the original on 27 June 2009. Retrieved 7 July 2011.
  • ^ Pango - Status - 2017-11-30, Owen Taylor, Redhat
  • ^ GNOMEs in Paris: A Report from GUADEC, The most impressive part of their presentation was the discussion on Pango (the result of the GScript and GnomeText merger), 2000/03/21, By Chuck Toporek - O'Reilly Media
  • ^ Pango proposal, rev 0.1, Raph Levien, 28 July 1999
  • ^ GScript - Unicode and Complex Text Processing, The GScript project has been merged with the GnomeText project. For information about the result, named Pango, see: http://www.pango.org If you have trouble accessing that site, there is a mirror here. By Owen Taylor
  • ^ Gnome-Text API documentation, Raph Levien, 10 Jul 1999, Owen Taylor is working on gscript, which has some overlap with the functions described in this interface. We're working on unifying the two api's as much as possible.
  • ^ Abdin, Ali (1999). "GNOME Developer's Interview Follow-up". beast.testbit.eu. Archived from the original on 2013-06-02. Pango (which is the code name for a merger of my Gscript project and Raph Levien's GnomeText project) is a modular set of libraries for doing layout and rendering of international text. It's a bit similar to Microsoft's Uniscript or Apple's ATSUI.
  • ^ "Pango 1.0.0 released". Archived from the original on April 2, 2002. Retrieved 2013-02-20.
  • ^ GTK user interface libraries, version 2.0
  • ^ "Overview of changes between 1.37.0 and 1.37.1". Retrieved 18 August 2015.
  • ^ "Bug 738505 - Add fontfeatures support in PangoAttributes and markup". GNOME Bugzilla. Retrieved 18 August 2015.
  • ^ "Font Features Land in Inkscape Trunk". Tavmjong Bah's Blog. 23 June 2015. Retrieved 18 August 2015.
  • ^ "Download for GNU/Linux and Unix". gtk.org. Archived from the original on 18 August 2016. Retrieved 2017-11-30.
  • ^ "Thunderbird 52.1.0 System Requirements". mozilla.org. Archived from the original on 10 May 2017. Retrieved 31 July 2017.
  • External links[edit]


    Retrieved from "https://en.wikipedia.org/w/index.php?title=Pango&oldid=1223226857"

    Categories: 
    1999 software
    C (programming language) libraries
    Free computer libraries
    Free software programmed in C
    Freedesktop.org libraries
    GNOME libraries
    GTK
    Software that uses Meson
    Text rendering libraries
    Hidden categories: 
    Articles with short description
    Short description matches Wikidata
    Wikipedia articles needing clarification from November 2012
    Webarchive template wayback links
    Articles containing Polish-language text
     



    This page was last edited on 10 May 2024, at 18:04 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki