Projects/Edu/mathMLRender

< Projects‎ | Edu
Revision as of 16:43, 2 October 2007 by Tampakrap (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This page will summarize ideas about creating MathML rendering and editing widget for KDE. There are several approaches to create such widget:

Contents

Implement MathML support for WebCore

From #webkit: "making WebKit do some minimal MathML rendering is probably a rather quick project, making a complete MathML renderer is probably not. building an editor on top of WebKit (or any other rendering engine which can display mathml) is probably not a very short project either. fixing up WebKit so that when it's in editing mode it knows how to edit mathML is also not a short project"

Props

  • All WebCore-powered browsers will benefit from this
  • MathML will be naturally integrated into HTML widget

Cons

  • WebCore is too heavy for some applications which just need to show a formula or to show many formulas in different widgets
  • WebCore may be not suitable for applications which want to embed the formula in something else

Separate KFormula code into shared library

Rendering code in KFormula does not heavily depend on KOffice libs and can be separated from it.

Props

  • Sharing code with KFormula
  • Formula editor can also be taken from KFormula

Cons

  • AFAIK KFormula code is not strictly MathML-specific, it just can load from/save to MathML
  • KFormula has its own DOM model

Implement QT backend for GtkMathView

GtkMathView has clear backend/engine/frontend separation, backend for QT and frontend for QT DOM can be easily implemented. Dependency on GTK is optional so it won't be a problem.

Props

  • Very easy to implement
  • More code sharing - more testing, more developers
  • QT-style DOM for MathML can also be easily implemented

Cons

  • Formula editor will be slightly harder to implement
  • "Gtk" in the name, but I think we can live with it ;-)

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal