On Wed, 19 Oct 2005 04:34 pm, Jeremias Maerki wrote:
> If we can reliably find out which characters are spaces and we know
> their widths, then we can fall back to the behaviour as in FOP 0.20.5
> just advancing the cursor when a space is found. That puts some
> additional logic into the renderer and we could avoid creating and
> area per word. Putting more detail in the area tree however, would
> improve the consistency of the output between renderers since they
> have to deal with less logic (or implied functionality as Tw in PDF).
>
> I'd prefer to make the area tree more detailed and the renderers
> simpler.
>
> Maybe we could use a trick to minimize the memory increase by
> creating an additional "word" area as a child to the text area so we
> don't have to replicate the traits for each word. WDYT?
>
What about traits like text decoration, don't they span spaces? Would 
simply advancing the IPD cause unwanted gaps in an underline for 
example?
I am not that much in favour of another area type. Isn't that another 
complication for the renderers. I am wondering any way why we have a 
space area, a character area and a text area. They seem all the same to 
me. By just having a text area layout can decide what to generate, e.g. 
one text area per glyph, or a text area per word or a text area per 
line whatever suits best and it doesn't matter to the renderers. If 
everything has a fixed space just generate a single text area. If we 
have some variable word spacing generate a text area per word with the 
appropriate space-before/after values. For more complicated scripts 
with ligatures, etc. we may have to generate per glyph text areas.

> On 19.10.2005 10:18:20 Luca Furini wrote:
> > Yesterday I added a couple of comments concerning this bug; at the
> > moment I haven't received the bugzilla email yet, so here is a
> > copy-and-paste of the last message.
> >
> > I added a comment after the copied text, so this message would not
> > be completely useless even if you received the original one! :-)
> >
> >   ------- Additional Comment #8 From Luca Furini  2005-10-18 12:53
> >
> > Quotation from the pdf reference, version 1.6, section 5.2.2 Word
> > spacing:
> >
> >    "Word spacing is applied to every occurrence of the single-byte
> > character code 32 in a string when using a simple font or a
> > composite font that defines code 32 as a single-byte code. It does
> > not apply to occurrences of the byte value 32 in multiple-byte
> > codes."
> >
> > So, it seems that at least we have found where the problem lies ...
> > anyone has an idea how to solve it too? :-)
> >
> >   -------
> >
> > At the moment, my only idea about how fixing this is go back to the
> > creation of several text areas, one for each word or space: so the
> > multibyte space character could be converted to the single-byte
> > space, or we could leave it as it is and "forcing" the adjustment
> > modifying the ipd of the area created for a space.
> >
> > A disadvantage of this solution would be the big increase in the
> > area tree size.
> >
> > An advantage could be the possibility to get rid of errors due to
> > the adjustment rounding: at the moment the letter space can lead to
> > an "error" of the order of the number of letter spaces, as the
> > adjustment is rounded up to the nearest millipoint and is applied
> > to all the letter spaces in a line. Having distinct text areas for
> > each word, we could correct this error setting appropriately each
> > area ipd.
> >
> > Regards
> >      Luca
>
> Jeremias Maerki

Cheers

Manuel

Reply via email to