[Libreoffice-bugs] [Bug 122899] FILEOPEN: ppt: old kind arc from MS Office 97 is broken

bugzilla-daemon at bugs.documentfoundation.org bugzilla-daemon at bugs.documentfoundation.org
Tue Mar 5 00:21:30 UTC 2019


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

--- Comment #6 from Regina Henschel <rb.henschel at t-online.de> ---
The main problem is in the part around
filter\source\msfilter\msdffimp.cxx#4606.

There
XPolygon aXPoly( aPolyBoundRect.Center(), aPolyBoundRect.GetWidth() / 2,
aPolyBoundRect.GetHeight() / 2, static_cast<sal_uInt16>(nStartAngle) / 10,
static_cast<sal_uInt16>(nEndAngle) / 10, true );
is called. It should generate a clockwise Béziercurve from start angle to end
angle. But in case of the test document, a wrong curve with a very short arc is
generated.

With this short arc, later on in #4608, a rectangle aPolyPieRect with small
width is generated. That leads to a far to large fXScale in #4639 and a totally
wrong fXOfs in #4627.
As a result the new bounding rectangle and thus size and position of the shape
results in the values posX=-927.66cm and width=522.83cm, which you see in the
Position&Size dialog in the loaded file.

The solution should be, to do not use these old methods from _xpoly.cxx, but
make a solution, where the essential calculation is done with the methods from
basegfx.

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


More information about the Libreoffice-bugs mailing list