https://bugs.freedesktop.org/show_bug.cgi?id=72488
--- Comment #4 from Khaled Hosny <[email protected]> --- The problem is that Writer code assume that the text string with and without the visible space (the dot) are otherwise identical and tries to draw the text string with spaces replaced with the dot, but using the glyph positions of the original string (and the idea here, I think, is that even if there is small difference in the width of the space and the dot, the text does not reflow with non-printing characters shown). This generally works, but it breaks badly with this font because here: بسم الله الرحمن الرحيم is a single glyph (a ligature of the whole sentence), while: بسم·الله·الرحمن·الرحيم is 25 glyphs, and they all are drawn overprinting each other since they are treated as if they were a single glyph. The relevant code is in sw/source/core/txtnode/fntcache.cxx, around line 1457 pKernArray is obtained (note the rInf.GetText(), this is the original text string), then at line 1572 spaces are replaced with bullets, then at line 1798 the text is drawn using the modified text string and the *original* kern array. I’m not sure how to fix this, but I guess we will need to check the original text string *eats* the spaces when rendered and avoid drawing anything for those spaces. -- You are receiving this mail because: You are the assignee for the bug.
_______________________________________________ Libreoffice-bugs mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
