Pango

Pango is the core text and font handling library in the GNOME platform. It is responsible for laying out and rendering text, and is used throughout GTK+.

Pango レイアウト・エンジンは異なるフォント・バックエンド、および描画バックエンドで使用することができます。大抵の GNOME システムでは、Pango は FreeType、fontconfig、およびフォントへのアクセスとテキストの描画に Cairo を使用します。ほかのシステムでは Pango はネイティブのフォントシステム、たとえば Microsoft Windows では Uniscribe、MacOS では ATSUI を使用します

Pango は世界中のさまざまな書記体系を広範囲にサポートします。言語により使用される多くの書記体系にはグリフのレイアウトや合成文字(composing characters)にたいする複雑なルールがあります。Pango はほとんどすべての言語による記述を正しく表示し、すべての場所でユーザがネイティブの言語でテキストを閲覧できるようにします。Pango は複数の書記体系を自動的にサポートします; アプリケーションのの開発者は他の言語をサポートするために特別なコードを記述する必要はありません。

Pango は特有のドキュメントとインタフェースにより斜体、フォントの太さ、アンダーラインを含めたテキストの整形をサポートします。Pango は PangoMarkup と呼ばれる、XML に似たシンプルな言語を使用することで、フォントのサイズや色、スタイルやその他のテキストの属性を設定することを可能にします。PangoMarkup を使用することにより、テキストブロックに手動で挿入することなくインラインでスタイルを設定できます。PangoMarkup は GTK+ から直接使用され、グラフィカルインタフェースのテキストを整形するのを容易にします。

スクリーンやその他のデバイスにテキストをレイアウトするときは常に Pango を直接使用するべきです。Pango を使用することにより GTK+ や GNOME プラットフォームの他の部分とシームレスにテキストをレイアウトすることができます。また可搬性のあるコードを記述でき、あなたのアプリケーションが異なる数百の言語を表示できることを保証します。