Buvo pristatytas Kosmonaut naršyklės variklis, parašytas Rust

Projekto ribose Kosmonautas Kuriamas naršyklės variklis, parašytas tik „Rust“ kalba ir naudojant kai kuriuos „Servo“ projekto patobulinimus. Kodas išplatino licencijuota pagal MPL 2.0 („Mozilla Public License“). Atvaizdavimui naudojami OpenGL įrišimai gl-rs rūdžių kalba. Biblioteka įgyvendina langų valdymą ir OpenGL konteksto kūrimą Gliutinas. Komponentai naudojami HTML ir CSS analizei html5 kada nors и cssparsersukurta pagal projektą Servo.
Kodas darbui su DOM yra pagrįstas projekto raida Kuchiki, kuriant biblioteką, skirtą manipuliuoti HTML/XML. Tarp naudotų projektų minimas ir eksperimentinis interneto variklis Robinson, kuris apie 5 metus buvo pusiau apleistoje būsenoje.

Dabartiniame kūrimo etape teikiamas bazinis HTML palaikymas ir ribotas CSS galimybių rinkinys, kurių dar nepakanka norint peržiūrėti daugumą šiuolaikinių puslapių. Nepaisant to paprasti puslapiai ant div su CSS yra nupiešti teisingai. Projektas iš pradžių buvo įkurtas prieš metus, siekiant išmokyti kurti naršyklės variklius, tačiau dabar bandoma rasti naujų pritaikymo nišų.

Kas jau įgyvendinta:

  • HTML analizavimas, CSS poaibis, pakopinis CSS, DOM.
  • Puslapio atvaizdavimas, bloko turinio išdėstymas.
  • Iš dalies parama abstrakčiai dėžučių modeliai ir savybės"kryptis"
  • Generuojamos derinimo iškeltos naudojant rodomų elementų medį.
  • Palaiko savavališkus didelio DPI ekranų mastelio koeficientus.
  • Teksto atvaizdavimas naudojant FreeType biblioteką.
  • Remti Srauto išdėstymas, kontekstui jautrus tiesioginis formatavimas ir atvaizdavimas.

Šaltinis: opennet.ru

Добавить комментарий