In my latest experiments with J2ME I have found that the font classes ( javax.microedition.lcdui.Font ) are quite short to obtain a fairly nice design.

It is based on three types (FACE_MONOSPACE, FACE_PROPORTIONAL, FACE_SYSTEM), three styles (STYLE_BOLD, STYLE_ITALIC, STYLE_PLAIN, STYLE_UNDERLINED) and three sizes (SIZE_LARGE, SIZE_MEDIUM,SIZE_SMALL) . This today is surpassed even by any Web editor.

We should not despair or think that  ….. “Java is shabby and ugly” ….. since this depends more on the capabilities of the developer/designer than on the language itself that we are dealing with. That’s why the guys at 59Pixels have released a 59Fonts library, capable of saving us a lot of headaches.

First of all we have to prepare the TTF fonts and pass them to FNT, for this we will use the font4mobile program that the people at GSMDev have developed. Once in possession of the font, we create a Font59 object with the FNT file as a constructor parameter, and we draw the text by passing it the Graphics of the Canvas object, the relevant positions, the text and the positioning:

Font59 ttf = new Font59("/ttf/arialBold26Black.fnt");                   //Load the font

_
ttf.PrintString(g, posX, posY, “TEXT TO DISPLAY”, Font59.LEFT, Font59.TOP);           //We paint on the screen_

 I leave you in the attached file everything you need to work with this library.