Thursday, August 22, 2013

Project: Creating standard and reusable Open type tables for Indian script fonts

Background information:

     As most of you know Lohit [1] is one of the widely used and default Open source fonts for most of the Indian languages. It gives perfect rendering irrespective of OTLS (though now it is harfbuzz-ng earlier there were different open type layout shapers icu, pango, qt).

    Earlier due to incompatibility of different open type layout shapers we did number of bug fixes in Lohit fonts which created some redundant gsub tables, even i will say some logically wrong gsub table to get perfect rendering on all OTLS. Also in some of the script fonts like Kannada we have some unnecessary glyphs.

    During this time we got Open Type 1.6 specification (Dev2) and also long awaited Harfbuzz NG [2] project in now working and included in most of the leading project. (Gnome, Libreoffice etc.)

What is goal?

1. Cleaning Lohit Open type tables.

        Basically going to rewrite open type tables for all script fonts present in Lohit as per OT 1.6 specification by following best practices (compact OT tables by using minimum glyphs as much as possible).

 2. Reusable Open type tables.

    Discussed this idea in last year language summit in Pune with Aravinda.

    So basically we have very limited number of fonts for Indian script and i think one of the reason behind that is complexity of creating fonts for Indian language. It requires script, designing/calligraphy and engineering knowledge (OT technology, hinting) and bit other technicalities.

    Providing easy to use, reusable open type stuff will definitely remove some complexities from this. In long term it will help to make font developers life easy.

3. Extension to Open type specification.

    Again this started in Lang summit 2013 with Santhosh. We created initial draft in sumeet ( for this and i think santhosh has moved bit more forward in this.

    Basic motivation behind this was existing open type specification is not providing sufficient information for Indian script and font developer need to create guess work while writing Open type tables. So we want to have one specific standard for Indic scripts.

        So basically we can add and update this standard while rewriting open type tables of Lohit.

Present status of project

    This project is presently available at, Presently Sneha [3] is actively working on it. if anyone interested feel free to join.