Hi Khaled,

On Friday, February 24, 2017 19:40 GMT, Khaled Hosny <khaledho...@eglug.org> 
wrote: 
 
> On Fri, Feb 24, 2017 at 05:41:25PM +0000, Tamas Zolnai wrote:
> > Hi Khaled,
> > 
> > I see you're working on text rendering, so I thought that my findings
> > might be usefull for you. I had a look at chart test failures on Mac
> > and found that it is because of text size differences. (I checked your
> > latest change [1], but the differences are still there.)
> > Both text width and height is different (comparing Windows and Mac).
> > Interestingly when I changed the font to a bundled, monospace font
> > (e.g. Liberation Mono, DejaVu Sans Mono), width differences
> > disappeared and only height differences remained. So there are at
> > least two kind of issues here. One which is about the proportional
> > fonts character width and one related to the text height.
> > I added a minimal test case to the source [2] with which it's easier
> > to debug the second issue (for the first issue the test case's font
> > need to be changed to a bundled, proportional font).
> 
> We need to first who Chart is calculating the text width and depth,
> namely which function(s) it uses from vcl, to be able to debug it and
> see where are these differences coming from.

I debugged it earlier. It was a bit hard to follow the trace from chart code to 
text rendering, but as I see the height differences coming somwhere from these 
methods (I debugged only the height difference):
ImpEditEngine::CalcTextHeight()
SvxFont::GetPhysTxtSize()
OutputDevice::GetTextHeight()

However I think it would be better to debug this problem with a unit test in 
vcl module which tests directly the text rendering. I would suggest that if you 
are working making text rendering consitent. The vcldemo does something 
similar, but it's just doing the rendering and does not compare the text size 
to expected values. That code can be reused to write some unit tests about text 
rendering.
Actually I'm a bit suprised that there is no a unit test for this (I did not 
find any in vcl module). I heard some expectations from other LO developers 
that text rendering is consistent now on different systems but I can't see how 
it can be expected if there isn't any test about it. It's hard to imagine that 
somebody can test it manually on all the three main platforms.

Best Regards,
Tamás

 
 


_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to