<html>
<head>
<base href="https://bugs.documentfoundation.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - FILEOPEN: ppt: old kind arc from MS Office 97 is broken"
href="https://bugs.documentfoundation.org/show_bug.cgi?id=122899#c6">Comment # 6</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - FILEOPEN: ppt: old kind arc from MS Office 97 is broken"
href="https://bugs.documentfoundation.org/show_bug.cgi?id=122899">bug 122899</a>
from <span class="vcard"><a class="email" href="mailto:rb.henschel@t-online.de" title="Regina Henschel <rb.henschel@t-online.de>"> <span class="fn">Regina Henschel</span></a>
</span></b>
<pre>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.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>