Webbläsarmotorn Kosmonaut, skriven i Rust, introducerades

I projektets gränser kosmonaut En webbläsarmotor utvecklas, skriven helt i Rust-språket och med hjälp av några av utvecklingarna från Servo-projektet. levererad av under MPL 2.0 (Mozilla Public License). OpenGL-bindningar används för rendering gl-rs i Rust. Fönsterhantering och skapande av OpenGL-kontext implementeras av biblioteket. GlutinKomponenter används för att analysera HTML och CSS html5ever и cssparser, utvecklat av projektet Servo.
Koden för att arbeta med DOM är baserad på projektets utveckling. Kuchiki, som utvecklar ett bibliotek för att manipulera HTML/XML. Bland de projekt som använts nämns även en experimentell webbmotor. Robinson, som har varit i ett halvt övergivet tillstånd i cirka 5 år.

I nuvarande utvecklingsstadium erbjuder den grundläggande HTML-stöd och en begränsad uppsättning CSS-funktioner, vilka ännu inte är tillräckliga för att visa de flesta moderna sidor. Dock, enkla sidor på divs med CSS renderas korrekt. Projektet grundades ursprungligen för ett år sedan för att lära ut processen att utveckla webbläsarmotorer, men försöker nu hitta nya nischer för användning.

Vad som redan har implementerats:

  • HTML-parsning, CSS-delmängd, kaskadbaserad CSS, DOM-modell.
  • Sidrendering, blocklayout av innehåll.
  • Delvis stöd för abstrakt lådmodeller och egenskaper"riktning".
  • Generera felsökningsdumpar med ett träd av visade element.
  • Stöd för anpassade skalningsfaktorer för skärmar med hög DPI.
  • Rendera text med FreeType-biblioteket.
  • Support Flödeslayout, kontextkänslig inline-formatering och rendering.

Källa: opennet.ru

Lägg en kommentar