Hi Gennadiy,

good to hear that things are going well in MathML land. More comments
inline...

On 09.12.2005 16:15:17 Gennadiy Tsarenkov wrote:
> Hello all,
> 
> some time ago my colleague announced that we are working on MathML
> implementation for FOP. Our work is based on the JEuclid library.
> Now we completed code review to comply with ASF code requirements.
> 
> Our results are available from CVS at
> :pserver:[EMAIL PROTECTED]:/cvsroot/jeuclid
> (http://sourceforge.net/projects/jeuclid/).
> 
> Among MathML feature we made several additional features for
> fop-0.20.4. These features are also included into test/first-demo and
> consists of
> - to embed PDF's;
> - to have bold, italic styles for TTF Unicode fonts (namely Arial
> Unicode MS).
> 
> Now we are thinking of integrating these features into fop-trunk.
> 
> Please, have a look whether our results is satisfactory to become part
> of fop or xmlgraphics at ASF. Any of the comments are welcome.

I'll try to find time to have a look in the next few days.

> There  are also several issues, that we would like to ask here to make
> resolve them in general way:
> 
> 1.  How  to configure font to render MathML. Most of the font does not
> contain  enough  mathematical  symbols  to render complex mathematical
> formulas.  At  the  moment we have constant pointing to "Arial Unicode
> MS"  (as mostly completed Unicode font). We were tried to make support
> of another font but stop this activity after finding out that (in this
> font  "Integral" symbol is missing but "Top Half Integral" and "Bottom
> Half  Integral" are present). We need an idea how we could handle such
> situations in a general way.

I guess you have to provide the ability to specify a list of prioritized
fonts (like in the XSL-FO font-family property) as an extension
attribute on the MathML root element. With this list you could check
each font in the list if it provides the character you're looking for.
The font subsystem of FOP supports querying a FOP is a specific glyph is
available in a font. See hasChar(char) in SinglyByteFont and
MultiByteFont in the fonts package of FOP Trunk. I don't know if AWT
provides something similar.

> 2.  When  rendering  MathML  we  used  awt.Font  class,  which  is not
> accessible  on the Unix boxes without X-server installed. The awt.Font
> class  is  used  to get font size for proper position of the upper and
> lower  indexes  and  so on. Are there any chance, that we could re-use
> Fop generated metrics? Where we could start look at that?

In FOP Trunk, the "fonts" package. Everything's there.

However, currently Vincent Hennebert works on integrating the font
subsystem from FOray which will be a little different. It may make sense
not to rush into anything too quickly here. Vincent implied that it
wouldn't take too long until he has something ready if I remember
correctly.

On the other side, relying on AWT's font subsystem for MathML isn't that
bad. People have to set up one of the three work-arounds for headless
systems anyway. Batik needs it, too.

> Taking  into  consideration  these to issues, I guess, that JEuclid is
> still  to  young, however, it is already powerful enough to start look
> at it.

Let's start where we can. You can certainly start with the FOP extension
for the new JEuclid. It doesn't have to be perfect at first. I'll try to
find time to see what is now there. I'm sure we'll figure out how best
to approach all this.

Jeremias Maerki

Reply via email to