Intriguing problem... is it possible that we could achieve this through more sophisticated use of freetype?
http://www.freetype.org/opentype/index.html P. On Wed, Apr 23, 2008 at 12:26 AM, Swapnil Hajare <[EMAIL PROTECTED]> wrote: > > > Hello All, > I have been trying unsuccessfully to login to trac.osgeo.org/mapserver > using my OSGeo userid (dreamil). After trying for last 2 days, I am posting > here the bug report which I wanted to post there. Please go through this and > let me know your opinion on the same: > > ******************************************************************************************** > Title: Indic Support (using OpenType fonts) in Mapserver > > The current version of Mapserver can render labels on map using LABEL > directive in a map file.For labels, you can use truetype fonts which is > achieved using freetype.Due to this map labels can be displayed in various > non-English languages such as europian and some Asian scripts. > > However, for rendering some CTL (Complex Text Layout) scripts, truetype > fonts are not sufficient.Indic Scripts, for example, require much more than > mere juxtaposition of glyphs from a font.Rendering Indic scripts such as > Devanagari, Gujarati, Tamil, Telugu, Bengali etc. is much more complex than > others.To handle this, "intelligent" fonts were designed which contain > embedded rules to help rendering.These were called OpenType fonts (see > http://www.microsoft.com/typography/otfntdev/indicot/default.htm). Though > initiated by M$, OpenType fonts are are now Industry standard for rendering > these complex scripts on Computer using script and language rules. All major > Linux desktops such as GNOME and KDE support OpenType font rendering.To > handle OpenType fonts, various rendering engines have been developed and > have become part of rendering libraries such as > Pango(http://www.pango.org/)/ICU(http://www.icu-project.org/), Qt etc.It > should be noted that, in absence of such a rendering engine, OpenType fonts > act as Truetype fonts i.e. the embedded rendering rules are not used while > doing the glyph formation. > > There are numerous OpenType fonts available free/proprietory for Indic > scripts. We have ourselves developed gargi, the first GPLed OpenType font > for Devanagari(http://savannah.nongnu.org/projects/gargi). > > Current Mapserver supports truetype fonts using freetype routines, but there > is no support for OpenType fonts. As a result, a text label in any of the > indic scripts is rendered using justaposition of glyphs from the font > provided, without using rendering rules.The result is incorrect rendering. > To show you the difference, here is the snapshot of a map with labels in > Devanagari script (which is a indic script), rendered in correct > fashion(http://indictrans.in/~swapnil/mapserver/required_result.png) and > here is the snapshot as rendered by > Mapserver(http://indictrans.in/~swapnil/mapserver/mapserv_no_render_support_for_ttf.png) > You may not be able to make out much if you are not familiar with the > script, but for someone who knows the script, its an incorrect or broken > representation of the text. > > To solve this, we should add support for OpenType font rendering in > Mapserver.This can be done by embedding some indic rendering routines from > Pango or ICU into the label rendering engine of mapserver. I don't know the > details of how labels are rendered in Mapserver, so somebody knowledgable > should guide. I am prepared to take up the task on behalf of my team > (www.indictrans.in) if I get some guidance about internal working of > Mapserver.As far as performance is concerned, this will hit the speed badly, > but then this can be encoded as a configure options (--with-pango similar to > Firefox implementation > http://developer.spikesource.com/wiki/index.php/Firefox_Indic_Build) so that > it becomes optional. > > You may have look at the temporary solution which we are using for the time > being to show indic text on maps using Mapserver here: > http://www.indictrans.in/old/doublebyte/English/doublebyte_l10n_25march_4PM.html > We have numerous localized GIS demo on our website using this approach. > > ******************************************************************************************** > > regards, > -- > Swapnil Hajare > dreamil.indictrans.in > _______________________________________________ > mapserver-users mailing list > [email protected] > http://lists.osgeo.org/mailman/listinfo/mapserver-users > > _______________________________________________ mapserver-users mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/mapserver-users
