|
Packit |
1470ea |
|
|
Packit |
1470ea |
xmlns:its="http://www.w3.org/2005/11/its"
|
|
Packit |
1470ea |
type="topic"
|
|
Packit |
1470ea |
id="tech-pango">
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<info>
|
|
Packit |
1470ea |
<link type="guide" xref="tech" group="pango"/>
|
|
Packit |
1470ea |
<revision pkgversion="3.0" date="2011-04-05" status="candidate"/>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<credit type="author copyright">
|
|
Packit |
1470ea |
<name>Shaun McCance</name>
|
|
Packit |
1470ea |
<email its:translate="no">shaunm@gnome.org</email>
|
|
Packit |
1470ea |
<years>2011–2012</years>
|
|
Packit |
1470ea |
</credit>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<include href="cc-by-sa-3-0.xml" xmlns="http://www.w3.org/2001/XInclude"/>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<desc>International text rendering with full Unicode support</desc>
|
|
Packit |
1470ea |
</info>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<title>Pango</title>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
Pango is the core text and font handling library in the GNOME
|
|
Packit |
1470ea |
platform. It is responsible for laying out and rendering text, and
|
|
Packit |
1470ea |
is used throughout GTK+.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<note>The Pango layout engine can be used with different font
|
|
Packit |
1470ea |
backends and drawing backends. On most GNOME systems, Pango
|
|
Packit |
1470ea |
will use FreeType, fontconfig, and Cairo to access fonts and
|
|
Packit |
1470ea |
render text. On other systems, Pango will use the native font
|
|
Packit |
1470ea |
systems, such as Uniscribe on Microsoft Windows and ATSUI on
|
|
Packit |
1470ea |
MacOS</note>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
Pango has extensive support for the various writing systems
|
|
Packit |
1470ea |
used throughout the world. Many of the writing systems used for
|
|
Packit |
1470ea |
languages have complex rules for laying out glyphs and composing
|
|
Packit |
1470ea |
characters. With Pango, nearly all languages can be written and
|
|
Packit |
1470ea |
displayed correctly, allowing users everywhere to view text in their
|
|
Packit |
1470ea |
native languages. Pango's support for multiple writing systems is
|
|
Packit |
1470ea |
automatic; application developers do not have to write any special
|
|
Packit |
1470ea |
code to support other languages.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
Pango supports the kind of text styling used in typical documents
|
|
Packit |
1470ea |
and interfaces, including italics, font weights, and underlines.
|
|
Packit |
1470ea |
Pango uses a simple XML-like vocabulary called PangoMarkup which
|
|
Packit |
1470ea |
enables you to set font size, color, styles, and other text
|
|
Packit |
1470ea |
attributes. Using PangoMarkup, you can specify inline styles
|
|
Packit |
1470ea |
without manually iterating over text blocks. PangoMarkup can
|
|
Packit |
1470ea |
be used directly from GTK+, enabling you to style text in your
|
|
Packit |
1470ea |
graphical interfaces easily.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
You should use Pango directly whenever you need to lay
|
|
Packit |
1470ea |
text out on the screen or on a different medium. Using Pango
|
|
Packit |
1470ea |
will allow your text layout to work seamlessly with GTK+ and
|
|
Packit |
1470ea |
the rest of the GNOME platform. It will help you create
|
|
Packit |
1470ea |
portable code, and most importantly, it will ensure that your
|
|
Packit |
1470ea |
application can render text correctly in hundreds of different
|
|
Packit |
1470ea |
languages.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<list style="compact">
|
|
Packit |
1470ea |
<item><link href="https://developer.gnome.org/pango/stable/">Pango Reference Manual</link> </item>
|
|
Packit |
1470ea |
<item><link href="http://www.pango.org">The Pango web site</link> </item>
|
|
Packit |
1470ea |
</list>
|
|
Packit |
1470ea |
</page>
|