diff --git a/svx/source/unodraw/unoshap2.cxx b/svx/source/unodraw/unoshap2.cxx index bf964ff653db..201b245b0017 100644 --- a/svx/source/unodraw/unoshap2.cxx +++ b/svx/source/unodraw/unoshap2.cxx @@ -1123,9 +1123,25 @@ bool SvxShapePolyPolygon::getPropertyValueImpl( const OUString& rName, const Sfx if(mpObj.is()) mpObj->TRGetBaseGeometry(aNewHomogenMatrix, aNewPolyPolygon); - drawing::PointSequenceSequence aRetval(aNewPolyPolygon.count()); - B2DPolyPolygonToSvxPointSequenceSequence(aNewPolyPolygon, aRetval); - rValue <<= aRetval; + switch (getShapeKind()) { + case OBJ_PATHLINE: + case OBJ_PATHFILL: + { + drawing::PolyPolygonBezierCoords aRetval; + basegfx::unotools::b2DPolyPolygonToPolyPolygonBezier( + aNewPolyPolygon, aRetval); + rValue <<= aRetval; + break; + } + default: + { + drawing::PointSequenceSequence aRetval(aNewPolyPolygon.count()); + B2DPolyPolygonToSvxPointSequenceSequence( + aNewPolyPolygon, aRetval); + rValue <<= aRetval; + break; + } + } break; } case OWN_ATTR_VALUE_POLYGON: