Os desenvolvedores de pilas de fontes de Linux abandonan o soporte para o antialiasing suave

Algúns usuarios que usan o método de suxestión completa poden ter notado que ao actualizar da versión de Pango 1.43 á 1.44 kerning algunhas familias de fontes empeoraron ou totalmente rompeu.

Os desenvolvedores de pilas de fontes de Linux abandonan o soporte para o antialiasing suave

O problema é causado pola biblioteca pango cambiou de uso Tipo libre para obter información sobre o kerning (distancia entre glifos) das fontes HarfBuzz, e os desenvolvedores deste último decidiron non apoiar suavizado de fontes usando o método "hintfull". Nótese que en pantallas con alta densidade de píxeles (Hi-DPI), non se producen problemas coa visualización de fontes cando se usan métodos de indicación distintos de "hintfull".

Responder Desenvolvedor de HarfBuzz (Behdad Esfahbod) da discusión correspondente sobre o problema:

Tentei usar estilos de insinuación que non sexan hintfull, pero só ofrece unha visualización de fontes próxima a ClearType v2 en Windows 7, que, na miña opinión, ten a mellor representación de todas as solucións existentes.

Certo. Por iso, decidimos non apoialo máis. Podes tentar acostumar a renderizado con xabón ou tentar atopar outra cousa. Usas código aberto, entendes?

Engadido tras unha discusión posterior:

En comentarios posteriores o desenvolvedor explicouque o software de código aberto ofrece a oportunidade de escoller e aqueles que non estean satisfeitos co estado actual poden crear unha bifurcación de Pango. Os desenvolvedores de HarfBuzz non poden influír no seu mantemento e nas decisións tomadas nel. Behdad Esfahbod, actual mantedor de HarfBuzz que ocupa o primeiro posto en commits os dous
proxectos, mencionou que non estivo asociado con Red Hat durante máis de 10 anos e que non é mantedor de Pango. Desde 2010 trasladouse a Google e agora só traballa con HarfBuzz, que antes era o seu proxecto persoal. HarfBuzz non controla proceso de renderizado e Pango pode anular os modos de indicación solicitados ao seu lado.

Outro programador de HarfBuzz subliñado, que o problema está do lado de Pango, xa que HarfBuzz non é un sistema de representación de fontes e non admite insinuacións pola súa arquitectura. Se Pagno precisa manter as indicacións, entón cambiar a HarfBuzz non é a opción para confiar no seu apoio. EN calidade Os motivos para rexeitar a implementación de suxestións en HarfBuzz son que algúns modos de indicación levan a un cambio no ancho orixinal do glifo e este cambio depende do tamaño do píxel. Pango realizou previamente operacións similares a través de FreeType, que admite insinuacións, pero despois cambiou a HarfBuzz, que manexa glifos sen facer referencia ao seu tamaño. Polo tanto, resolver os problemas atopados ao usar Pango é responsabilidade de Pango, non de HarfBuzz.

En definitiva, Behdad Esfahbod publicado unha gran retrospectiva do desenvolvemento da pila de fontes de Linux. Tras a súa marcha a Google, as bibliotecas de Pango e Cairo quedaron practicamente abandonadas e caeron no estancamento. En HarfBuzz, o traballo centrouse na compatibilidade con fontes variables adaptativas, mentres que Red Hat centrouse en GTK e Glib. Co paso do tempo, os desenvolvementos no campo das fontes mutables foron transferidos a FreeType, fontconfig e Cairo, pero quedaron sen rematar en Pango debido á falta de desenvolvedores. O acceso ás novas API en Pango proporcionouse a través da abstracción FontMap e só se admitiu para backends baseados en FreeType. Os backends para Windows e macOS non se mantiveron durante máis de 10 anos.

Tras a expansión de dispositivos móbiles e navegadores, Microsoft deixou de admitir a representación de fontes subpíxeles e a representación ao estilo GDI en Windows 8. macOS sempre admitiu a renderización, que nesta discusión chámase "borrosa". Desde 2018, varios desenvolvedores de HarfBuzz tentaron achegar a Pango as funcións de HarfBuzz engadidas ao longo dos anos. Paralelamente ao desenvolvemento de GTK4, fíxose unha transición á representación baseada en OpenGL, o que implica un escalado de texto lineal, o que exacerbaba a oposición entre a representación en píxeles e a disposición escalable.

LibreOffice, Chrome e Firefox pasaron a usar HarfBuzz como un motor de configuración unificado, a costa de deixar de admitir fontes de mapa de bits e o formato Type1. Para as fontes de mapa de bits, pedíuselles aos que as necesitaban que as convertesen nun contedor OpenType. Enviouse a Adobe unha solicitude para implementar Type1 para HarfBuzz, pero responderon que non tiña sentido, xa que eles mesmos deixarían de admitir Type1 este ano.

Para poñerse ao día coas tecnoloxías avanzadas, tomouse unha decisión similar para cambiar a HarfBuzz para a biblioteca Pango. O prezo foi o cese do soporte para algunhas tecnoloxías antigas de hai 20 anos. Indícase que, dados os escasos recursos, os desenvolvedores non teñen mans suficientes para facer todo e os interesados ​​en preservar tecnoloxías antigas poden tentar atopar alguén que estea preparado para manter a funcionalidade que lles falta. A modo de comparación, dáse GNOME3, tras a aparición do cal os descontentos puideron continuar co desenvolvemento de tecnoloxías obsoletas de GNOME2 no marco dos proxectos Mate e Cinnamon. O mesmo aplícase a Pango, pero aínda non hai tomadores.

Fonte: opennet.ru

Engadir un comentario