موتور مرورگر Kosmonaut با زبان Rust معرفی شد

در محدوده پروژه فضانورد یک موتور مرورگر در حال توسعه است که به طور کامل به زبان Rust نوشته شده و از برخی از پیشرفت‌های پروژه سروو استفاده می‌کند. کد توزیع شده توسط دارای مجوز MPL 2.0 (مجوز عمومی موزیلا). اتصالات OpenGL برای رندر استفاده می شود gl-rs به زبان رست مدیریت پنجره و ایجاد زمینه OpenGL توسط کتابخانه اجرا می شود گلوتین. کامپوننت ها برای تجزیه HTML و CSS استفاده می شوند html5ever и cssparserتوسط پروژه توسعه یافته است فرمان یار.
کد کار با DOM بر اساس پیشرفت های پروژه است کوچیکی، که یک کتابخانه برای دستکاری HTML/XML ایجاد می کند. در میان پروژه های مورد استفاده به موتور آزمایشی وب نیز اشاره شده است رابینسون، که حدود 5 سال است در حالت نیمه متروکه به سر می برد.

در مرحله فعلی توسعه، پشتیبانی اولیه HTML و مجموعه محدودی از قابلیت های CSS ارائه شده است که هنوز برای مشاهده اکثر صفحات مدرن کافی نیست. با این اوصاف صفحات ساده در div ها با CSS به درستی ترسیم می شوند. این پروژه در ابتدا یک سال پیش برای آموزش فرآیند توسعه موتورهای مرورگر تأسیس شد، اما اکنون در تلاش است تا جایگاه های کاربردی جدیدی پیدا کند.

آنچه قبلاً اجرا شده است:

  • تجزیه HTML، زیر مجموعه CSS، CSS آبشاری، DOM.
  • رندر صفحه، طرح بندی محتوا را مسدود کنید.
  • پشتیبانی جزئی از چکیده مدل های جعبه و خواص"جهت".
  • ایجاد تخلیه اشکال زدایی با درختی از عناصر نمایش داده شده.
  • از فاکتورهای مقیاس بندی دلخواه برای صفحه نمایش های با DPI بالا پشتیبانی می کند.
  • رندر کردن متن با استفاده از کتابخانه FreeType.
  • پشتیبانی طرح بندی جریان، قالب بندی و رندر درون خطی حساس به زمینه.

منبع: opennet.ru

اضافه کردن نظر