From: Tomas Frydrych (tomas@frydrych.uklinux.net)
Date: Sat May 10 2003 - 15:04:06 EDT
Hi Martin,
> This is very impressive :-) In the process of discovering all
> those styles, did you find out how MS Word describes the paragraph
> left margin and first line indent for list elements? The values you
> get for regular left margin and where the list element appears
> relative to the paragraph were not available in wv as of last week.
> Instead I implement the AbiWord defaults for lists of given nesting
> depth. It would of course be better to have the actual values from the
> document.
The low-level list processing code found in _beginPara() needs to be
moved inside wv's wvAssembleSimplePap(); this would automatically
mean that the the list overrides would be included in the PAP
structure that is then passed into _beginPara() and we would just
process the indents etc. as we do with a regular paragraph. For
that, the PAP struct will need some extra slots so that the start
number etc. can be stored there as well. This should actually not be
too hard to do, but it will require Dom's blessing.
> Also, do you have some means of decyphering which sections are
> actually headers/footers/footnotes/endnotes?
Footnotes/endnotes: from reading the MS docs, these are not stored in
a section, but rather there are two tables one recording position of
the reference in the main text and the other contains pointers into
the datastreem where the corresponding footnote text is. So we will
have to compile a database of footnotes from the first table, and
when we get to the appropriate document position for a footnote, we
will insert it -- we use the same mechanism for bookmarks, you can
have a look at _insertBookmarkIfAppropriate() to see what I mean. I
would be quite happy to implement this, since I have done the
bookmark code.
Headers/footers: again, there are a couple of tables that keep info
about the location of the headers in the document; the headers are
not sections, but are stored in a continuous table. But I cannot say
I can tell from the docs how you determine which section a given
header belongs to.
Tomas
This archive was generated by hypermail 2.1.4 : Sat May 10 2003 - 15:18:40 EDT