[prev in list] [next in list] [prev in thread] [next in thread] 

List:       libreoffice-bugs
Subject:    [Libreoffice-bugs] [Bug 61444] No kerning between letters of different colors
From:       bugzilla-daemon () freedesktop ! org (bugzilla-daemon at freedesktop ! org)
Date:       2013-02-28 21:05:06
Message-ID: bug-61444-18670-mKlWzxOqev () http ! bugs ! freedesktop ! org/
[Download RAW message or body]

https://bugs.freedesktop.org/show_bug.cgi?id=61444

--- Comment #12 from Caol?n McNamara <caolanm at redhat.com> ---
I imagine that this has always been like that, and it'll be because the text is
split into different "portions" because the properties are different and each
run sent to vcl and down eventually into icu (or whatever) as two different
blocks.

Raw debugging starting point would be a breakpoint in IcuLayoutEngine::layout
vcl/generic/glyphs/gcach_layout.cxx and dig back up the backtrace to find the
code that's splitting the text up according to different properties and see if
there's any way to avoid the split due to just color, while still being able to
render each resulting half with a different color persumably as a different
writer "portion"

It *might* just work that if the runs differ only by color that adding in the
preceeding/following chars as extra context to the ones we want the positions
of might work, depending on what the intermediate layers do.

e.g. theory might be
REDBLUE
right now, ask for positions of "RED" in one portion and then for "BLUE" in
another
future, one portion asks for "REDB" and only use positioning results for RED,
then other portion asks for "DBLUE" and only use the results for BLUE.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/libreoffice-bugs/attachments/20130228/40b0f54f/attachment.html>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic