Wednesday, 9 December 2009

Affordable Pocket ebook Reader for Sanskrit/Hindi/English

A search for an affordable pocket ebook reader for Sanskrit/Hindi/English (and perhaps other Indian languages like Telugu)
In the past few weeks (more like couple of months), I have been exploring some devices which could act as pocket ebook readers that can handle Indian languages as well as English. I finally bought an ipod Touch and am quite happy with it. Thought others may be interested in my explorations and so am sharing the same. This is a long post and will perhaps be boringly detailed to most readers. But I thought it is better to record most of my observations as that may be of help to some wanna-be user of Sanskrit/Hindi/other-Indian-language pocket ebook reader devices.

Broadly the options were a regular ebook reader or a smart phone. BTW I prefer pocket size so that I can read as I walk and also carry it in my pocket. So around 4" diagonal seems to be ideal. Larger than that could be somewhat unwieldy to walk-and-read for a long time, and certainly to carry in a pocket.

Regular Ebook Reader
This is a fascinating option especially with e-ink supposedly being very easy on the eye and very low on battery consumption. Abroad, ebook readers seem to be the rage, at least among book readers. However I did not consider this option seriously for the following reasons:

a) We don't seem to have any ebook device manufacturer selling and supporting ebook reader devices in India. While one can buy easily using ebay India's global ebay purchase facility, support during warranty as well as out-of-warranty would be a major problem. It seemed too risky to take this option. I heard that Kindle may be available in India shortly but am not sure what that 'shortly' really means.

b) I was not sure about the extent of protection/lock-ins these ebook reader devices may be having. Could any pdf be read?? Could any ebook in the device's supported format be read?? Would there be something like DRM blocking some ebooks/pdfs?? These issues could be known/resolved by browsing ebook reader forums. But still as I could not easily lay my hands on an ebook reader this was an area of concern. BTW I live in a kind-of village in India.

c) Ideally I wanted a pocket-computer-cum-ebook-reader device. I should be able to load apps on it like a dictionary app, a Notes app etc. Ability to key in notes as I read an ebook was an important feature. Further I should be able to, if required, write my own apps for the device. This point went against most ebook readers as they, from their specs, seemed to be like dedicated devices and I was expecting some general purpose computer device functionality.

d) Ability to render Indian languages like Sanskrit and Hindi. This did not seem like a major issue as some forums reported good readability of PDF documents in Indian languages on ebook reader devices.

Due to a, b and c reasons I decided against an ebook reader device. Though I must say that some pocket ebook reader devices from Sony and others were very appealing.

Smart Phone

A touch smart phone type of device could do a decent job as an ebook reader cum pocket computer cum phone!!! Wonderful convergence possibility!!

Did not want to spend more than 15K (Rupees). With that sort of budget the high end touch-based smart phones were ruled out but there were still some interesting possibilities like Nokia 5800 Music Express (a 3.2 inch touch screen phone), a 2.8/3.0" Windows Mobile phone or an ipod Touch (3.5 in) (without phone capability).

The first issue that I had to check was whether Sanskrit fonts were getting displayed properly. I started by checking out display of Sanskrit text files.

Nokia 5800/Symbian

To get a better feel of Symbian 5th Edition, I downloaded Symbian 5th Edition SDK. It has a great S60 5th Ed. device emulator which gave me a pretty good feel of a device like Nokia 5800 Express.

[Note: The pics in this blog post are slightly scaled. I was able to show the pics very close to original resolution but could not avoid the automatic minor scaling that blogger does. Click on the pic (image) to see it in the proper size where the characters appear crisply as shown on my computer. Back on browser takes you back to this blog post. Alternatively you can right click on the image to open it in a new tab/window.
This point applies to all the pics in this post.]




The pic on the above left shows how a Sanskrit text file is rendered on the S60 emul (device emulator). The above right pic shows how the page is meant to be rendered by the author of the page, using Sanskrit 2003 font, I guess. The web Url for the related webpage is: http://sanskritdocuments.org/mirrors/rigveda/sanskrit03/RV0301.html).

The differences in rendering (that I can catch) are:
a) The vertical bars (first shown between mee and le in agnimeele) are shown as very short in S60. Don't exactly know what these vertical bars mean. Maybe they indicate emphasis while chanting? This is a minor issue.
b) In S60, the underscore is very close to (and sometimes gets intertwined with) the letter above it. E.g. the underscore below Pu of Purohitam. Once again this seems to be a minor issue.
c) In S60, the colon-like Sanskrit letter (aha) is displayed as an empty block (After 1.001.3 in the word vishwataha). This could be a significant issue.

