Linux-fontstackutvecklare överger stödet för mjuk kantutjämning

Vissa användare som använder tipsmetoden kan ha märkt att när de uppgraderar från Pango version 1.43 till 1.44 kerning vissa teckensnittsfamiljer förvärrats eller fullt bruten.

Linux-fontstackutvecklare överger stödet för mjuk kantutjämning

Problemet orsakas av biblioteket Pango bytt från användning Freetype för information om kerning (avstånd mellan glyfer) av teckensnitt HarfBuzz, och utvecklarna av den senare beslutade stöder inte teckensnittsutjämning med "hintfull"-metoden. Det noteras att på skärmar med hög pixeldensitet (Hi-DPI) uppstår inga problem med att visa teckensnitt när man använder andra tipsmetoder än "hintfull".

Svar HarfBuzz-utvecklare (Behdad Esfahbod) från motsvarande diskussion om problemet:

Jag försökte använda andra tipsstilar än tips, men bara det ger teckensnittsvisning nära ClearType v2 i Windows 7, som enligt min mening har den bästa renderingen av alla befintliga lösningar.

Höger. Därför har vi beslutat att inte stödja det längre. Du kan försöka vänja dig vid den såpiga återgivningen eller försöka hitta något annat. Du använder öppen källkod, förstår du?

Tillägg efter ytterligare diskussion:

I efterföljande kommentarer utvecklaren han förklaradeatt programvara med öppen källkod ger möjlighet att välja och de som inte är nöjda med nuvarande tillstånd kan skapa en gaffel av Pango. Utvecklarna av HarfBuzz kan inte påverka dess underhåll och beslut som fattas i den. Behdad Esfahbod, nuvarande HarfBuzz underhållare som rankas #XNUMX i commits både
projekt, nämnde att han inte har varit associerad med Red Hat på över 10 år och inte är en Pango-underhållare. Sedan 2010 flyttade han till Google och jobbar nu bara med HarfBuzz, som tidigare var hans personliga projekt. HarfBuzz styr inte renderingsprocessen och Pango kan åsidosätta begärda antydningslägen på sin sida.

Ännu en HarfBuzz-utvecklare betonade, att problemet ligger på Pangos sida, eftersom HarfBuzz inte är ett teckensnittsrenderingssystem och inte stöder antydningar av dess arkitektur. Om Pagno behöver bibehålla antydningar, är byte till HarfBuzz inte valet att förlita sig på dess support. I kvalitet Skälen till att vägra att implementera antydningar i HarfBuzz är att vissa antydningslägen leder till en förändring av den ursprungliga bredden på glyfen och denna förändring beror på pixelstorleken. Pango utförde tidigare liknande operationer genom FreeType, som stöder antydningar, men bytte sedan till HarfBuzz, som hanterar glyfer utan hänvisning till deras storlek. Därför är det Pangos ansvar att lösa problem som uppstår när du använder Pango, inte HarfBuzzs.

I slutändan Behdad Esfahbod publicerade en stor retrospektiv av utvecklingen av Linux-fontstacken. Efter hans avresa till Google övergavs Pango- och Kairobiblioteken praktiskt taget och föll i stagnation. På HarfBuzz fokuserade arbetet på stöd för adaptiva variabla teckensnitt, medan Red Hat fokuserade på GTK och Glib. Med tiden överfördes utvecklingen inom området för föränderliga teckensnitt till FreeType, fontconfig och Cairo, men förblev oavslutade i Pango på grund av brist på utvecklare. Åtkomst till de nya API:erna i Pango gavs genom FontMap-abstraktionen och stöddes endast för FreeType-baserade backends. Backends för Windows och macOS har inte underhållits i mer än 10 år.

Efter expansionen av mobila enheter och webbläsare slutade Microsoft att stödja subpixel-font-rendering och GDI-stil-rendering i Windows 8. macOS har alltid stött rendering, som i den här diskussionen kallas "suddig". Sedan 2018 har flera HarfBuzz-utvecklare försökt ta med HarfBuzz-funktioner som lagts till under åren till Pango. Parallellt med utvecklingen av GTK4 gjordes en övergång till OpenGL-baserad rendering, vilket innebär linjär textskalning, vilket förvärrade motsättningen mellan pixelrendering och skalbar layout.

LibreOffice, Chrome och Firefox gick över till att använda HarfBuzz som en enhetlig formningsmotor, till priset av att stödet för bitmappsteckensnitt och Type1-formatet upphörde. För bitmappsteckensnitt ombads de som behövde dem att konvertera dem till en OpenType-behållare. En begäran skickades till Adobe om att implementera Type1 för HarfBuzz, men de svarade att det inte var någon mening med detta, eftersom de själva skulle sluta stödja Type1 i år.

För att komma ikapp med avancerad teknik togs ett liknande beslut att byta till HarfBuzz för Pango-biblioteket. Priset var upphörandet av stödet för vissa gamla tekniker från 20 år sedan. Det indikeras att, givet begränsade resurser, utvecklare inte har tillräckligt med händer för att göra allt och de som är intresserade av att bevara gamla tekniker kan försöka hitta någon som är redo att underhålla den funktionalitet de saknar. Som en jämförelse ges GNOME3, efter uppkomsten av vilken de missnöjda kunde fortsätta utvecklingen av föråldrade GNOME2-teknologier inom ramen för Mate- och Cinnamon-projekten. Detsamma gäller för Pango, men det finns inga spelare än.

Källa: opennet.ru

Lägg en kommentar