HarfBuzz (transliteración libre del calco persa حرفباز harf-bāz , literalmente "tipo abierto") [2] [3] es una biblioteca de software para dar soporte al modelado de texto , que es el proceso de convertir texto Unicode en índices y posiciones de glifos . La versión más reciente, New HarfBuzz (2012–), está orientada a varias tecnologías de fuentes, mientras que la primera versión, Old HarfBuzz (2006–2012), estaba orientada únicamente a fuentes OpenType . [2] [4]
Historia

HarfBuzz evolucionó a partir de un código que originalmente era parte del proyecto FreeType . Luego se desarrolló por separado en Qt y Pango . Luego se fusionó nuevamente en un repositorio común con una licencia MIT . Este fue Old HarfBuzz, que ya no se desarrolla, ya que el camino a seguir es New HarfBuzz. [2] En 2013, Behdad Esfahbod ganó el premio O'Reilly Open Source Award por su trabajo en HarfBuzz. [5]
Los hitos importantes para New HarfBuzz incluyen:
- 0.9.2, compatibilidad con grafito SIL
- 1.0 incluye conceptos de Universal Shaping Engine de Microsoft
- 1.4 con soporte para variación de fuentes OpenType
- 1.6 con soporte para Unicode 10
- 1.8 con soporte para Unicode 11
- 2.0 con soporte para modelado de tipografía avanzada de Apple (AAT). [6] [7] [8] [9] [10]
- 2.1 con soporte para fuentes de color y funciones principales de modelado AAT mejoradas.
- 2.4 Compatibilidad con Unicode 12
- 2.6.7 Compatibilidad con Unicode 13
- API de subconjunto de fuentes estable 3.0, compatibilidad con Unicode 14 [11]
- 4.0 más de 65536 glifos y métricas compatibles [12]
- 4.3 Aceleración importante [13]
- 5.0 Compatibilidad con fuentes BE [14]
- 5.2 Compatibilidad con Unicode 15 [15]
- La versión 7.0 introdujo nuevas API, una nueva utilidad de línea de comandos, compatibilidad con negrita de fuentes y un uso reducido de la memoria [16]
- 8.0 introdujo soporte para usar un modelador basado en WebAssembly integrado en fuentes [17]
Usuarios
La mayoría de las aplicaciones no utilizan HarfBuzz directamente, sino que utilizan una biblioteca de herramientas de interfaz de usuario que se integra con él.
HarfBuzz es utilizado por las bibliotecas de UI de:
- Gnome ( GTK+ )
- KDE ( Qt )
- Sistema operativo Chrome ( Skia )
- PlayStation 4 [18]
- Android [2]
- Java [19]
- Aleteo [20]
- Godot (desde la versión 4.0) [21] [22]
- Unity (desde la versión 6.0) [23]
HarfBuzz es utilizado directamente por las aplicaciones:
- Cromo
- Firefox
- LibreOffice (desde la versión 4.1 solo en Linux, [24] desde la 5.3 en todas las plataformas [25] )
- Scribus (desde la versión 1.5.3) [26]
- Paisaje de tinta
- Adobe Photoshop (desde la versión 23.0 [27] )
- Adobe InDesign (cuando se utiliza World Ready Composer desde InDesign 19.0 [28] )
- Figura [29] [30]
- XeTeX (desde la versión 0.9999) [31] [32]
- LuaTeX (desde la versión 1.11.1) [33] [34]
Véase también
- Graphite (tecnología de fuentes inteligentes) , un sistema de representación y tecnología de fuentes inteligentes programable y compatible con Unicode desarrollado por SIL International
- Uniscribe y DirectWrite , API que proporcionan una funcionalidad similar en la plataforma Microsoft Windows .
- Core Text , API proporciona una funcionalidad similar en macOS (HarfBuzz también se puede utilizar en su lugar en macOS )
Referencias
- ^ "Versión 10.1.0 · harfbuzz/harfbuzz" . Consultado el 5 de noviembre de 2024 .
- ^ abcd Byfield, Bruce (19 de diciembre de 2017). "HarfBuzz lleva la tipografía profesional al escritorio". LWN.net .
- ^ "HarfBuzz". freedesktop.org .
- ^ "Sitio web oficial de HarfBuzz" . Consultado el 10 de noviembre de 2012 .
- ^ "Premios O'Reilly Open Source: OSCON 2013". 26 de julio de 2013. Archivado desde el original el 18 de junio de 2015. Consultado el 25 de septiembre de 2014 .
- ^ HarfBuzz 1.0 implementa el motor de modelado universal de Microsoft
- ^ HarfBuzz 1.4 trae variaciones de fuentes OpenType GX
- ^ HarfBuzz 1.8 lanzado con soporte para Unicode 11
- ^ HarfBuzz 2.0 lanzado para mejorar la modelación de textos de código abierto
- ^ Artículos de HarfBuz sobre Phoronix
- ^ "Versión 3.0.0 · harfbuzz/harfbuzz". GitHub . Consultado el 26 de mayo de 2023 .
- ^ "HarfBuzz 4.0 lanzado para esta biblioteca de modelado de texto de código abierto".
- ^ "HarfBuzz 4.3 lanzado con grandes mejoras de rendimiento".
- ^ "HarfBuzz 5.0 lanzado con avances en el soporte de la especificación de fuente "Boring Expansion"".
- ^ "HarfBuzz 5.2 lanzado con soporte Unicode 15".
- ^ "Lanzamiento del motor de modelado de texto HarfBuzz 7.0".
- ^ "Lanzamiento de HarfBuzz 8.0: presenta Shaper para WebAssembly dentro de archivos de fuentes".
- ^ "HarfBuzz". doc.dl.playstation.net . Consultado el 26 de mayo de 2019 .
- ^ "JEP 258: HarfBuzz Font-Layout Engine". Propuestas de mejora de OpenJDK . Consultado el 20 de diciembre de 2017 .
- ^ "Flutter Engine Wiki". GitHub . Consultado el 11 de abril de 2018 .
- ^ Engine, Godot. "Informe de progreso de diseños de texto complejos n.° 1". Godot Engine . Consultado el 12 de septiembre de 2024 .
- ^ Motor, Godot. «Godot 4.0 zarpa: todos a bordo hacia nuevos horizontes». Godot Engine . Consultado el 12 de septiembre de 2024 .
- ^ "Anuncio de compatibilidad total con lenguaje RTL". Discusiones sobre Unity . 28 de octubre de 2024 . Consultado el 18 de noviembre de 2024 .
- ^ "LibreOffice 4.1 ReleaseNotes". The Document Foundation. 30 de julio de 2013. Consultado el 6 de octubre de 2019 .
- ^ LibreOffice 5.3 habilita un nuevo motor de diseño de forma predeterminada
- ^ "Lanzamiento de Scribus 1.5.3". 22 de mayo de 2017. Consultado el 6 de junio de 2018 .
- ^ "Motor de texto unificado en Photoshop". 7 de junio de 2022. Consultado el 25 de mayo de 2023 .
- ^ "Resumen de características de InDesign (versión de octubre de 2023)". 30 de octubre de 2023.
- ^ "Depuración de corrupción de datos con Emscripten | Blog de Figma". Figma . 7 de noviembre de 2016 . Consultado el 12 de septiembre de 2024 .
- ^ "Rasmus Andersson en Twitter: "Figma usa FreeType y Harfbuzz para el diseño de fuentes..." 30 de mayo de 2020. Archivado desde el original el 30 de mayo de 2020 . Consultado el 12 de septiembre de 2024 .
- ^ Hosny, Khaled (12 de marzo de 2013). «[XeTeX] XeTeX 0.9999.0 lanzado». TUG . Consultado el 12 de septiembre de 2024 .
- ^ Hosny, Khaled (2013). "¿Qué novedades hay en XeTeX 0.9999?" (PDF) . TUGboat . 34 (2): 121.
- ^ "[Dev-luatex] Anuncio de Luatex 1.11.1 - dev-luatex - Listas de correo de NTG". mailman.ntg.nl . Consultado el 12 de septiembre de 2024 .
- ^ Hosny, Khaled (2019). "Llevar los scripts del mundo a LuaTeX: el experimento HarfBuzz" (PDF) . TUGboat . 40 (1): 38–43.
Enlaces externos
- Sitio web oficial
- Viejo Harfbuzz