On Fri, 16 Sep 2005 10:39 pm, Chris Bowditch wrote: > Manuel Mall wrote: > > Still waiting for some feedback here from others. I am reluctant to > > change the interface to the renderers without other committers > > agreeing because such a change affects every renderer out there. On > > the other hand it feels a bit like a kludge to treat/represent > > <fo:character ... character="x" /> as <fo:inline ...>x</fo:inline>. > > There are also some subtleties in the handling of some properties > > which are interpreted differently when specified on a fo:character > > to a fo:inline. > > Well I tend to agree. Treating fo:character as fo:inline just because > the Renderer interface doesn't have a renderCharacter method is a > nasty bodge. As you say if there are subtleties to be observed when > rendering an fo:character then go ahead and change the Renderer > interface.
Thanks Chris - that's not quite it. There is a renderCharacter interface. The problem is that when giving an inline area to the renderer the renderer needs to know with respect to vertical (bpd) positioning two items: 1.) Where does the area begin within the line because inlines can be taller or narrower than the line height (bpd) of the line area they belong into. The renderers need to know this so they can draw any borders correctly above and below the area. 2.) Where is the baseline within the inline area for the correct bpd positioning of the glyphs. Currently the interface (= area tree) has only one attribute related to this vertical positioning and I need two as explained above. > > Chris regards Manuel