Панго - Pango

Панго
Имя Панго написано как задумано
Имя Панго написано как задумано
Оригинальный автор (ы)Оуэн Тейлор[1]
Раф Левиен
Разработчики)Бехдад Эсфахбод
изначальный выпуск11 июля 1999 г.; 21 год назад (1999-07-11)[2]
Стабильный выпуск1.48.0 (8 ноября 2020 г.; 28 дней назад (2020-11-08)) [±][3]
Репозиторий Отредактируйте это в Викиданных
Написано вC
Операционная системаUnix-подобный, Майкрософт Виндоус, Другой
ТипБиблиотека разработки программного обеспечения
ЛицензияLGPL
Интернет сайтwww.pango.org

Панго (стилизованный под Παν 語) - это текст (т.е. глиф ) верстка библиотека который работает с HarfBuzz движок шейпинга для отображения многоязычного текста.[4]

Полнофункциональный рендеринг текста и кроссплатформенная поддержка достигается, когда Pango используется с API платформы или сторонними библиотеками, такими как Не описывать и FreeType, как рендеринг текста бэкэнды. Текст, обработанный Pango, будет выглядеть одинаково в разных операционных системах.[требуется разъяснение ]

Pango - это специализированная библиотека для текста, а не универсальная библиотека визуализации графики, например Каир, с которым можно использовать Pango. Документация Cairo рекомендует использовать Pango для «визуализации» текста, а не Cairo для всего, кроме простейшего «визуализации» текста.[5]

История и нейминг

Название панго происходит от Греческий Сковорода (παν, «все») и Японский идти (語, "язык ").[6]

В январе 2000 г. произошло слияние GScript и GnomeText проект получил название Pango.[7][8][9][10][11][12]

Версия 1.0.0 Pango была выпущена 11 марта 2002 года.[13][14]

Поддержка функций OpenType

Рендеринг по умолчанию вверху, локализованный рендеринг на румынском языке внизу.

Pango 1.17 и новее поддерживают locl тег функции, который позволяет использовать локализованные глифы для одной и той же кодовой точки Unicode. Предполагая, что у вас есть Вердана установлена ​​версия 5.01, которая поддерживает функцию locl для сценария latn / ROM (румынский), быстрая демонстрация (в Linux):

за lang in en ro; делать панго-взгляд \ --шрифт=«Вердана 64» \ --текст "şţ vs. șț in $ lang" \ --язык=$ lang; сделано

Объяснение правил замены для румынского языка см. Здесь. обсуждение.

Установка языкового стандарта через переменную среды POSIX, например LANG = ro_RO.UTF-8 также заставит Pango использовать locl функция шрифта. Наконец, вы можете на лету менять язык в том же тексте, используя Разметка панго, например:

панго-взгляд \ --шрифт="Вердана 24" \ - разметка \ --текст 'В том же тексте: şţ (en) и  şţ (ro). '

Начиная с 1.37.1, Pango добавил больше атрибутов, чтобы обеспечить полную поддержку обработки функции OpenType.[15][16][17]

Официальная демонстрация функций Pango, поддерживающих скрипты: Вот.

Основные пользователи

Упрощенная программная архитектура GTK. Панго, GDK, АТК, GIO, Каир и GLib.

Pango интегрирован в большинство дистрибутивов Linux. В GTK Инструментарий UI использует Pango для всей визуализации текста.[18] В Linux версии Mozilla Firefox веб-браузер и Mozilla Thunderbird почтовый клиент использует Pango для рендеринга текста.[19]

Смотрите также

Рекомендации

  1. ^ Интервью: Оуэн Тейлор из Red Hat на GTK +, также известен своим вкладом в Панго., Евгения Лоли, 19 декабря 2003 г.
  2. ^ Панго, Сделано в версии 0.2, Оуэн Тейлор, redhat.com
  3. ^ «Теги - GNOME / pango». Получено 26 октября 2019.
  4. ^ «Сайт Панго». Получено 7 июля 2011.
  5. ^ «Каир: Библиотека векторной графики: текст». Получено 27 ноября 2015.
  6. ^ "Связь с Панго: Часть 1". В архиве из оригинала 27 июня 2009 г.. Получено 7 июля 2011.
  7. ^ Панго - Статус - 30.11.2017, Оуэн Тейлор, Redhat
  8. ^ Гномы в Париже: отчет GUADEC, Самой впечатляющей частью их презентации было обсуждение Pango (результат слияния GScript и GnomeText)., 21.03.2000, Чак Топорек - O'Reilly Media
  9. ^ Предложение Pango, ред. 0.1, Раф Левиен, 28 июля 1999 г.
  10. ^ GScript - Юникод и обработка сложного текста, Проект GScript был объединен с проектом GnomeText. Для получения информации о результате, названном Pango, см .: http://www.pango.org Если у вас возникли проблемы с доступом к этому сайту, здесь есть зеркало. Оуэн Тейлор
  11. ^ Документация по Gnome-Text API, Раф Левиен, 10 июля 1999 г., Оуэн Тейлор работает над gscript, который частично совпадает с функциями, описанными в этом интерфейсе. Мы работаем над тем, чтобы максимально объединить два API.
  12. ^ Абдин, Али (1999). «Продолжение интервью с разработчиками GNOME». beast.testbit.eu. Архивировано из оригинал на 2013-06-02. Pango (это кодовое название слияния моего проекта Gscript и проекта GnomeText Рафа Левиена) - это модульный набор библиотек для создания макетов и рендеринга международного текста. Это немного похоже на Microsoft Uniscript или Apple ATSUI.
  13. ^ «Pango 1.0.0 выпущен». Архивировано 2 апреля 2002 года.. Получено 2013-02-20.CS1 maint: BOT: статус исходного URL-адреса неизвестен (связь)
  14. ^ Библиотеки пользовательского интерфейса GTK, версия 2.0
  15. ^ «Обзор изменений между 1.37.0 и 1.37.1». Получено 18 августа 2015.
  16. ^ «Ошибка 738505 - добавление поддержки функций шрифта в PangoAttributes и разметке». GNOME Bugzilla. Получено 18 августа 2015.
  17. ^ "Возможности шрифта попадают в Inkscape Trunk". Блог Тавмджонга Баха. 23 июня 2015 г.. Получено 18 августа 2015.
  18. ^ «Загрузить для GNU / Linux и Unix». gtk.org. Архивировано 18 августа 2016 года.. Получено 2017-11-30.CS1 maint: BOT: статус исходного URL-адреса неизвестен (связь)
  19. ^ «Системные требования Thunderbird 52.1.0». mozilla.org. Архивировано 10 мая 2017 года.. Получено 31 июля 2017.CS1 maint: BOT: статус исходного URL-адреса неизвестен (связь)

внешняя ссылка