Полнофункциональный рендеринг текста и кроссплатформенная поддержка достигаются при использовании Pango с API платформы или сторонними библиотеками, такими как Uniscribe и FreeType , в качестве бэкэндов рендеринга текста . Текст, обработанный Pango, будет выглядеть одинаково в разных операционных системах. [ необходимо разъяснение ]
Pango — это библиотека специального назначения для текста, а не библиотека общего назначения для рендеринга графики, как Cairo , с которой можно использовать Pango. В документации Cairo рекомендуется использовать Pango для «рендеринга» текста, а не Cairo для всего, кроме простейшего «рендеринга» текста. [5]
История и наименование
Название «панго» происходит от греческого слова «пан» (παν, « все » ) и японского слова «го» (語, « язык » ). [6]
В январе 2000 года слияние проектов GScript и GnomeText получило название Pango. [7] [8] [9] [10] [11] [12]
Версия Pango 1.0.0 была выпущена 11 марта 2002 года. [13] [14]
Поддержка функций OpenType
Pango 1.17 и более новые версии поддерживают тег функции 'locl', который позволяет использовать локализованные глифы для той же кодовой точки Unicode. Если у вас установлена Verdana версии 5.01, которая поддерживает функцию 'locl' для письма latn/ROM (румынского), то вот быстрая демонстрация (на Linux):
for lang in en ro do pango-view \ --font = "Verdana 64" \ --text "şţ vs. ᙲ in $lang " \ --language = $lang Done
Объяснение правил замен для румынского языка см. в этом обсуждении .
Установка локали через переменную среды POSIX, например, LANG=ro_RO.UTF-8 также заставит Pango использовать функцию шрифта 'locl'. Наконец, вы можете изменить язык на лету в том же тексте, используя разметку Pango, например:
pango-view \ --font = "Verdana 24" \ --markup \ --text 'В том же тексте: şţ(en) и <span lang="ro">şţ(ro).</span>'
Начиная с версии 1.37.1, Pango добавил больше атрибутов для обеспечения полной поддержки обработки функций OpenType. [15] [16] [17]
Официальная презентация функций Pango, поддерживающих скрипты, находится здесь.
Основные пользователи
Pango интегрирован в большинство дистрибутивов Linux. Набор инструментов GTK UI использует Pango для всего своего текстового рендеринга. [18] Версии веб- браузера Mozilla Firefox и почтового клиента Mozilla Thunderbird для Linux используют Pango для текстового рендеринга. [19]
↑ Интервью: Оуэн Тейлор из Red Hat на GTK+, также известный по своему вкладу в Pango. , Евгения Лоли, 19 декабря 2003 г.
^ Pango, Сделано версии 0.2, Оуэн Тейлор, redhat.com
^ "1.54". 9 июня 2024 г. Получено 12 июня 2024 г.
^ "Pango website" . Получено 7 июля 2011 г. .
^ "Cairo: A Vector Graphics Library: text" . Получено 27 ноября 2015 г. .
^ "The Pango connection: Part 1". IBM . Архивировано из оригинала 27 июня 2009 года . Получено 7 июля 2011 года .
^ Панго - Статус - 30 ноября 2017 г., Оуэн Тейлор, Redhat
^ GNOMEs в Париже: отчет GUADEC, Самой впечатляющей частью презентации было обсуждение Pango (результата слияния GScript и GnomeText) , 21.03.2000, Чак Топорек - O'Reilly Media
↑ Предложение Pango, версия 0.1, Раф Левиен, 28 июля 1999 г.
^ GScript - Unicode и сложная обработка текста, проект GScript был объединен с проектом GnomeText. Информацию о результате, названном Pango, см.: http://www.pango.org Если у вас возникли проблемы с доступом к этому сайту, вот зеркало. Автор: Оуэн Тейлор
^ Документация API Gnome-Text, Raph Levien, 10 июля 1999 г., Оуэн Тейлор работает над gscript, который имеет некоторые совпадения с функциями, описанными в этом интерфейсе. Мы работаем над унификацией двух API, насколько это возможно.
^ Абдин, Али (1999). "Продолжение интервью с разработчиком GNOME". beast.testbit.eu . Архивировано из оригинала 2013-06-02.Pango (кодовое название слияния моего проекта Gscript и проекта GnomeText Рафа Левиена) — это модульный набор библиотек для выполнения макета и рендеринга международного текста. Он немного похож на Uniscript от Microsoft или ATSUI от Apple.
^ "Pango 1.0.0 released". Архивировано из оригинала 2 апреля 2002 года . Получено 2013-02-20 .
^ Библиотеки пользовательского интерфейса GTK, версия 2.0
^ "Обзор изменений между 1.37.0 и 1.37.1" . Получено 18 августа 2015 г.
^ "Ошибка 738505 - Добавить поддержку fontfeatures в PangoAttributes и разметку". GNOME Bugzilla . Получено 18 августа 2015 г.
^ "Font Features Land in Inkscape Trunk". Блог Tavmjong Bah. 23 июня 2015 г. Получено 18 августа 2015 г.
^ "Загрузить для GNU/Linux и Unix". gtk.org . Архивировано из оригинала 18 августа 2016 . Получено 2017-11-30 .
^ "Thunderbird 52.1.0 System Requirements". mozilla.org . Архивировано из оригинала 10 мая 2017 . Получено 31 июля 2017 .
Внешние ссылки
Официальный сайт
Pango — движок для компоновки текста Unicode с открытым исходным кодом. Оуэн Тейлор на Двадцать пятой конференции по интернационализации и Unicode, апрель 2004 г. Архивировано 06.07.2020 на Wayback Machine
«Pango: интернационализированная обработка текста» Оуэн Тейлор на симпозиуме Linux в Оттаве, 2001 г.
Справочное руководство Pango
Путешествие слова: как текст попадает на страницу YouTube , на linux.conf.au 2017 Саймон Козенс объяснил рендеринг шрифтов