20#include <com/sun/star/drawing/PointSequence.hpp>
21#include <com/sun/star/text/GraphicCrop.hpp>
25#include <ooxml/resourceids.hxx>
65 Points_t::const_iterator aIt =
begin();
66 Points_t::const_iterator aItEnd =
end();
70 awt::Point aPoint(aIt->X + rPoint.X, aIt->Y + rPoint.Y);
71 pResult->addPoint(aPoint);
82 Points_t::const_iterator aIt =
begin();
83 Points_t::const_iterator aItEnd =
end();
88 pResult->addPoint(aPoint);
103 awt::Point aMovePoint(aMove.operator
long(), 0);
104 pResult =
move(aMovePoint);
108 pResult = pResult->scale(aScaleX, aScaleY);
112 pResult = pResult->scale(aScaleSrcX, aScaleSrcY);
135 pResult =
scale(aScaleX, aScaleY);
141 const text::GraphicCrop& rGraphicCrop)
const
145 Fraction aScaleX(rGraphicSize.Width - rGraphicCrop.Left - rGraphicCrop.Right,
147 Fraction aScaleY(rGraphicSize.Height - rGraphicCrop.Top - rGraphicCrop.Bottom,
148 rGraphicSize.Height);
149 pResult =
scale(aScaleX, aScaleY);
151 awt::Point aMove(rGraphicCrop.Left, rGraphicCrop.Top);
152 pResult = pResult->move(aMove);
176 sal_Int32 nIntValue = val.
getInt();
180 case NS_ooxml::LN_CT_Point2D_x:
183 case NS_ooxml::LN_CT_Point2D_y:
187 SAL_WARN(
"writerfilter",
"WrapPolygonHandler::lcl_attribute: unhandled token: " <<
Name);
194 switch (_sprm.
getId())
196 case NS_ooxml::LN_CT_WrapPath_lineTo:
197 case NS_ooxml::LN_CT_WrapPath_start:
201 awt::Point aPoint(
mnX,
mnY);
206 SAL_WARN(
"writerfilter",
"WrapPolygonHandler::lcl_sprm: unhandled token: " << _sprm.
getId());
constexpr auto convertTwipToMm100(N n)
An SPRM: Section, Paragraph and Run Modifier.
virtual sal_uInt32 getId() const =0
Returns id of the SPRM.
virtual int getInt() const =0
Returns integer representation of the value.
virtual void lcl_sprm(Sprm &sprm) override
WrapPolygon::Pointer_t mpPolygon
virtual ~WrapPolygonHandler() override
virtual void lcl_attribute(Id Name, Value &val) override
Handles <wp:wrapPolygon> from DOCX and the pWrapPolygonVertices shape property from RTF.
WrapPolygon::Pointer_t correctCrop(const css::awt::Size &rGraphicSize, const css::text::GraphicCrop &rGraphicCrop) const
Points_t::const_iterator end() const
WrapPolygon::Pointer_t correctWordWrapPolygonPixel(const css::awt::Size &rSrcSize) const
WrapPolygon::Pointer_t correctWordWrapPolygon(const css::awt::Size &rSrcSize) const
WrapPolygon::Pointer_t scale(const Fraction &rFractionX, const Fraction &rFractionY) const
Points_t::const_iterator begin() const
void addPoint(const css::awt::Point &rPoint)
css::drawing::PointSequenceSequence getPointSequenceSequence() const
WrapPolygon::Pointer_t move(const css::awt::Point &rMove) const
#define SAL_WARN(area, stream)
css::uno::Sequence< DstElementType > containerToSequence(const SrcType &i_Container)
void resolveSprmProps(Properties &rHandler, Sprm &rSprm)
const int nWrap100Percent