Wanted: Font renderer implementor

How is willing and able to implement a proper font renderer that converts a Shape of a character into a rendered bitmap?
Thnings like anti-aliasing would be nice, but just plain rendering would also be nice.

Please contact me.

Ewout

In progress

This topic is in progress.

Specification

http://developer.apple.com/fonts/TTRefMan/
(a link to be added to references)

Classpath implementation

IMHO, the best basis for a robust implementation is this one :

http://www.brawer.ch/software/fonts/

Unfortunately, this code has never been committed to classpath and the project is now discontinued despite an attempt to open a Savannah project for it.

No renderer

This brawer sw is good for reading fonts, but does not contain a renderer to bitmaps.

Ewout

Let's keep abstraction as much as possible...

... before rendering bitmaps :

http://www.brawer.ch/software/fonts/doc/gnu/java/awt/font/GNUGlyphVector.html#getOutline(float,%20float)

which is a pure java wrapper for :

http://java.sun.com/j2se/1.4.2/docs/api/java/awt/font/GlyphVector.html#getOutline(float,%20float)

Returns a java.awt.Shape.

IMHO, this is where Bitmap conversion should occur, shouldn't it ?

Correct

The outline Shape should be converted into a bitmap.

I suggest to convert it to a single color bitmap with 1 byte per pixel. This byte is an alpha value for the actual color produced.

E.g. a value of 0 means the background color (transparent, a value of 0xFF means 100% foreground color and all values in between means a percentage of transparency. This should make anti aliasing quite easy.

Ewout

pre rendered font ?

Do you think about pre rendering (or better lazy rendering) of fonts ?

Or why do you think about an intermediate format (the 1-byte-per-pixel-bitmap) ?

Fabien

on demand

I'm thinking of on demand rendering of glyph's. The 1-byte format is probably smart, because is allows acertain glyph to be rendered to screen fast is all colors.

Any better idea is welcome. I'm not a font, nor graphics expert.