Text
Having captured our wideband (16 kHz) audio, we now want to add some text. Text source coding has traditionally been realized using ASCII (American Standard for Communications Information Interchange). These are 7-bit words that are used to form a 7-bit alphabet used to describe letters of the alphabet, numbers, full stops, and other text necessities. ASCII works okay for Latin script (English, etc.) but runs out of address bandwidth if a more complex language has to be described (for example, Japanese, with thousands of characters). Japanese, Chinese, Arabic, or Hebrew SMS can be realized using USC2 (Universal Multiple Octet Coded Character Set), a 16-bit/2-octet character string, or UCS4, a 32-bit/4-octet character string. ASCII, UCS2, and UCS4 all allow perfectly acceptable representation of text on a grayscale LCD. However, we have said that we are beginning to see an increasing use of high-definition high color depth displays. These displays provide us with the capability to do text rendering by using pixel manipulation. Pixel elements are made up of pels (picture elements) representing the singular red, green, or blue value of an RGB pixel. Remember that the number of bits used per pixel determines the amount of control you have over the color balance�"24 bits gives you high color depth. The size of the image is the product of the number of pixels times the number of bits per pixel.
Text rendering is effectively subpixel manipulation, borrowing subpixels from adjacent whole pixels. The borrowed subpixels are always adjacent to their complementary color pixels, which our eyes mix to form white. We can therefore use subpixel manipulation to clean up jagged edges. Subpixel manipulation also only works on the horizontal resolution of LCDs. Even so, this means we can do the following: Emboldening (stretching text horizontally) Ke rning (shifting text horizontally, that is, micro-justification) Italicizing (slanting type by skewing it horizontally) Subpixel manipulation only works for LCDs, not CRTs. CRTs are not addressable at subpixel level, but then, as yet, no digital cellular handsets have CRT displays. This means we can produce book-quality text on our screens, if we so desire. We must be aware, however, that not all LCDs have the same ordering of RGB subpixels. The rendering engine needs to know whether subpixels are arranged in forward or reverse order. Also, text rendering only works for landscape not portrait aspect displays, which means it is not really suitable for e-books, which would be an obvious application. Text rendering is now, however, included in a number of software products (Windows 2000 being one example) and will likely begin to appear further down the portable product food chain at a later date. 169
95 times read
|