Se presentó el motor de navegador Kosmonaut, escrito en Rust

En el marco del proyecto. Kosmonauta Se está desarrollando un motor de navegador, escrito íntegramente en lenguaje Rust y utilizando algunos de los desarrollos del proyecto Servo. Código distribuido por licenciado bajo MPL 2.0 (Licencia pública de Mozilla). Los enlaces OpenGL se utilizan para renderizar. gl-rs en lenguaje Rust. La biblioteca implementa la gestión de ventanas y la creación de contexto OpenGL. gluten. Los componentes se utilizan para analizar HTML y CSS. html5 siempre и csparserdesarrollado por el proyecto servo.
El código para trabajar con el DOM se basa en los desarrollos del proyecto. kuchiki, que desarrolla una biblioteca para manipular HTML/XML. Entre los proyectos utilizados también se menciona un motor web experimental. Robinson, que se encuentra en estado semiabandonado desde hace unos 5 años.

En la etapa actual de desarrollo, se proporciona soporte HTML básico y un conjunto limitado de capacidades CSS, que aún no son suficientes para ver la mayoría de las páginas modernas. Sin embargo paginas simples en divs con CSS se dibujan correctamente. El proyecto se fundó originalmente hace un año para enseñar el proceso de desarrollo de motores de navegador, pero ahora está tratando de encontrar nuevos nichos de aplicación.

Lo que ya se ha implementado:

  • Análisis HTML, subconjunto CSS, CSS en cascada, DOM.
  • Representación de página, diseño de contenido de bloque.
  • Soporte parcial para resumen. modelos de caja y propiedades "dirección«.
  • Generando volcados de depuración con un árbol de elementos mostrados.
  • Admite factores de escala arbitrarios para pantallas de alto DPI.
  • Representación de texto utilizando la biblioteca FreeType.
  • Apoyar Diseño de flujo, formato y renderizado en línea sensible al contexto.

Fuente: opennet.ru

Añadir un comentario