Exploring the issue further required understanding the font(s) used by S60. It seems to be using s60snr and related fonts. For more info on it (and on how to change the font) see: http://thesymbianblog.com/2009/01/27/how-to-change-fonts-on-the-5800/

I then setup Nokia's s60snr font (Series 60 Sans Regular) on Windows XP. The pic on the left below shows how Notepad on XP shows the same Sanskrit doc using s60snr font. The problems it has are almost identical to S60 emulator's rendering (the block is smaller but that could be due to a variation font like bold being used by the emul).

So one can conclude that text file rendering on S60 (5th Ed.) is done using standard Nokia S60 fonts (a collection of 5 to 10 fonts for normal, bold and some small variations I guess).




BTW the pic on the right above shows how Notepad on XP displays the text file well using Sanskrit 2003 font.

Do we have a possibility of switching fonts in the S60 text viewer (/editor)?? From the little browsing I did, including abovementioned link, it seems that you can trick S60 into using another font by replacing the standard s60xxx fonts with custom fonts with same s60xxx names. This is a hack and not a font switching feature!! You may need original s60xxx fonts for some other functions on the phone and so land up in trouble. So, there does not seem to be an acceptable way of getting the S60 Notes (text) viewer/editor to use a custom font.

By the way there does not seem to be a way to zoom text display like you can zoom html display. Text file zoom may be achieved by setting font preference selection to large instead of normal, but that is just one zoom setting and will apply to the whole S60 UI.



Okay, how about html display on the S60 (5th Ed.)??

As http://sanskritdocuments.org/mirrors/rigveda/sanskrit03/RV0301.html is too large for the S60 emul to handle (it gives an out of memory error, and shows a blank page), I copied the snippet of it on the c: drive of the device emul.

The pic on left shows how the snippet displays on the S60. Same problems as for the text file!!!


The pic on the left shows how Firefox on XP displays the same snippet correctly.

Also viewed another sanskrit html file on the web which is smaller in size and so displays on the S60 emul. (The emul can be used to browse the web. So I got a pretty good idea of how the web is rendered on S60 - Cool stuff!!!).


