https://bugs.documentfoundation.org/show_bug.cgi?id=166701

--- Comment #5 from Alex <[email protected]> ---
I didn't have the time to test that particular problem so far on that system,
sorry - I'll do as soon as possible.

However, in the meantime, something else caught my attention:

As far as I understand, LO will (initially) record all drawings as "mode b)" -
i.e. a set of straight lines. Until that was fixed by combining those lines to
one (and subsequently simplifying the polyline) LO would always create and
store something close to version b) as is.

I think the relevant part of code is here, the concatenation is done on a "last
point equals next point" basis:
https://git.libreoffice.org/core/+/a98b1523141a8c3bed01ee9781f6b4844960bd73/slideshow/source/engine/slideshowimpl.cxx#1550
 

In the example I uploaded, if you zoom in to the drawing of the "b", none of
the individual parts have any overlapping points. Now that's logical to some
extend because what I see in the file is already the _result_ of the process,
or the leftovers of the concatenation process.
What is interesting, though, is, that _lines_ do cross each other, as if the
position of the pointer was "jumping up and down" during drawing.

I'll attach a picture with some enhancement - there I colored individual
portions of the top of the 1st stroke of the b with end-points enlarged, I was
drawing top to bottom. Note that the height of the "excerpt" I colored is
roughly 6mm in height, which I believe calculates to something around 20 pixels
for anything between 72 and 96 dpi (I don't know which relation LO is using).

My guess is: if, for any reason, some jitter is seen on the positions of the
pointing device, and the points being stored are off by maybe just one pixel,
combining would fail on some of those strokes? I'm not sure how that would
align with the other observations I made.

I'll try to reproduce the problem once again. If what I made up here is true,
I'm not sure how LO would address this; maybe adding some "DPI-based" threshold
for Point1 = Point2 could be possible? Or I need to get a better mouse :-)

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to