Re: gtk MathView. (fwd)


Subject: Re: gtk MathView. (fwd)
From: Martin Sevior (msevior@mccubbin.ph.unimelb.edu.au)
Date: Mon Sep 18 2000 - 06:51:40 CDT


I thought you guys might be interested in another (much more positive)
series of emails I've add regarding Maths support.

Cheers

Martin

---------- Forwarded message ----------
Date: Sun, 17 Sep 2000 00:20:56 +1000 (EST)
From: Martin Sevior <msevior@mccubbin.ph.unimelb.edu.au>
To: Luca Padovani <lpadovan@CS.UniBO.IT>
Subject: Re: gtk MathView.

Dear Luca,
          My appologies for not responding sooner. I've just integrated a
major new feature into Abiword and I wanted to make sure that went as
smoothly as is reasonable.

I am extremely interested in your project though because I would love to
get equations into Abiword.

On Wed, 13 Sep 2000, Luca Padovani wrote:

>
> Dear Martin,
>
> > Do you have plans to develop a equation editor to input MathML? I would be
> > happy to collaborate if you do and I would like to see if we can
> > incorporate your code into AbiWord too.
>
> yes, we are thinking about such extensions. At present, the cleanest way
> to do this seems to be working with a DOM interface, in other words: the
> main application provides a DOM interface to the overall document, several
> modules provides rendering capabilities to different markup elements. The
> widget would be responsible to render <math> subtrees of the
> document. This is the theory. In practice, it is still not clear to me how
> to integrate so closely different widgets, in particular if the
> integration is meant to be "strict". I mean, if one is happy enough having
> equatins as rectangular boxes within the document (the same happens with
> HTML and WebEq, a Java applet to render MathML) then the integration is
> rather easy. This corresponds using the widget as a black box. If
> linebreaking of long expressions is taken into account, things are getting
> more complicated.
> We were thinking about using gdome by Raph Levien as the DOM
> implementation, but the project seems to be frozen since April 2000.
>
> Anyway, we would be very happy to start collaborating with other people
> for the development of the widget and related applications. Let me know
> about your plans,

Ok well let me reitterate my original goal is to get Equations into
Abiword. As I see it Abiword has to decide between two ways of doing this.

1. Do our own thing and incorporate an equation display/editing feature
within the Abiword framework. Or

2. Embed a bonobo component to this for us.

1. is a lot more work for our already strained resources but it retains
our cross platform capability. 2. requires that our gnome front end
becomes a Gnome container but we can leverage other peoples code much more
effectively at the expense of cross platform capability. ie Only the Gnome
front end will be able to display equations.

My opinion is that we should go with 2. We don't have the resources at
present to effectively fork a major piece of code like this. So given this
I'd be very interested in helping to to make your widget a bonobo
embedable component that could be used to display MathML in any gnome
application rather easily (which of course includes AbiWord).

We (Abiword) are also interested in the StarMath code which will be
released shortly. I've heard that it will also display MathML. I guess we
would like to evaluate both your code and the StarMath code. The StarMath
code comes with some sort of equation input already. It might be that that
some good cross fertilation could occur between the StarMath and your
code.

As for the timescale, well I have just committed to implementing another
major feature for Abiword which might take a month. I hope after that I
will be able to focus on equations.

Given the nature of the Abiword file-format and structure I think it would
be rather easy to use your widget to display MathML within Abiword. Since
your widget returns the size of the equation and you can break and stretch
equations we could invent a mathRun class (like our textRun, ImageRun,
fieldRun etc.) and as a wrapper around your code to display MathML within
a document. We can leverage the existing Abi layout engine to make
everything come out right. My understanding of bonobo is that all this
information can be rapidly exchanged between Abi and and bonobo-ized
GtkMathML.

I think it goes like this. The Abi formatter sees a MathML run.

1. It notifies GtkMathML.
2. Feeds MathML to GtkMathML (which saves it)
3. Asks GtkMathML for the size of the equation in height and width.
4. If needed it asks to break the equation at a certain width.
5. Abi gives GtkMathML a cordinate in a Gtk drawing area or gnome Canvas
to start drawing and a width to draw to.
6. GtkMathML does this until the width is reached.
7. If there is still more of the equation, Abi starts a new line and we
goto 4.

<finished>
  

It will be much harder to come up with a GUI to input MathML. I have some
ideas but they are rather nebulous. I have only made a cursory
investigation of DOM technology and it sounds great. However there seems
to be a distinct lack of progress in real world usage of DOM.

Do you mind if I post this email to the Abiword and gnome-office mailing
lists? I think they would be interested in this discussion.

Best wishes

Martin Sevior



This archive was generated by hypermail 2b25 : Mon Sep 18 2000 - 06:51:46 CDT