Re: [Fwd: My future of HTML position paper]

> Is there something wrong with sticking with the OBJECT element for
> including data such as vector graphics and MathML?  (SMIL sounds like a
> more involved issue. I don't know much about it at the momment.)

In fact the OBJECT element suffers a number of limitations which make
it a poor choice for vector graphics and MathML.  The Math WG has
looked at this question in detail, and tried every work around we can
think of.  In the end, we have concluded the OBJECT element just isn't
viable in a great number of situations. There are three main reasons:

1) limited baseline alignment

   Object elements only allow TOP, MIDDLE and BOTTOM baseline
   alignment.  In practice, this means that inline vector graphics
   or math are obliged to put the baseline in the middle of the
   screen area they control.  In other words, you have to pad your
   graphic or equation above or below in order to get it to line
   up with the surrounding text, which screws up the interline 
   spacing and generally looks bad.


2) limited communication with the ambient environment

   For math equations and many graphics (especially ones that
   incorporate text) the renderer handling the contents of the
   OBJECT element needs much better access to the browser
   layout engine.  It needs to be able to query the browser for
   the ambient fontsize and style, the background colors, whether
   it is inline or blocklevel, etc.  Then, based on these parameters
   it needs to negotiate for screen space.  In particular, if you
   have to specify height and width in advance (as is required for
   the OBJECT element) it is not possible to match textsizes in
   graphics or equations to the surrounding content, at least not
   without introducing gaps or clipping.

3) poor support for printing

   This is really a special case of 2, but so important it bears
   separate mention.  I am not very well informed about the current
   state of affairs, but my impression is that printing support
   for embedded OBJECTs is purey ad hoc -- plug-ins can print, 
   applets can't.  Certainly there is no communication of page layout
   parameters from the browser page layout engine to the embedded
   renderer -- information like the page dimensions, and where you
   are in the page, which at least for math, are vital for
   linebreaking.



Robert Miner

--------------------------------------------------------------------
Robert Miner                               http://www.geom.umn.edu
The Geometry Center                        phone: (612) 626-8313
HTML-Math WG co-chair                      fax:   (612) 625-8083
--------------------------------------------------------------------

Received on Wednesday, 13 May 1998 10:57:29 UTC