svx: fix unexpected large bezier shapes when created via the UNO API

Desktop / LibreOffice - Miklos Vajna [collabora.com] - 22 February 2021 17:00 UTC

Regression from commit bc886f523872d4f9845c188c7d525d72a1a60946 (tdf#98584 Correct import draw:transform values skewY and matrix, 2020-01-02), then problem is was that now we handle the transform matrix for path objects the way ODF likes it, but this breaks UNO API clients with existing code.

In an attempt to make everyone happy, revert the default to ignore scaling from the transform matrix, but add a way so that xmloff/ can opt in to handle it. This way the ODF import result doesn't regression and UNO API compatibility is not broken, either.

Change-Id: I8d525e56954bf68c42d3629eca87fe9b513de507 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111340

3870198c0d0b svx: fix unexpected large bezier shapes when created via the UNO API
include/svx/svdopath.hxx | 7 ++++
svx/qa/unit/svdraw.cxx | 82 ++++++++++++++++++++++++++++++++++++++
svx/source/svdraw/svdopath.cxx | 7 +++-
svx/source/unodraw/unoshape.cxx | 15 +++++++
xmloff/source/draw/shapeimport.cxx | 6 +++
5 files changed, 116 insertions(+), 1 deletion(-)

Upstream: cgit.freedesktop.org


  • Share