These pics (related url is: http://www.sacred-texts.com/hin/rvsan/rv01001.htm) show the Firefox-on-XP rendering (left pic) and the S60 emul rendering (pic below left). There is almost no difference.



The font used by the web page is different from sanskritdocuments.org and seems to be simpler (no underscore, no short vertical bar on top of letters, simpler combination of half-letters etc.). It is rendered well by S60 and can be easily and completely understood by the reader.


However the same page has the shlokas in Accented English (dots and bars above and below English letters to indicate different pronunciation - don't know whether it is right to call them accents but I am sure the reader will understand what I mean).

These two pics show how the accented English is rendered by Firefox on XP (left) and the S60 (below left). Unfortunately the S60 trips up :-(. You just can't win them all :-).

Wonder what the S60 browser does for fonts on html pages?? Use the same small set of s60xxx fonts?? Anyway, even if one can hack into the S60 browser fonts it may not be an appropriate solution for regular usage.




So it seems that html rendering of custom fonts on S60 (using its default browser, at least) seems to have some problems.

PDF/Office docs/ebook rendering on Symbian

Perhaps PDF (or Quick Office docs) are the best solution. I could not check it out using the emulator but I am quite sure the actual phone would handle it properly. For PDF reader on Nokia 5800, one would have to purchase Adobe Reader LE ($15). Quick Office (for Word type of docs and spreadsheets and Powerpoint type of slideshow app) is only $5.

But for PDF documents (which are typically sized for the desktop) reflow would have to be done to make it readable without any horizontal scrolling on the smart phone. Horizontal scrolling to read each and every line makes reading a very cumbersome and painful exercise. Reflow means reducing size of each line of text to fit the display size (width) and this would result in lines being broken up and rearranged.

Saw that Adobe Reader 9 on Win XP has reflow!! View->Zoom->Reflow. Just size the XP window to smaller size (mobile size, say) and do reflow. It does a great job for English docs. But reflow simply does nothing for most Sanskrit documents (horizontal scrolling requirement remains). And reflow of English-cum-Sanskrit documents gets badly messed up with Sanksrit characters displayed out of position w.r.t. English characters.
If Adobe Reader 9 on Windows XP does not handle reflow of Sanskrit, I don't think we can expect anything better from Adobe Reader LE on Symbian or Windows Mobile.

Perhaps Office docs may render well on Nokia. Symbian seems to have full support for 'Complex script' (Indic Languages require complex script support). The following pdf document (17 pages): http://developer.symbian.com/main/downloads/papers/monotype/Symbian_WP_HR_v1.0.pdf?strScope=website&searchString=Hindi&x=0&y=0 explains a lot of in-depth technical issues about font rendering. Has a section on 'complex script' rendering on page 15. Seems to imply that Symbian supports 'complex script'.

So Office doc viewers on Symbian may do a good job of reflowing and displaying Sanskrit as well as Sanskrit-cum-English documents due to Symbian's complex script capability.

ebook readers on ipod Touch (and Windows XP) seem to be limited to a single font. So single font Sanskrit/Hindi ebooks may get rendered well by a Symbian ebook reader.

I could not check this out (doc and ebook viewers) as this needs a real Symbian phone (and not the emulator). [You cannot load regular binaries meant for the phone onto the emulator. You need binaries targeted at the emul(/host OS?) or source code which can be compiled by Symbian compiler.] It will be nice if some reader who has a Symbian touch phone (or even non-touch phone) is able to check it out and share the info as a comment in this blog post.

Limited Apps on Symbian

The killer blow for Symbian, in my analysis, was the fact that the applications available for Symbian are very limited as compared to the iphone/ipod Touch. On looking for a PDF reader on ipod Touch, saw that some free apps were available and an excellent paid app, GoodReader was available for an unbelievably cheap 99 cents!! A WordWeb dictionary app was available free for ipod Touch whereas the cheapest dictionary app on Symbian (Merriam Webster Collegiate Reference), as listed in the Ovi store, was quite expensive (20 Euros) [Pocket Ref. was 10 Euros].

Once I looked at the abundance of Apps available on ipod Touch (100,000 claims Apple) and at extremely affordable prices I felt that Symbian may not be a good choice for my needs. From a pocket computer point of view, ipod Touch seems to be way ahead of Symbian phones.

However I must note that development of my own apps for Symbian is possible on my AMD based XP machine using VC++ but ipod Touch apps development needs an Intel box (or a Mac) running Snow Leopard!! And, of course, Nokia 5800 is a phone and ipod Touch is NOT. But then phone functionality in this device is not crucial for me.

Windows Mobile

'Complex scripts' languages support is NOT present in Windows Mobile.

http://msdn.microsoft.com/en-us/library/aa912899.aspx dated 8/28/2008 gives "Complex Scripts Overview" for Windows Mobile and Windows Embedded CE. At the top of the page it shows a green tick mark against both Windows Mobile and Embedded CE (perhaps indicating that the page applies to both Windows Mobile and Embedded CE) but towards the bottom of the page a clear statement is made that currently complex scripts languages support is NOT there for Windows Mobile.


This pic shows the difference between a Sanskrit document being displayed on Windows Mobile 6.5 Emulator MS Word and on Windows XP MS Word. [Click on the image to view it in proper resolution]. As Windows Mobile does not have complex script support the half-characters are not combined and so result in an almost unreadable rendering of Sanskrit. But as XP has complex script support (set up on my PC) the rendering is perfect.

Note that I had to copy Sanskrit 2003 font onto the WM 6.5 emulator device before it could render the 'uncombined' display. Earlier it was just showing blocks. So even with the font being available on the device, due to lack of complex script support, Word fails to render it properly.

But a Sanskrit Isavasya Upanishad from IIT Kanpur Vedanta site rendered properly (no complex script problem) with Word (setting font to DVTT-Yogesh)!!! So, don't know whether there is an issue with Sanskrit 2003 font and display on mobile OS. MobiPocket also rendered it well. See the pic on the left.
Pdf rendered by Adobe Reader (Pocket PC 2.0 if I remember correctly) on WM 6.5 displays the Sanskrit 2003 Font document perfectly as shown in pic on left (same document which did not display properly on Word on WM 6.5). I guess, on all platforms, the pdf engine may be using its own font engine (or whatever) and does not use the underlying OS font engine.

I expect that ebook viewers on WM 6.5 may trip up like Word for rendering Sanskrit (or Hindi or Telugu).

Further, the Windows Mobile smart phones within my budget were 2.8" and did not really compare with the Nokia 5800 or the ipod Touch in terms of them being known as good, solid devices.

So I felt that Windows Mobile devices may not be the way to go. I must also say that I was disappointed that Microsoft had not provided complex script support on WM 6.5 though they have the technology superbly implemented in XP. Maybe that component takes up too much of memory/disk space and so had to be left out.

Another point I must say is that developing my own apps would have been simplest for me with the WM platform as I could carry over most of my VC++ (or even .Net) programming know-how. However, nowadays I am more of a user than a programmer :-). I would much rather download (and even pay a small price for) an app rather than develop my own.

ipod Touch

As reported in the http://gabbarsing.blogspot.com/2009/12/viewing-sanskrithindi-documents-on-ipod.html blog entry, iPhone OS 3.1 (used by both ipod Touch and iPhone) does not support complex script and so Indian languages like Sanskrit are not displayed properly using the default font engine.

However, PDF reader apps display them very well. Reflow for Sanskrit and Sanskrit-cum-English documents is still a problem. The involved work-around is to manually resize the PDF documents using Word (on XP), which does a great reflow job, and then create ipod Touch/iPhone sized PDF docs. Details are explained in the above linked blog entry.

While ipod Touch is not a phone and does not have a SD card slot (and therefore its memory cannot be expanded), it does a great job as an ebook-reader-cum-pocket-computer. The vast array of free and affordable apps, and the large user forum community was, to me, a very strong point. A lot of 'Indian' apps are available: Tamil Panchangam, Shirdi Sai Baba Amar Chitra Katha comic (or rather picture-story), Thirukkural, Bhagavad Gita etc.

As phone was not so critical a requirement for me (in this device), I decided to go in for ipod Touch as my pocket-comp-cum-ebook-reader device.

BTW as a somewhat contrary view from the perspective of ebook reader vs. ipod Touch, here's a beginning 2009 informal comparison of ipod touch and an e-ink ebook reader: http://blog.johan-mares.be/ict/gadget/ipod/using-the-ipod-touch-or-iphone-to-read-ebooks/

2 comments:

  1. बहुत ही बढ़िया लेख गब्बर जी। मैं बहुत समय से ऐसा लो-बजट टचस्क्रीन स्मार्टफोन खोज रहा हूँ जो कि हिन्दी समर्थन युक्त हो।

    नोकिया का 5233 सबसे सस्ता स्मार्टफोन (वर्तमान कीमत 7300 रुपये) है, ये नोकिया 5800 का नॉन-3G वर्जन है। Symbian emulator भले ही हिन्दी सही से दिखाता हो लेकिन मैंने नोकिया 5800 में देखा कि देवनागरी सही से render नहीं होती (बिखरी हुयी दिखती है)। हाँ इस पर शायद ऑपेरा मिनी आदि 3rd Party टूल्स में सही दिखती हो, कह नहीं सकता।

    ReplyDelete
  2. एक बात आपके ध्यान में लाना चाहूँगा, विण्डोज मोबाइल में हिन्दी समर्थन के लिये मुफ्त टूल उपलब्ध है - आयरॉन्स हिन्दी सपोर्ट। इसके द्वारा मोबाइल में एक वर्चुअल ऑनस्क्रीन हिन्दी कीबोर्ड जुड़ जाता है जिससे फोन में कहीं भी हिन्दी न केवल पढ़ सकते हैं बल्कि लिख भी सकते हैं। स्क्रीनशॉट तथा सैटअप की विधि इस लेख में देखें -
    ऐसे चलाएँ विण्डोज़ मोबाइल पर हिन्दी


    आयरॉन्स हिन्दी सपोर्ट का होमपेज

    विकिपीडिया पर यह लेख देखें - मोबाइल फोन में हिन्दी समर्थन

    वर्तमान में केवल विण्डोज मोबाइल ही एकमात्र ऐसा स्मार्टफोन OS (मोबाइल प्लेटफॉर्म) है जिस पर उपरोक्त टूल की सहायता से पूर्ण हिन्दी समर्थन मौजूद है। हाँ इसके डिवाइस महंगे हैं, यदि बजट-सीमा की बात न हो तो हिन्दी सम्बंधी कामों के लिये ये सबसे अच्छा विकल्प है।

    ReplyDelete