» Blog Archive » Gecko Layout engine and Mozilla Firefox
Download-firefox is not associated with Mozilla in any way

Gecko Layout engine and Mozilla Firefox

Gecko is the open source layout engine for Firefox. Actually, Gecko is also the name of a lizard. Firefox 2 used Gecko 1.8.1 while Firefox 3 uses Gecko 1.9. A major part of Firefox 3’s success can be attributed to the use of Gecko 1.9. Gecko 1.9 is better than Gecko 1.8.1 because it offers a better graphic API, low maintenance graphic code, etc. Gecko was developed by the Mozilla Project. The original name for this engine was Raptor and then NG Layout, both were changed due to trademark problems.

So what is a layout engine? And what does it do? The function of a layout engine is to read HTML, JavaScript etc., web content and render it on user’s screen. And that is exactly what Gecko does. The layout engines used by other leading companies are Trident by Microsoft for IE, WebKit by Apple for Safari etc. Gecko is so powerful that it is not only used to display content but also for, toolbars, painting scrollbars etc. Gecko is used in various browsers such as Firefox, Camino etc.

Therefore, Gecko is anywhere and everywhere! The purpose behind building Gecko was to have a layout engine, which served as a foundation upon which future products could be built. Gecko 1.9 includes the Cairo Graphics layer.

Even other organizations can use Gecko. If you want to include web browsing functionality in your software without actually developing the browser software, you can the browser components from among those that Gecko offers and package them with your finished products. So Gecko reduces the software developer’s work. So how is Gecko used by Mozilla?

The Gecko layout engine and other browser components are assembled by mozilla.org into the Mozilla browser application. Therefore, we see that a layout engine is different from a browser. To keep up with the evolving standards of layout engines and the web, Mozilla beckons you to come and join the NGLayout team where you can help in improving Gecko by fixing bugs and testing it. The code for Gecko is written in C++. It is a cross platform engine running on Windows 95, 98, 2000, XP and Mac and Linux OS. Gecko also enables you to parse various types of documents.

Gecko 1.9 uses the Cairo graphics layer as a graphic backend. Cairo is a 2D vector graphics library and is a free and open source software written in C. In addition, Cairo has hardware acceleration API that was not used by Gecko 1.8 but is being used in Gecko 1.9. It is this hardware accelerated display which renders rich text. Firefox 2 used Cairo only for rendering SVG and canvas. But with Firefox 3 all graphics rendering is done using Cairo. Cairo is extremely popular because it is a cross platform library.

Although, Cairo has been written in C, with Cairo bindings for other programming languages, Cairo can be used in other contexts. In addition, the rendering of characters in Firefox 3 has greatly improved since; Mozilla Firefox 3 supports font kerning and ligatures. Kerning, basically refers to the equivalent adjustment of space between characters. However, all fonts do not support kerning, hence Firefox can kern only those fonts that support it.

Kerning works right for bigger font sizes and you can actually make out the space but with small fonts, kerning seems to be a problem. Ligatures are nothing but two combined glyphs, which have some common component. Ligatures are not used much in English, but are important in languages like Hindi and Arabic. Thus, improved font kerning and ligatures along with Cairo have contributed a great deal to the success and popularity of Firefox 3.

Technorati Tags: , , , , , , , , ,

Tags: Spread Firefox

Use these links to bookmark this page on your favorite social bookmarking site:These icons link to social bookmarking sites where readers can share and discover new web pages.
  • blinkbits
  • BlinkList
  • blogmarks
  • co.mments
  • connotea
  • del.icio.us
  • De.lirio.us
  • digg
  • Fark
  • feedmelinks
  • Furl
  • LinkaGoGo
  • Ma.gnolia
  • NewsVine
  • Netvouz
  • RawSugar
  • Reddit
  • scuttle
  • Shadows
  • Simpy
  • Smarking
  • Spurl
  • TailRank
  • Wists
  • YahooMyWeb

Comments are closed.