stringtranslate.com

Pango

Pango (estilizado como Παν語) es una biblioteca de motor de diseño de texto (es decir, glifos ) que funciona con el motor de modelado HarfBuzz para mostrar texto en varios idiomas. [4]

La representación de texto con todas las funciones y la compatibilidad con varias plataformas se logran cuando Pango se utiliza con API de plataforma o bibliotecas de terceros, como Uniscribe y FreeType , como backends de representación de texto . El texto procesado por Pango tendrá un aspecto similar en diferentes sistemas operativos. [ Aclaración necesaria ]

Pango es una biblioteca de propósito especial para texto y no una biblioteca de renderización de gráficos de propósito general como Cairo , con la que se puede utilizar Pango. La documentación de Cairo recomienda que se utilice Pango para "renderizar" texto en lugar de Cairo para todo tipo de "renderizado" de texto, excepto el más simple. [5]

Historia y denominación

El nombre pango proviene del griego pan (παν, ' todo ' ) y del japonés go (語, ' lenguaje ' ). [6]

En enero de 2000, la fusión de los proyectos GScript y GnomeText se denominó Pango. [7] [8] [9] [10] [11] [12]

La versión 1.0.0 de Pango se lanzó el 11 de marzo de 2002. [13] [14]

Compatibilidad con funciones OpenType

Representación predeterminada arriba, representación rumana localizada abajo.

Pango 1.17 y versiones posteriores admiten la etiqueta de función 'locl' que permite utilizar glifos localizados para el mismo punto de código Unicode. Suponiendo que tenga instalada la versión 5.01 de Verdana , que admite la función 'locl' para el alfabeto latn/ROM (rumano), una demostración rápida (en Linux) es la siguiente:

for  lang in en ro do pango-view \ --font = "Verdana 64" \ --text "şţ vs. șț in $lang " \ --language = $lang done           

Para obtener una explicación de las reglas de sustituciones para el rumano, consulte esta discusión .

Si se configura la configuración regional mediante la variable de entorno POSIX, por ejemplo, LANG=ro_RO.UTF-8, Pango también utilizará la función de fuente 'locl'. Por último, puede cambiar el idioma sobre la marcha en el mismo texto utilizando el marcado de Pango, por ejemplo:

pango-view \ --font = "Verdana 24" \ --markup \ --text 'En el mismo texto: şţ(en) y <span lang="ro">şţ(ro).</span>'       

Desde la versión 1.37.1, Pango agregó más atributos para brindar soporte completo para el procesamiento de funciones OpenType. [15] [16] [17]

La presentación oficial de las funciones compatibles con scripts de Pango se encuentra aquí.

Usuarios principales

Arquitectura de software simplificada de GTK . Pango, GDK , ATK , GIO , Cairo y GLib .

Pango se ha integrado en la mayoría de las distribuciones de Linux. El kit de herramientas de interfaz de usuario GTK utiliza Pango para la representación de texto. [18] Las versiones de Linux del navegador web Mozilla Firefox y el cliente de correo Mozilla Thunderbird utilizan Pango para la representación de texto. [19]

Véase también

Referencias

  1. ^ Entrevista: Owen Taylor de Red Hat sobre GTK+, también conocido por sus contribuciones a Pango. , por Eugenia Loli, 19 de diciembre de 2003
  2. ^ Pango, versión 0.2, Owen Taylor, redhat.com
  3. ^ "1.54". 9 de junio de 2024 . Consultado el 12 de junio de 2024 .
  4. ^ "Sitio web de Pango" . Consultado el 7 de julio de 2011 .
  5. ^ "Cairo: A Vector Graphics Library: texto" . Consultado el 27 de noviembre de 2015 .
  6. ^ "La conexión Pango: Parte 1". IBM . Archivado desde el original el 27 de junio de 2009 . Consultado el 7 de julio de 2011 .
  7. ^ Pango - Estado - 30 de noviembre de 2017, Owen Taylor, Redhat
  8. ^ GNOMEs en París: Un informe de GUADEC, La parte más impresionante de su presentación fue la discusión sobre Pango (el resultado de la fusión de GScript y GnomeText) , 21/03/2000, por Chuck Toporek - O'Reilly Media
  9. ^ Propuesta Pango, rev 0.1, Raph Levien, 28 de julio de 1999
  10. ^ GScript - Procesamiento de texto complejo y Unicode. El proyecto GScript se ha fusionado con el proyecto GnomeText. Para obtener información sobre el resultado, llamado Pango, consulte: http://www.pango.org Si tiene problemas para acceder a ese sitio, hay un espejo aquí. Por Owen Taylor
  11. ^ Documentación de la API de Gnome-Text, Raph Levien, 10 de julio de 1999. Owen Taylor está trabajando en gscript, que tiene algunas superposiciones con las funciones descritas en esta interfaz. Estamos trabajando para unificar las dos API tanto como sea posible.
  12. ^ Abdin, Ali (1999). "Seguimiento de la entrevista con el desarrollador de GNOME". beast.testbit.eu . Archivado desde el original el 2 de junio de 2013. Pango (que es el nombre en código de una fusión de mi proyecto Gscript y el proyecto GnomeText de Raph Levien) es un conjunto modular de bibliotecas para realizar el diseño y la representación de texto internacional. Es un poco similar a Uniscript de Microsoft o ATSUI de Apple.
  13. ^ "Pango 1.0.0 lanzado". Archivado desde el original el 2 de abril de 2002. Consultado el 20 de febrero de 2013 .
  14. ^ Bibliotecas de interfaz de usuario GTK, versión 2.0
  15. ^ "Resumen de los cambios entre 1.37.0 y 1.37.1" . Consultado el 18 de agosto de 2015 .
  16. ^ "Error 738505: se ha añadido compatibilidad con fontfeatures en PangoAttributes y marcado". Bugzilla de GNOME . Consultado el 18 de agosto de 2015 .
  17. ^ "Las características de las fuentes aparecen en el baúl de Inkscape". Blog de Tavmjong Bah. 23 de junio de 2015. Consultado el 18 de agosto de 2015 .
  18. ^ "Descarga para GNU/Linux y Unix". gtk.org . Archivado desde el original el 18 de agosto de 2016 . Consultado el 30 de noviembre de 2017 .
  19. ^ "Requisitos del sistema de Thunderbird 52.1.0". mozilla.org . Archivado desde el original el 10 de mayo de 2017 . Consultado el 31 de julio de 2017 .

Enlaces externos