12#include <com/sun/star/drawing/XShapes.hpp>
13#include <com/sun/star/drawing/XShape.hpp>
14#include <com/sun/star/drawing/FillStyle.hpp>
15#include <com/sun/star/awt/Gradient.hpp>
16#include <com/sun/star/drawing/Hatch.hpp>
17#include <com/sun/star/awt/XBitmap.hpp>
18#include <com/sun/star/drawing/RectanglePoint.hpp>
19#include <com/sun/star/drawing/BitmapMode.hpp>
21#include <com/sun/star/drawing/LineStyle.hpp>
22#include <com/sun/star/drawing/LineDash.hpp>
23#include <com/sun/star/drawing/LineJoint.hpp>
24#include <com/sun/star/drawing/PolyPolygonBezierCoords.hpp>
26#include <com/sun/star/drawing/PolygonKind.hpp>
28#include <com/sun/star/drawing/TextFitToSizeType.hpp>
29#include <com/sun/star/drawing/TextHorizontalAdjust.hpp>
30#include <com/sun/star/drawing/TextVerticalAdjust.hpp>
31#include <com/sun/star/drawing/TextAnimationDirection.hpp>
32#include <com/sun/star/drawing/TextAnimationKind.hpp>
33#include <com/sun/star/text/WritingMode.hpp>
35#include <com/sun/star/drawing/HomogenMatrixLine3.hpp>
36#include <com/sun/star/drawing/HomogenMatrix3.hpp>
38#include <com/sun/star/beans/PropertyValue.hpp>
39#include <com/sun/star/lang/XServiceInfo.hpp>
40#include <com/sun/star/beans/XPropertySet.hpp>
41#include <com/sun/star/text/XText.hpp>
42#include <rtl/strbuf.hxx>
43#include <libxml/xmlwriter.h>
46#include <rtl/ustring.hxx>
57void dumpGradientProperty(
const css::awt::Gradient& rGradient,
xmlTextWriterPtr xmlWriter);
58void dumpPolyPolygonBezierCoords(
const css::drawing::PolyPolygonBezierCoords& rPolyPolygonBezierCoords,
xmlTextWriterPtr xmlWriter);
59void dumpPointSequenceSequence(
const css::drawing::PointSequenceSequence& rPointSequenceSequence,
const uno::Sequence<uno::Sequence<drawing::PolygonFlags> >*,
xmlTextWriterPtr xmlWriter);
60void dumpPropertyValueAsElement(
const beans::PropertyValue& rPropertyValue,
xmlTextWriterPtr xmlWriter);
63void dumpFillStyleAsAttribute(css::drawing::FillStyle eFillStyle,
xmlTextWriterPtr xmlWriter);
65void dumpFillTransparenceAsAttribute(sal_Int32 aTransparence,
xmlTextWriterPtr xmlWriter);
66void dumpFillTransparenceGradientNameAsAttribute(std::u16string_view sTranspGradName,
xmlTextWriterPtr xmlWriter);
67void dumpFillTransparenceGradientAsElement(
const css::awt::Gradient& rTranspGrad,
xmlTextWriterPtr xmlWriter);
68void dumpFillGradientNameAsAttribute(std::u16string_view sGradName,
xmlTextWriterPtr xmlWriter);
69void dumpFillGradientAsElement(
const css::awt::Gradient& rGradient,
xmlTextWriterPtr xmlWriter);
70void dumpFillHatchAsElement(
const css::drawing::Hatch& rHatch,
xmlTextWriterPtr xmlWriter);
71void dumpFillBackgroundAsAttribute(
bool bBackground,
xmlTextWriterPtr xmlWriter);
72void dumpFillBitmapAsElement(
const css::uno::Reference<css::awt::XBitmap>& xBitmap,
xmlTextWriterPtr xmlWriter);
73void dumpFillBitmapPositionOffsetXAsAttribute(sal_Int32 aBitmapPositionOffsetX,
xmlTextWriterPtr xmlWriter);
74void dumpFillBitmapPositionOffsetYAsAttribute(sal_Int32 aBitmapPositionOffsetY,
xmlTextWriterPtr xmlWriter);
75void dumpFillBitmapOffsetXAsAttribute(sal_Int32 aBitmapOffsetX,
xmlTextWriterPtr xmlWriter);
76void dumpFillBitmapOffsetYAsAttribute(sal_Int32 aBitmapOffsetY,
xmlTextWriterPtr xmlWriter);
77void dumpFillBitmapRectanglePointAsAttribute(css::drawing::RectanglePoint eBitmapRectanglePoint,
xmlTextWriterPtr xmlWriter);
78void dumpFillBitmapLogicalSizeAsAttribute(
bool bBitmapLogicalSize,
xmlTextWriterPtr xmlWriter);
79void dumpFillBitmapSizeXAsAttribute(sal_Int32 aBitmapSizeX,
xmlTextWriterPtr xmlWriter);
80void dumpFillBitmapSizeYAsAttribute(sal_Int32 aBitmapSizeY,
xmlTextWriterPtr xmlWriter);
81void dumpFillBitmapModeAsAttribute(css::drawing::BitmapMode eBitmapMode,
xmlTextWriterPtr xmlWriter);
82void dumpFillBitmapStretchAsAttribute(
bool bBitmapStretch,
xmlTextWriterPtr xmlWriter);
83void dumpFillBitmapTileAsAttribute(
bool bBitmapTile,
xmlTextWriterPtr xmlWriter);
86void dumpLineStyleAsAttribute(css::drawing::LineStyle eLineStyle,
xmlTextWriterPtr xmlWriter);
87void dumpLineDashAsElement(
const css::drawing::LineDash& rLineDash,
xmlTextWriterPtr xmlWriter);
88void dumpLineDashNameAsAttribute(std::u16string_view sLineDashName,
xmlTextWriterPtr xmlWriter);
89void dumpLineColorAsAttribute(sal_Int32 aLineColor,
xmlTextWriterPtr xmlWriter);
90void dumpLineTransparenceAsAttribute(sal_Int32 aLineTransparence,
xmlTextWriterPtr xmlWriter);
91void dumpLineWidthAsAttribute(sal_Int32 aLineWidth,
xmlTextWriterPtr xmlWriter);
92void dumpLineJointAsAttribute(css::drawing::LineJoint eLineJoint,
xmlTextWriterPtr xmlWriter);
93void dumpLineStartNameAsAttribute(std::u16string_view sLineStartName,
xmlTextWriterPtr xmlWriter);
94void dumpLineEndNameAsAttribute(std::u16string_view sLineEndName,
xmlTextWriterPtr xmlWriter);
95void dumpLineStartAsElement(
const css::drawing::PolyPolygonBezierCoords& rLineStart,
xmlTextWriterPtr xmlWriter);
96void dumpLineEndAsElement(
const css::drawing::PolyPolygonBezierCoords& rLineEnd,
xmlTextWriterPtr xmlWriter);
97void dumpLineStartCenterAsAttribute(
bool bLineStartCenter,
xmlTextWriterPtr xmlWriter);
98void dumpLineStartWidthAsAttribute(sal_Int32 aLineStartWidth,
xmlTextWriterPtr xmlWriter);
99void dumpLineEndCenterAsAttribute(
bool bLineEndCenter,
xmlTextWriterPtr xmlWriter);
100void dumpLineEndWidthAsAttribute(sal_Int32 aLineEndWidth,
xmlTextWriterPtr xmlWriter);
103void dumpPolygonKindAsAttribute(css::drawing::PolygonKind ePolygonKind,
xmlTextWriterPtr xmlWriter);
104void dumpPolyPolygonAsElement(
const css::drawing::PointSequenceSequence& rPolyPolygon,
xmlTextWriterPtr xmlWriter);
105void dumpGeometryAsElement(
const css::drawing::PointSequenceSequence& rGeometry,
xmlTextWriterPtr xmlWriter);
112void dumpIsNumberingAsAttribute(
bool bIsNumbering,
xmlTextWriterPtr xmlWriter);
113void dumpTextAutoGrowHeightAsAttribute(
bool bTextAutoGrowHeight,
xmlTextWriterPtr xmlWriter);
114void dumpTextAutoGrowWidthAsAttribute(
bool bTextAutoGrowWidth,
xmlTextWriterPtr xmlWriter);
115void dumpTextContourFrameAsAttribute(
bool bTextContourFrame,
xmlTextWriterPtr xmlWriter);
116void dumpTextFitToSizeAsAttribute(css::drawing::TextFitToSizeType eTextFitToSize,
xmlTextWriterPtr xmlWriter);
117void dumpTextHorizontalAdjustAsAttribute(css::drawing::TextHorizontalAdjust eTextHorizontalAdjust,
xmlTextWriterPtr xmlWriter);
118void dumpTextVerticalAdjustAsAttribute(css::drawing::TextVerticalAdjust eTextVerticalAdjust,
xmlTextWriterPtr xmlWriter);
119void dumpTextLeftDistanceAsAttribute(sal_Int32 aTextLeftDistance,
xmlTextWriterPtr xmlWriter);
120void dumpTextRightDistanceAsAttribute(sal_Int32 aTextRightDistance,
xmlTextWriterPtr xmlWriter);
121void dumpTextUpperDistanceAsAttribute(sal_Int32 aTextUpperDistance,
xmlTextWriterPtr xmlWriter);
122void dumpTextLowerDistanceAsAttribute(sal_Int32 aTextLowerDistance,
xmlTextWriterPtr xmlWriter);
123void dumpTextMaximumFrameHeightAsAttribute(sal_Int32 aTextMaximumFrameHeight,
xmlTextWriterPtr xmlWriter);
124void dumpTextMaximumFrameWidthAsAttribute(sal_Int32 aTextMaximumFrameWidth,
xmlTextWriterPtr xmlWriter);
125void dumpTextMinimumFrameHeightAsAttribute(sal_Int32 aTextMinimumFrameHeight,
xmlTextWriterPtr xmlWriter);
126void dumpTextMinimumFrameWidthAsAttribute(sal_Int32 aTextMinimumFrameWidth,
xmlTextWriterPtr xmlWriter);
127void dumpTextAnimationAmountAsAttribute(sal_Int32 aTextAnimationAmount,
xmlTextWriterPtr xmlWriter);
128void dumpTextAnimationCountAsAttribute(sal_Int32 aTextAnimationCount,
xmlTextWriterPtr xmlWriter);
129void dumpTextAnimationDelayAsAttribute(sal_Int32 aTextAnimationDelay,
xmlTextWriterPtr xmlWriter);
130void dumpTextAnimationDirectionAsAttribute(css::drawing::TextAnimationDirection eTextAnimationDirection,
xmlTextWriterPtr xmlWriter);
131void dumpTextAnimationKindAsAttribute(css::drawing::TextAnimationKind eTextAnimationKind,
xmlTextWriterPtr xmlWriter);
132void dumpTextAnimationStartInsideAsAttribute(
bool bTextAnimationStartInside,
xmlTextWriterPtr xmlWriter);
133void dumpTextAnimationStopInsideAsAttribute(
bool bTextAnimationStopInside,
xmlTextWriterPtr xmlWriter);
134void dumpTextWritingModeAsAttribute(css::text::WritingMode eWritingMode,
xmlTextWriterPtr xmlWriter);
138void dumpShadowColorAsAttribute(sal_Int32 aShadowColor,
xmlTextWriterPtr xmlWriter);
139void dumpShadowTransparenceAsAttribute(sal_Int32 aShadowTransparence,
xmlTextWriterPtr xmlWriter);
140void dumpShadowXDistanceAsAttribute(sal_Int32 aShadowXDistance,
xmlTextWriterPtr xmlWriter);
141void dumpShadowYDistanceAsAttribute(sal_Int32 aShadowYDistance,
xmlTextWriterPtr xmlWriter);
146void dumpLayerNameAsAttribute(std::u16string_view sLayerName,
xmlTextWriterPtr xmlWriter);
149void dumpMoveProtectAsAttribute(
bool bMoveProtect,
xmlTextWriterPtr xmlWriter);
151void dumpSizeProtectAsAttribute(
bool bSizeProtect,
xmlTextWriterPtr xmlWriter);
152void dumpHomogenMatrixLine3(
const css::drawing::HomogenMatrixLine3& rLine,
xmlTextWriterPtr xmlWriter);
153void dumpTransformationAsElement(
const css::drawing::HomogenMatrix3& rTransformation,
xmlTextWriterPtr xmlWriter);
154void dumpNavigationOrderAsAttribute(sal_Int32 aNavigationOrder,
xmlTextWriterPtr xmlWriter);
155void dumpHyperlinkAsAttribute(std::u16string_view sHyperlink,
xmlTextWriterPtr xmlWriter);
156void dumpInteropGrabBagAsElement(
const uno::Sequence< beans::PropertyValue>& aInteropGrabBag,
xmlTextWriterPtr xmlWriter);
159void dumpCustomShapeEngineAsAttribute(std::u16string_view sCustomShapeEngine,
xmlTextWriterPtr xmlWriter);
160void dumpCustomShapeDataAsAttribute(
162void dumpCustomShapeGeometryAsElement(
const css::uno::Sequence< css::beans::PropertyValue>& aCustomShapeGeometry,
xmlTextWriterPtr xmlWriter);
163void dumpCustomShapeReplacementURLAsAttribute(std::u16string_view sCustomShapeReplacementURL,
xmlTextWriterPtr xmlWriter);
166void dumpPositionAsAttribute(
const css::awt::Point& rPoint,
xmlTextWriterPtr xmlWriter);
167void dumpSizeAsAttribute(
const css::awt::Size& rSize,
xmlTextWriterPtr xmlWriter);
170void dumpShapeDescriptorAsAttribute(
const css::uno::Reference< css::drawing::XShapeDescriptor >& xDescr,
xmlTextWriterPtr xmlWriter );
171void dumpXShape(
const css::uno::Reference< css::drawing::XShape >& xShape,
xmlTextWriterPtr xmlWriter,
bool bDumpInteropProperties);
172void dumpXShapes(
const css::uno::Reference< css::drawing::XShapes >& xShapes,
xmlTextWriterPtr xmlWriter,
bool bDumpInteropProperties );
173void dumpTextPropertiesService(
const css::uno::Reference< css::beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter);
174void dumpFillPropertiesService(
const css::uno::Reference< css::beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter);
175void dumpLinePropertiesService(
const css::uno::Reference< css::beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter);
176void dumpShadowPropertiesService(
const css::uno::Reference< css::beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter);
177void dumpPolyPolygonDescriptorService(
const css::uno::Reference< css::beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter);
178void dumpShapeService(
const css::uno::Reference< css::beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter,
bool bDumpInteropProperties);
179void dumpPolyPolygonBezierDescriptorService(
const css::uno::Reference< css::beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter);
180void dumpCustomShapeService(
const css::uno::Reference< css::beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter);
183int writeCallback(
void* pContext,
const char* sBuffer,
int nLen)
185 OStringBuffer* pBuffer =
static_cast<OStringBuffer*
>(pContext);
186 pBuffer->append(sBuffer);
190int closeCallback(
void* )
200void dumpFillStyleAsAttribute(drawing::FillStyle eFillStyle,
xmlTextWriterPtr xmlWriter)
204 case drawing::FillStyle_NONE:
205 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillStyle"),
"%s",
"NONE");
207 case drawing::FillStyle_SOLID:
208 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillStyle"),
"%s",
"SOLID");
210 case drawing::FillStyle_GRADIENT:
211 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillStyle"),
"%s",
"GRADIENT");
213 case drawing::FillStyle_HATCH:
214 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillStyle"),
"%s",
"HATCH");
216 case drawing::FillStyle_BITMAP:
217 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillStyle"),
"%s",
"BITMAP");
226 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"fillColor"),
"%06x",
static_cast<unsigned int>(aColor));
229void dumpFillTransparenceAsAttribute(sal_Int32 aTransparence,
xmlTextWriterPtr xmlWriter)
231 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"fillTransparence"),
"%" SAL_PRIdINT32, aTransparence);
234void dumpFillTransparenceGradientNameAsAttribute(std::u16string_view sTranspGradName,
xmlTextWriterPtr xmlWriter)
236 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"fillTransparenceGradientName"),
"%s",
241void dumpGradientProperty(
const awt::Gradient& rGradient,
xmlTextWriterPtr xmlWriter)
243 switch (rGradient.Style)
245 case awt::GradientStyle_LINEAR:
246 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"LINEAR");
248 case awt::GradientStyle_AXIAL:
249 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"AXIAL");
251 case awt::GradientStyle_RADIAL:
252 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"RADIAL");
254 case awt::GradientStyle_ELLIPTICAL:
255 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"ELLIPTICAL");
257 case awt::GradientStyle_SQUARE:
258 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"SQUARE");
260 case awt::GradientStyle_RECT:
261 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"RECT");
266 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"startColor"),
"%06x",
static_cast<unsigned int>(rGradient.StartColor));
267 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"endColor"),
"%06x",
static_cast<unsigned int>(rGradient.EndColor));
268 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"angle"),
"%" SAL_PRIdINT32,
static_cast<sal_Int32
>(rGradient.Angle));
269 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"border"),
"%" SAL_PRIdINT32,
static_cast<sal_Int32
>(rGradient.Border));
270 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"xOffset"),
"%" SAL_PRIdINT32,
static_cast<sal_Int32
>(rGradient.XOffset));
271 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"yOffset"),
"%" SAL_PRIdINT32,
static_cast<sal_Int32
>(rGradient.YOffset));
272 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"startIntensity"),
"%" SAL_PRIdINT32,
static_cast<sal_Int32
>(rGradient.StartIntensity));
273 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"endIntensity"),
"%" SAL_PRIdINT32,
static_cast<sal_Int32
>(rGradient.EndIntensity));
274 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"stepCount"),
"%" SAL_PRIdINT32,
static_cast<sal_Int32
>(rGradient.StepCount));
277void dumpFillTransparenceGradientAsElement(
const awt::Gradient& rTranspGrad,
xmlTextWriterPtr xmlWriter)
279 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"FillTransparenceGradient" ));
280 dumpGradientProperty(rTranspGrad, xmlWriter);
281 (void)xmlTextWriterEndElement( xmlWriter );
284void dumpFillGradientNameAsAttribute(std::u16string_view sGradName,
xmlTextWriterPtr xmlWriter)
286 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"fillGradientName"),
"%s",
290void dumpFillGradientAsElement(
const awt::Gradient& rGradient,
xmlTextWriterPtr xmlWriter)
292 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"FillGradient" ));
293 dumpGradientProperty(rGradient, xmlWriter);
294 (void)xmlTextWriterEndElement( xmlWriter );
297void dumpFillHatchAsElement(
const drawing::Hatch& rHatch,
xmlTextWriterPtr xmlWriter)
299 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"FillHatch" ));
300 switch (rHatch.Style)
302 case drawing::HatchStyle_SINGLE:
303 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"SINGLE");
305 case drawing::HatchStyle_DOUBLE:
306 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"DOUBLE");
308 case drawing::HatchStyle_TRIPLE:
309 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"TRIPLE");
314 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"color"),
"%06x",
static_cast<unsigned int>(rHatch.Color));
315 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"distance"),
"%" SAL_PRIdINT32, rHatch.Distance);
316 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"angle"),
"%" SAL_PRIdINT32, rHatch.Angle);
317 (void)xmlTextWriterEndElement( xmlWriter );
320void dumpFillBackgroundAsAttribute(
bool bBackground,
xmlTextWriterPtr xmlWriter)
323 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBackground"),
"%s",
"true");
325 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBackground"),
"%s",
"false");
328void dumpFillBitmapAsElement(
const uno::Reference<awt::XBitmap>& xBitmap,
xmlTextWriterPtr xmlWriter)
330 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"FillBitmap" ));
333 awt::Size
const aSize = xBitmap->getSize();
334 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"width"),
"%" SAL_PRIdINT32, aSize.Width);
335 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"height"),
"%" SAL_PRIdINT32, aSize.Height);
337 (void)xmlTextWriterEndElement( xmlWriter );
340void dumpFillBitmapPositionOffsetXAsAttribute(sal_Int32 aBitmapPositionOffsetX,
xmlTextWriterPtr xmlWriter)
342 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"fillBitmapPositionOffsetX"),
"%" SAL_PRIdINT32, aBitmapPositionOffsetX);
345void dumpFillBitmapPositionOffsetYAsAttribute(sal_Int32 aBitmapPositionOffsetY,
xmlTextWriterPtr xmlWriter)
347 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"fillBitmapPositionOffsetY"),
"%" SAL_PRIdINT32, aBitmapPositionOffsetY);
350void dumpFillBitmapOffsetXAsAttribute(sal_Int32 aBitmapOffsetX,
xmlTextWriterPtr xmlWriter)
352 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"fillBitmapOffsetX"),
"%" SAL_PRIdINT32, aBitmapOffsetX);
355void dumpFillBitmapOffsetYAsAttribute(sal_Int32 aBitmapOffsetY,
xmlTextWriterPtr xmlWriter)
357 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"fillBitmapOffsetY"),
"%" SAL_PRIdINT32, aBitmapOffsetY);
360void dumpFillBitmapRectanglePointAsAttribute(drawing::RectanglePoint eBitmapRectanglePoint,
xmlTextWriterPtr xmlWriter)
362 switch(eBitmapRectanglePoint)
364 case drawing::RectanglePoint_LEFT_TOP:
365 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapRectanglePoint"),
"%s",
"LEFT_TOP");
367 case drawing::RectanglePoint_MIDDLE_TOP:
368 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapRectanglePoint"),
"%s",
"MIDDLE_TOP");
370 case drawing::RectanglePoint_RIGHT_TOP:
371 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapRectanglePoint"),
"%s",
"RIGHT_TOP");
373 case drawing::RectanglePoint_LEFT_MIDDLE:
374 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapRectanglePoint"),
"%s",
"LEFT_MIDDLE");
376 case drawing::RectanglePoint_MIDDLE_MIDDLE:
377 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapRectanglePoint"),
"%s",
"MIDDLE_MIDDLE");
379 case drawing::RectanglePoint_RIGHT_MIDDLE:
380 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapRectanglePoint"),
"%s",
"RIGHT_MIDDLE");
382 case drawing::RectanglePoint_LEFT_BOTTOM:
383 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapRectanglePoint"),
"%s",
"LEFT_BOTTOM");
385 case drawing::RectanglePoint_MIDDLE_BOTTOM:
386 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapRectanglePoint"),
"%s",
"MIDDLE_BOTTOM");
388 case drawing::RectanglePoint_RIGHT_BOTTOM:
389 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapRectanglePoint"),
"%s",
"RIGHT_BOTTOM");
396void dumpFillBitmapLogicalSizeAsAttribute(
bool bBitmapLogicalSize,
xmlTextWriterPtr xmlWriter)
398 if(bBitmapLogicalSize)
399 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapLogicalSize"),
"%s",
"true");
401 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapLogicalSize"),
"%s",
"false");
404void dumpFillBitmapSizeXAsAttribute(sal_Int32 aBitmapSizeX,
xmlTextWriterPtr xmlWriter)
406 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"fillBitmapSizeX"),
"%" SAL_PRIdINT32, aBitmapSizeX);
409void dumpFillBitmapSizeYAsAttribute(sal_Int32 aBitmapSizeY,
xmlTextWriterPtr xmlWriter)
411 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"fillBitmapSizeY"),
"%" SAL_PRIdINT32, aBitmapSizeY);
414void dumpFillBitmapModeAsAttribute(drawing::BitmapMode eBitmapMode,
xmlTextWriterPtr xmlWriter)
418 case drawing::BitmapMode_REPEAT:
419 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapMode"),
"%s",
"REPEAT");
421 case drawing::BitmapMode_STRETCH:
422 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapMode"),
"%s",
"STRETCH");
424 case drawing::BitmapMode_NO_REPEAT:
425 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapMode"),
"%s",
"NO_REPEAT");
432void dumpFillBitmapStretchAsAttribute(
bool bBitmapStretch,
xmlTextWriterPtr xmlWriter)
435 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapStretch"),
"%s",
"true");
437 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapStretch"),
"%s",
"false");
440void dumpFillBitmapTileAsAttribute(
bool bBitmapTile,
xmlTextWriterPtr xmlWriter)
443 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapTile"),
"%s",
"true");
445 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fillBitmapTile"),
"%s",
"false");
452void dumpLineStyleAsAttribute(drawing::LineStyle eLineStyle,
xmlTextWriterPtr xmlWriter)
456 case drawing::LineStyle_NONE:
457 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineStyle"),
"%s",
"NONE");
459 case drawing::LineStyle_SOLID:
460 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineStyle"),
"%s",
"SOLID");
462 case drawing::LineStyle_DASH:
463 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineStyle"),
"%s",
"DASH");
470void dumpLineDashAsElement(
const drawing::LineDash& rLineDash,
xmlTextWriterPtr xmlWriter)
472 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"LineDash" ));
473 switch (rLineDash.Style)
475 case drawing::DashStyle_RECT:
476 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"RECT");
478 case drawing::DashStyle_ROUND:
479 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"ROUND");
481 case drawing::DashStyle_RECTRELATIVE:
482 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"RECTRELATIVE");
484 case drawing::DashStyle_ROUNDRELATIVE:
485 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"style"),
"%s",
"ROUNDRELATIVE");
490 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"dots"),
"%" SAL_PRIdINT32,
static_cast<sal_Int32
>(rLineDash.Dots));
491 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"dotLen"),
"%" SAL_PRIdINT32, rLineDash.DotLen);
492 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"dashes"),
"%" SAL_PRIdINT32,
static_cast<sal_Int32
>(rLineDash.Dashes));
493 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"dashLen"),
"%" SAL_PRIdINT32, rLineDash.DashLen);
494 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"distance"),
"%" SAL_PRIdINT32, rLineDash.Distance);
495 (void)xmlTextWriterEndElement( xmlWriter );
498void dumpLineDashNameAsAttribute(std::u16string_view sLineDashName,
xmlTextWriterPtr xmlWriter)
500 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"lineDashName"),
"%s",
504void dumpLineColorAsAttribute(sal_Int32 aLineColor,
xmlTextWriterPtr xmlWriter)
506 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"lineColor"),
"%06x",
static_cast<unsigned int>(aLineColor));
509void dumpLineTransparenceAsAttribute(sal_Int32 aLineTransparence,
xmlTextWriterPtr xmlWriter)
511 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"lineTransparence"),
"%" SAL_PRIdINT32, aLineTransparence);
514void dumpLineWidthAsAttribute(sal_Int32 aLineWidth,
xmlTextWriterPtr xmlWriter)
516 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"lineWidth"),
"%" SAL_PRIdINT32, aLineWidth);
519void dumpLineJointAsAttribute(drawing::LineJoint eLineJoint,
xmlTextWriterPtr xmlWriter)
523 case drawing::LineJoint_NONE:
524 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineJoint"),
"%s",
"NONE");
526 case drawing::LineJoint_MIDDLE:
527 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineJoint"),
"%s",
"MIDDLE");
529 case drawing::LineJoint_BEVEL:
530 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineJoint"),
"%s",
"BEVEL");
532 case drawing::LineJoint_MITER:
533 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineJoint"),
"%s",
"MITER");
535 case drawing::LineJoint_ROUND:
536 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineJoint"),
"%s",
"ROUND");
543void dumpLineStartNameAsAttribute(std::u16string_view sLineStartName,
xmlTextWriterPtr xmlWriter)
545 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"lineStartName"),
"%s",
549void dumpLineEndNameAsAttribute(std::u16string_view sLineEndName,
xmlTextWriterPtr xmlWriter)
551 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"lineEndName"),
"%s",
555void dumpPolyPolygonBezierCoords(
const drawing::PolyPolygonBezierCoords& rPolyPolygonBezierCoords,
xmlTextWriterPtr xmlWriter)
557 dumpPointSequenceSequence(rPolyPolygonBezierCoords.Coordinates, &rPolyPolygonBezierCoords.Flags, xmlWriter);
560void dumpLineStartAsElement(
const drawing::PolyPolygonBezierCoords& rLineStart,
xmlTextWriterPtr xmlWriter)
562 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"LineStart" ));
563 dumpPolyPolygonBezierCoords(rLineStart, xmlWriter);
564 (void)xmlTextWriterEndElement( xmlWriter );
567void dumpLineEndAsElement(
const drawing::PolyPolygonBezierCoords& rLineEnd,
xmlTextWriterPtr xmlWriter)
569 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"LineEnd" ));
570 dumpPolyPolygonBezierCoords(rLineEnd, xmlWriter);
571 (void)xmlTextWriterEndElement( xmlWriter );
574void dumpLineStartCenterAsAttribute(
bool bLineStartCenter,
xmlTextWriterPtr xmlWriter)
577 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineStartCenter"),
"%s",
"true");
579 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineStartCenter"),
"%s",
"false");
582void dumpLineStartWidthAsAttribute(sal_Int32 aLineStartWidth,
xmlTextWriterPtr xmlWriter)
584 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"lineStartWidth"),
"%" SAL_PRIdINT32, aLineStartWidth);
587void dumpLineEndCenterAsAttribute(
bool bLineEndCenter,
xmlTextWriterPtr xmlWriter)
590 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineEndCenter"),
"%s",
"true");
592 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"lineEndCenter"),
"%s",
"false");
595void dumpLineEndWidthAsAttribute(sal_Int32 aLineEndWidth,
xmlTextWriterPtr xmlWriter)
597 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"lineEndWidth"),
"%" SAL_PRIdINT32, aLineEndWidth);
604void dumpPolygonKindAsAttribute(drawing::PolygonKind ePolygonKind,
xmlTextWriterPtr xmlWriter)
608 case drawing::PolygonKind_LINE:
609 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonKind"),
"%s",
"LINE");
611 case drawing::PolygonKind_POLY:
612 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonKind"),
"%s",
"POLY");
614 case drawing::PolygonKind_PLIN:
615 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonKind"),
"%s",
"PLIN");
617 case drawing::PolygonKind_PATHLINE:
618 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonKind"),
"%s",
"PATHLINE");
620 case drawing::PolygonKind_PATHFILL:
621 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonKind"),
"%s",
"PATHFILL");
623 case drawing::PolygonKind_FREELINE:
624 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonKind"),
"%s",
"FREELINE");
626 case drawing::PolygonKind_FREEFILL:
627 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonKind"),
"%s",
"FREEFILL");
629 case drawing::PolygonKind_PATHPOLY:
630 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonKind"),
"%s",
"PATHPOLY");
632 case drawing::PolygonKind_PATHPLIN:
633 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonKind"),
"%s",
"PATHPLIN");
640void dumpPointSequenceSequence(
const drawing::PointSequenceSequence& aPointSequenceSequence,
const uno::Sequence<uno::Sequence< drawing::PolygonFlags > >* pFlags,
xmlTextWriterPtr xmlWriter)
643 uno::Sequence<uno::Sequence< awt::Point > > pointSequenceSequence = aPointSequenceSequence;
644 sal_Int32 nPointsSequence = pointSequenceSequence.getLength();
646 for (sal_Int32
i = 0;
i < nPointsSequence; ++
i)
648 uno::Sequence< awt::Point > pointSequence = pointSequenceSequence[
i];
649 sal_Int32 nPoints = pointSequence.getLength();
651 uno::Sequence< drawing::PolygonFlags> flagsSequence;
653 flagsSequence = (*pFlags)[
i];
655 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"pointSequence" ));
657 for(sal_Int32 j = 0; j < nPoints; ++j)
659 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"point" ));
660 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"positionX"),
"%" SAL_PRIdINT32, pointSequence[j].X);
661 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"positionY"),
"%" SAL_PRIdINT32, pointSequence[j].Y);
665 switch(flagsSequence[j])
667 case drawing::PolygonFlags_NORMAL:
668 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonFlags"),
"%s",
"NORMAL");
670 case drawing::PolygonFlags_SMOOTH:
671 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonFlags"),
"%s",
"SMOOTH");
673 case drawing::PolygonFlags_CONTROL:
674 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonFlags"),
"%s",
"CONTROL");
676 case drawing::PolygonFlags_SYMMETRIC:
677 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"polygonFlags"),
"%s",
"SYMMETRIC");
684 (void)xmlTextWriterEndElement( xmlWriter );
686 (void)xmlTextWriterEndElement( xmlWriter );
690void dumpPolyPolygonAsElement(
const drawing::PointSequenceSequence& rPolyPolygon,
xmlTextWriterPtr xmlWriter)
692 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"PolyPolygon" ));
693 dumpPointSequenceSequence(rPolyPolygon,
nullptr, xmlWriter);
694 (void)xmlTextWriterEndElement( xmlWriter );
697void dumpGeometryAsElement(
const drawing::PointSequenceSequence& aGeometry,
xmlTextWriterPtr xmlWriter)
699 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"Geometry" ));
700 dumpPointSequenceSequence(aGeometry,
nullptr, xmlWriter);
701 (void)xmlTextWriterEndElement( xmlWriter );
707 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"fontHeight"),
"%f", fHeight );
712 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"fontColor"),
"%06x",
static_cast<unsigned int>(aColor));
719void dumpIsNumberingAsAttribute(
bool bIsNumbering,
xmlTextWriterPtr xmlWriter)
722 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"isNumbering"),
"%s",
"true");
724 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"isNumbering"),
"%s",
"false");
727void dumpTextAutoGrowHeightAsAttribute(
bool bTextAutoGrowHeight,
xmlTextWriterPtr xmlWriter)
729 if(bTextAutoGrowHeight)
730 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAutoGrowHeight"),
"%s",
"true");
732 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAutoGrowHeight"),
"%s",
"false");
735void dumpTextAutoGrowWidthAsAttribute(
bool bTextAutoGrowWidth,
xmlTextWriterPtr xmlWriter)
737 if(bTextAutoGrowWidth)
738 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAutoGrowWidth"),
"%s",
"true");
740 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAutoGrowWidth"),
"%s",
"false");
743void dumpTextContourFrameAsAttribute(
bool bTextContourFrame,
xmlTextWriterPtr xmlWriter)
745 if(bTextContourFrame)
746 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textContourFrame"),
"%s",
"true");
748 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textContourFrame"),
"%s",
"false");
751void dumpTextFitToSizeAsAttribute(drawing::TextFitToSizeType eTextFitToSize,
xmlTextWriterPtr xmlWriter)
753 switch(eTextFitToSize)
755 case drawing::TextFitToSizeType_NONE:
756 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textFitToSize"),
"%s",
"NONE");
758 case drawing::TextFitToSizeType_PROPORTIONAL:
759 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textFitToSize"),
"%s",
"PROPORTIONAL");
761 case drawing::TextFitToSizeType_ALLLINES:
762 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textFitToSize"),
"%s",
"ALLLINES");
764 case drawing::TextFitToSizeType_AUTOFIT:
765 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textFitToSize"),
"%s",
"AUTOFIT");
772void dumpTextHorizontalAdjustAsAttribute(drawing::TextHorizontalAdjust eTextHorizontalAdjust,
xmlTextWriterPtr xmlWriter)
774 switch(eTextHorizontalAdjust)
776 case drawing::TextHorizontalAdjust_LEFT:
777 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textHorizontalAdjust"),
"%s",
"LEFT");
779 case drawing::TextHorizontalAdjust_CENTER:
780 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textHorizontalAdjust"),
"%s",
"CENTER");
782 case drawing::TextHorizontalAdjust_RIGHT:
783 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textHorizontalAdjust"),
"%s",
"RIGHT");
785 case drawing::TextHorizontalAdjust_BLOCK:
786 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textHorizontalAdjust"),
"%s",
"BLOCK");
793void dumpTextVerticalAdjustAsAttribute(drawing::TextVerticalAdjust eTextVerticalAdjust,
xmlTextWriterPtr xmlWriter)
795 switch(eTextVerticalAdjust)
797 case drawing::TextVerticalAdjust_TOP:
798 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textVerticalAdjust"),
"%s",
"TOP");
800 case drawing::TextVerticalAdjust_CENTER:
801 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textVerticalAdjust"),
"%s",
"CENTER");
803 case drawing::TextVerticalAdjust_BOTTOM:
804 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textVerticalAdjust"),
"%s",
"BOTTOM");
806 case drawing::TextVerticalAdjust_BLOCK:
807 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textVerticalAdjust"),
"%s",
"BLOCK");
814void dumpTextLeftDistanceAsAttribute(sal_Int32 aTextLeftDistance,
xmlTextWriterPtr xmlWriter)
816 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"textLeftDistance"),
"%" SAL_PRIdINT32, aTextLeftDistance);
819void dumpTextRightDistanceAsAttribute(sal_Int32 aTextRightDistance,
xmlTextWriterPtr xmlWriter)
821 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"textRightDistance"),
"%" SAL_PRIdINT32, aTextRightDistance);
824void dumpTextUpperDistanceAsAttribute(sal_Int32 aTextUpperDistance,
xmlTextWriterPtr xmlWriter)
826 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"textUpperDistance"),
"%" SAL_PRIdINT32, aTextUpperDistance);
829void dumpTextLowerDistanceAsAttribute(sal_Int32 aTextLowerDistance,
xmlTextWriterPtr xmlWriter)
831 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"textLowerDistance"),
"%" SAL_PRIdINT32, aTextLowerDistance);
834void dumpTextMaximumFrameHeightAsAttribute(sal_Int32 aTextMaximumFrameHeight,
xmlTextWriterPtr xmlWriter)
836 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"textMaximumFrameHeight"),
"%" SAL_PRIdINT32, aTextMaximumFrameHeight);
839void dumpTextMaximumFrameWidthAsAttribute(sal_Int32 aTextMaximumFrameWidth,
xmlTextWriterPtr xmlWriter)
841 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"textMaximumFrameWidth"),
"%" SAL_PRIdINT32, aTextMaximumFrameWidth);
844void dumpTextMinimumFrameHeightAsAttribute(sal_Int32 aTextMinimumFrameHeight,
xmlTextWriterPtr xmlWriter)
846 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"textMinimumFrameHeight"),
"%" SAL_PRIdINT32, aTextMinimumFrameHeight);
849void dumpTextMinimumFrameWidthAsAttribute(sal_Int32 aTextMinimumFrameWidth,
xmlTextWriterPtr xmlWriter)
851 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"textMinimumFrameWidth"),
"%" SAL_PRIdINT32, aTextMinimumFrameWidth);
854void dumpTextAnimationAmountAsAttribute(sal_Int32 aTextAnimationAmount,
xmlTextWriterPtr xmlWriter)
856 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"textAnimationAmount"),
"%" SAL_PRIdINT32, aTextAnimationAmount);
859void dumpTextAnimationCountAsAttribute(sal_Int32 aTextAnimationCount,
xmlTextWriterPtr xmlWriter)
861 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"textAnimationCount"),
"%" SAL_PRIdINT32, aTextAnimationCount);
864void dumpTextAnimationDelayAsAttribute(sal_Int32 aTextAnimationDelay,
xmlTextWriterPtr xmlWriter)
866 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"textAnimationDelay"),
"%" SAL_PRIdINT32, aTextAnimationDelay);
869void dumpTextAnimationDirectionAsAttribute(drawing::TextAnimationDirection eTextAnimationDirection,
xmlTextWriterPtr xmlWriter)
871 switch(eTextAnimationDirection)
873 case drawing::TextAnimationDirection_LEFT:
874 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationDirection"),
"%s",
"LEFT");
876 case drawing::TextAnimationDirection_RIGHT:
877 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationDirection"),
"%s",
"RIGHT");
879 case drawing::TextAnimationDirection_UP:
880 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationDirection"),
"%s",
"UP");
882 case drawing::TextAnimationDirection_DOWN:
883 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationDirection"),
"%s",
"DOWN");
890void dumpTextAnimationKindAsAttribute(drawing::TextAnimationKind eTextAnimationKind,
xmlTextWriterPtr xmlWriter)
892 switch(eTextAnimationKind)
894 case drawing::TextAnimationKind_NONE:
895 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationKind"),
"%s",
"NONE");
897 case drawing::TextAnimationKind_BLINK:
898 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationKind"),
"%s",
"BLINK");
900 case drawing::TextAnimationKind_SCROLL:
901 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationKind"),
"%s",
"SCROLL");
903 case drawing::TextAnimationKind_ALTERNATE:
904 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationKind"),
"%s",
"ALTERNATE");
906 case drawing::TextAnimationKind_SLIDE:
907 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationKind"),
"%s",
"SLIDE");
914void dumpTextAnimationStartInsideAsAttribute(
bool bTextAnimationStartInside,
xmlTextWriterPtr xmlWriter)
916 if(bTextAnimationStartInside)
917 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationStartInside"),
"%s",
"true");
919 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationStartInside"),
"%s",
"false");
922void dumpTextAnimationStopInsideAsAttribute(
bool bTextAnimationStopInside,
xmlTextWriterPtr xmlWriter)
924 if(bTextAnimationStopInside)
925 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationStopInside"),
"%s",
"true");
927 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textAnimationStopInside"),
"%s",
"false");
930void dumpTextWritingModeAsAttribute(text::WritingMode eTextWritingMode,
xmlTextWriterPtr xmlWriter)
932 switch(eTextWritingMode)
934 case text::WritingMode_LR_TB:
935 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textWritingMode"),
"%s",
"LR_TB");
937 case text::WritingMode_RL_TB:
938 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textWritingMode"),
"%s",
"RL_TB");
940 case text::WritingMode_TB_RL:
941 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"textWritingMode"),
"%s",
"TB_RL");
955 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"shadow"),
"%s",
"true");
957 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"shadow"),
"%s",
"false");
960void dumpShadowColorAsAttribute(sal_Int32 aShadowColor,
xmlTextWriterPtr xmlWriter)
962 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"shadowColor"),
"%06x",
static_cast<unsigned int>(aShadowColor));
965void dumpShadowTransparenceAsAttribute(sal_Int32 aShadowTransparence,
xmlTextWriterPtr xmlWriter)
967 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"shadowTransparence"),
"%" SAL_PRIdINT32, aShadowTransparence);
970void dumpShadowXDistanceAsAttribute(sal_Int32 aShadowXDistance,
xmlTextWriterPtr xmlWriter)
972 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"shadowXDistance"),
"%" SAL_PRIdINT32, aShadowXDistance);
975void dumpShadowYDistanceAsAttribute(sal_Int32 aShadowYDistance,
xmlTextWriterPtr xmlWriter)
977 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"shadowYDistance"),
"%" SAL_PRIdINT32, aShadowYDistance);
986 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"zOrder"),
"%" SAL_PRIdINT32, aZOrder);
991 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"layerID"),
"%" SAL_PRIdINT32, aLayerID);
994void dumpLayerNameAsAttribute(std::u16string_view sLayerName,
xmlTextWriterPtr xmlWriter)
996 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"layerName"),
"%s",
1003 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"visible"),
"%s",
"true");
1005 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"visible"),
"%s",
"false");
1011 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"printable"),
"%s",
"true");
1013 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"printable"),
"%s",
"false");
1016void dumpMoveProtectAsAttribute(
bool bMoveProtect,
xmlTextWriterPtr xmlWriter)
1019 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"moveProtect"),
"%s",
"true");
1021 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"moveProtect"),
"%s",
"false");
1026 if(!
sName.empty() && !m_bNameDumped)
1028 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"name"),
"%s",
OUStringToOString(
sName, RTL_TEXTENCODING_UTF8).getStr());
1029 m_bNameDumped =
true;
1033void dumpSizeProtectAsAttribute(
bool bSizeProtect,
xmlTextWriterPtr xmlWriter)
1036 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"sizeProtect"),
"%s",
"true");
1038 (
void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"sizeProtect"),
"%s",
"false");
1041void dumpHomogenMatrixLine3(
const drawing::HomogenMatrixLine3& rHomogenMatrixLine3,
xmlTextWriterPtr xmlWriter)
1043 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"column1"),
"%f", rHomogenMatrixLine3.Column1);
1044 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"column2"),
"%f", rHomogenMatrixLine3.Column2);
1045 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"column3"),
"%f", rHomogenMatrixLine3.Column3);
1048void dumpTransformationAsElement(
const drawing::HomogenMatrix3& rTransformation,
xmlTextWriterPtr xmlWriter)
1050 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"Transformation" ));
1052 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"Line1" ));
1053 dumpHomogenMatrixLine3(rTransformation.Line1, xmlWriter);
1054 (void)xmlTextWriterEndElement( xmlWriter );
1055 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"Line2" ));
1056 dumpHomogenMatrixLine3(rTransformation.Line2, xmlWriter);
1057 (void)xmlTextWriterEndElement( xmlWriter );
1058 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"Line3" ));
1059 dumpHomogenMatrixLine3(rTransformation.Line3, xmlWriter);
1060 (void)xmlTextWriterEndElement( xmlWriter );
1062 (void)xmlTextWriterEndElement( xmlWriter );
1065void dumpNavigationOrderAsAttribute(sal_Int32 aNavigationOrder,
xmlTextWriterPtr xmlWriter)
1067 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"navigationOrder"),
"%" SAL_PRIdINT32, aNavigationOrder);
1070void dumpHyperlinkAsAttribute(std::u16string_view sHyperlink,
xmlTextWriterPtr xmlWriter)
1072 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"hyperlink"),
"%s",
1076void dumpInteropGrabBagAsElement(
const uno::Sequence< beans::PropertyValue>& aInteropGrabBag,
xmlTextWriterPtr xmlWriter)
1078 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"InteropGrabBag" ));
1080 for (
const auto& item: aInteropGrabBag)
1081 dumpPropertyValueAsElement(item, xmlWriter);
1083 (void)xmlTextWriterEndElement( xmlWriter );
1090void dumpPositionAsAttribute(
const awt::Point& rPoint,
xmlTextWriterPtr xmlWriter)
1092 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"positionX"),
"%" SAL_PRIdINT32, rPoint.X);
1093 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"positionY"),
"%" SAL_PRIdINT32, rPoint.Y);
1096void dumpSizeAsAttribute(
const awt::Size& rSize,
xmlTextWriterPtr xmlWriter)
1098 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"sizeX"),
"%" SAL_PRIdINT32, rSize.Width);
1099 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"sizeY"),
"%" SAL_PRIdINT32, rSize.Height);
1102void dumpShapeDescriptorAsAttribute(
const uno::Reference< drawing::XShapeDescriptor >& xDescr,
xmlTextWriterPtr xmlWriter )
1104 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"type"),
"%s",
1112void dumpCustomShapeEngineAsAttribute(std::u16string_view sCustomShapeEngine,
xmlTextWriterPtr xmlWriter)
1114 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"customShapeEngine"),
"%s",
1118void dumpCustomShapeDataAsAttribute(
1121 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"customShapeData"),
"%s",
1125void dumpPropertyValueAsElement(
const beans::PropertyValue& rPropertyValue,
xmlTextWriterPtr xmlWriter)
1127 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"PropertyValue" ));
1129 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"name"),
"%s",
1133 if(OUString sValue; aAny >>= sValue)
1135 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"value"),
"%s",
1140 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"value"),
"%" SAL_PRIdINT32,
nValue);
1142 else if(
float fValue; aAny >>= fValue)
1144 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"value"),
"%f", fValue);
1146 else if(
bool bValue; aAny >>= bValue)
1148 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"value"),
"%s", (bValue?
"true":
"false"));
1150 else if(awt::Rectangle aRectangleValue;
1151 rPropertyValue.Name ==
"ViewBox" && (aAny >>= aRectangleValue))
1156 else if(uno::Sequence< drawing::EnhancedCustomShapeAdjustmentValue> aAdjustmentValues;
1157 rPropertyValue.Name ==
"AdjustmentValues" && (aAny >>= aAdjustmentValues))
1162 else if(uno::Sequence< drawing::EnhancedCustomShapeParameterPair > aCoordinates;
1163 rPropertyValue.Name ==
"Coordinates" && (aAny >>= aCoordinates))
1168 else if(uno::Sequence< drawing::EnhancedCustomShapeSegment >
aSegments;
1169 rPropertyValue.Name ==
"Segments" && (aAny >>=
aSegments))
1174 else if(uno::Sequence< beans::PropertyValue > aPropSeq; aAny >>= aPropSeq)
1176 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
OUStringToOString(rPropertyValue.Name, RTL_TEXTENCODING_UTF8).getStr() ));
1178 sal_Int32
i = 0,
nCount = aPropSeq.getLength();
1180 dumpPropertyValueAsElement(aPropSeq[
i ], xmlWriter);
1182 (void)xmlTextWriterEndElement(xmlWriter);
1190 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"handle"),
"%" SAL_PRIdINT32, rPropertyValue.Handle);
1192 switch(rPropertyValue.State)
1194 case beans::PropertyState_DIRECT_VALUE:
1195 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"propertyState"),
"%s",
"DIRECT_VALUE");
1197 case beans::PropertyState_DEFAULT_VALUE:
1198 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"propertyState"),
"%s",
"DEFAULT_VALUE");
1200 case beans::PropertyState_AMBIGUOUS_VALUE:
1201 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"propertyState"),
"%s",
"AMBIGUOUS_VALUE");
1206 (void)xmlTextWriterEndElement( xmlWriter );
1209void dumpCustomShapeGeometryAsElement(
const uno::Sequence< beans::PropertyValue>& aCustomShapeGeometry,
xmlTextWriterPtr xmlWriter)
1211 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"CustomShapeGeometry" ));
1213 sal_Int32
nLength = aCustomShapeGeometry.getLength();
1215 dumpPropertyValueAsElement(aCustomShapeGeometry[
i], xmlWriter);
1217 (void)xmlTextWriterEndElement( xmlWriter );
1220void dumpCustomShapeReplacementURLAsAttribute(std::u16string_view sCustomShapeReplacementURL,
xmlTextWriterPtr xmlWriter)
1222 (void)xmlTextWriterWriteFormatAttribute(xmlWriter, BAD_CAST(
"customShapeReplacementURL"),
"%s",
1228void dumpTextPropertiesService(
const uno::Reference< beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter)
1230 uno::Reference< beans::XPropertySetInfo> xInfo = xPropSet->getPropertySetInfo();
1231 if(xInfo->hasPropertyByName(
"CharHeight"))
1233 uno::Any anotherAny = xPropSet->getPropertyValue(
"CharHeight");
1235 if(anotherAny >>= fHeight)
1236 dumpCharHeightAsAttribute(fHeight, xmlWriter);
1238 if(xInfo->hasPropertyByName(
"CharColor"))
1240 uno::Any anotherAny = xPropSet->getPropertyValue(
"CharColor");
1241 sal_Int32 aColor = sal_Int32();
1242 if(anotherAny >>= aColor)
1243 dumpCharColorAsAttribute(aColor, xmlWriter);
1247 if(xInfo->hasPropertyByName(
"IsNumbering"))
1249 uno::Any anotherAny = xPropSet->getPropertyValue(
"IsNumbering");
1251 if(anotherAny >>= bIsNumbering)
1252 dumpIsNumberingAsAttribute(bIsNumbering, xmlWriter);
1255 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextAutoGrowHeight");
1256 bool bTextAutoGrowHeight;
1257 if(anotherAny >>= bTextAutoGrowHeight)
1258 dumpTextAutoGrowHeightAsAttribute(bTextAutoGrowHeight, xmlWriter);
1261 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextAutoGrowWidth");
1262 bool bTextAutoGrowWidth;
1263 if(anotherAny >>= bTextAutoGrowWidth)
1264 dumpTextAutoGrowWidthAsAttribute(bTextAutoGrowWidth, xmlWriter);
1267 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextContourFrame");
1268 bool bTextContourFrame;
1269 if(anotherAny >>= bTextContourFrame)
1270 dumpTextContourFrameAsAttribute(bTextContourFrame, xmlWriter);
1273 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextFitToSize");
1274 drawing::TextFitToSizeType eTextFitToSize;
1275 if(anotherAny >>= eTextFitToSize)
1276 dumpTextFitToSizeAsAttribute(eTextFitToSize, xmlWriter);
1279 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextHorizontalAdjust");
1280 drawing::TextHorizontalAdjust eTextHorizontalAdjust;
1281 if(anotherAny >>= eTextHorizontalAdjust)
1282 dumpTextHorizontalAdjustAsAttribute(eTextHorizontalAdjust, xmlWriter);
1285 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextVerticalAdjust");
1286 drawing::TextVerticalAdjust eTextVerticalAdjust;
1287 if(anotherAny >>= eTextVerticalAdjust)
1288 dumpTextVerticalAdjustAsAttribute(eTextVerticalAdjust, xmlWriter);
1291 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextLeftDistance");
1292 sal_Int32 aTextLeftDistance = sal_Int32();
1293 if(anotherAny >>= aTextLeftDistance)
1294 dumpTextLeftDistanceAsAttribute(aTextLeftDistance, xmlWriter);
1297 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextRightDistance");
1298 sal_Int32 aTextRightDistance = sal_Int32();
1299 if(anotherAny >>= aTextRightDistance)
1300 dumpTextRightDistanceAsAttribute(aTextRightDistance, xmlWriter);
1303 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextUpperDistance");
1304 sal_Int32 aTextUpperDistance = sal_Int32();
1305 if(anotherAny >>= aTextUpperDistance)
1306 dumpTextUpperDistanceAsAttribute(aTextUpperDistance, xmlWriter);
1309 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextLowerDistance");
1310 sal_Int32 aTextLowerDistance = sal_Int32();
1311 if(anotherAny >>= aTextLowerDistance)
1312 dumpTextLowerDistanceAsAttribute(aTextLowerDistance, xmlWriter);
1315 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextMaximumFrameHeight");
1316 sal_Int32 aTextMaximumFrameHeight = sal_Int32();
1317 if(anotherAny >>= aTextMaximumFrameHeight)
1318 dumpTextMaximumFrameHeightAsAttribute(aTextMaximumFrameHeight, xmlWriter);
1321 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextMaximumFrameWidth");
1322 sal_Int32 aTextMaximumFrameWidth = sal_Int32();
1323 if(anotherAny >>= aTextMaximumFrameWidth)
1324 dumpTextMaximumFrameWidthAsAttribute(aTextMaximumFrameWidth, xmlWriter);
1327 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextMinimumFrameHeight");
1328 sal_Int32 aTextMinimumFrameHeight = sal_Int32();
1329 if(anotherAny >>= aTextMinimumFrameHeight)
1330 dumpTextMinimumFrameHeightAsAttribute(aTextMinimumFrameHeight, xmlWriter);
1333 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextMinimumFrameWidth");
1334 sal_Int32 aTextMinimumFrameWidth = sal_Int32();
1335 if(anotherAny >>= aTextMinimumFrameWidth)
1336 dumpTextMinimumFrameWidthAsAttribute(aTextMinimumFrameWidth, xmlWriter);
1339 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextAnimationAmount");
1340 sal_Int32 aTextAnimationAmount = sal_Int32();
1341 if(anotherAny >>= aTextAnimationAmount)
1342 dumpTextAnimationAmountAsAttribute(aTextAnimationAmount, xmlWriter);
1345 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextAnimationCount");
1346 sal_Int32 aTextAnimationCount = sal_Int32();
1347 if(anotherAny >>= aTextAnimationCount)
1348 dumpTextAnimationCountAsAttribute(aTextAnimationCount, xmlWriter);
1351 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextAnimationDelay");
1352 sal_Int32 aTextAnimationDelay = sal_Int32();
1353 if(anotherAny >>= aTextAnimationDelay)
1354 dumpTextAnimationDelayAsAttribute(aTextAnimationDelay, xmlWriter);
1357 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextAnimationDirection");
1358 drawing::TextAnimationDirection eTextAnimationDirection;
1359 if(anotherAny >>= eTextAnimationDirection)
1360 dumpTextAnimationDirectionAsAttribute(eTextAnimationDirection, xmlWriter);
1363 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextAnimationKind");
1364 drawing::TextAnimationKind eTextAnimationKind;
1365 if(anotherAny >>= eTextAnimationKind)
1366 dumpTextAnimationKindAsAttribute(eTextAnimationKind, xmlWriter);
1369 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextAnimationStartInside");
1370 bool bTextAnimationStartInside;
1371 if(anotherAny >>= bTextAnimationStartInside)
1372 dumpTextAnimationStartInsideAsAttribute(bTextAnimationStartInside, xmlWriter);
1375 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextAnimationStopInside");
1376 bool bTextAnimationStopInside;
1377 if(anotherAny >>= bTextAnimationStopInside)
1378 dumpTextAnimationStopInsideAsAttribute(bTextAnimationStopInside, xmlWriter);
1381 uno::Any anotherAny = xPropSet->getPropertyValue(
"TextWritingMode");
1382 text::WritingMode eTextWritingMode;
1383 if(anotherAny >>= eTextWritingMode)
1384 dumpTextWritingModeAsAttribute(eTextWritingMode, xmlWriter);
1388void dumpFillPropertiesService(
const uno::Reference< beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter)
1391 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillStyle");
1392 drawing::FillStyle eFillStyle;
1393 if(anotherAny >>= eFillStyle)
1394 dumpFillStyleAsAttribute(eFillStyle, xmlWriter);
1397 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillColor");
1398 sal_Int32 aColor = sal_Int32();
1399 if(anotherAny >>= aColor)
1400 dumpFillColorAsAttribute(aColor, xmlWriter);
1403 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillTransparence");
1404 sal_Int32 aTransparence = sal_Int32();
1405 if(anotherAny >>= aTransparence)
1406 dumpFillTransparenceAsAttribute(aTransparence, xmlWriter);
1409 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillTransparenceGradientName");
1410 OUString sTranspGradName;
1411 if(anotherAny >>= sTranspGradName)
1412 dumpFillTransparenceGradientNameAsAttribute(sTranspGradName, xmlWriter);
1415 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillTransparenceGradient");
1416 awt::Gradient aTranspGrad;
1417 if(anotherAny >>= aTranspGrad)
1418 dumpFillTransparenceGradientAsElement(aTranspGrad, xmlWriter);
1421 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillGradientName");
1423 if(anotherAny >>= sGradName)
1424 dumpFillGradientNameAsAttribute(sGradName, xmlWriter);
1427 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillGradient");
1428 awt::Gradient aGradient;
1429 if(anotherAny >>= aGradient)
1430 dumpFillGradientAsElement(aGradient, xmlWriter);
1433 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillHatchName");
1434 OUString sHatchName;
1435 if(anotherAny >>= sHatchName)
1436 dumpFillGradientNameAsAttribute(sHatchName, xmlWriter);
1439 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillHatch");
1440 drawing::Hatch aHatch;
1441 if(anotherAny >>= aHatch)
1442 dumpFillHatchAsElement(aHatch, xmlWriter);
1445 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBackground");
1446 bool bFillBackground;
1447 if(anotherAny >>= bFillBackground)
1448 dumpFillBackgroundAsAttribute(bFillBackground, xmlWriter);
1451 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapName");
1452 OUString sBitmapName;
1453 if(anotherAny >>= sBitmapName)
1454 dumpFillGradientNameAsAttribute(sBitmapName, xmlWriter);
1457 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmap");
1458 uno::Reference<awt::XBitmap> xBitmap;
1459 if(anotherAny >>= xBitmap)
1460 dumpFillBitmapAsElement(xBitmap, xmlWriter);
1463 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapPositionOffsetX");
1464 sal_Int32 aBitmapPositionOffsetX = sal_Int32();
1465 if(anotherAny >>= aBitmapPositionOffsetX)
1466 dumpFillBitmapPositionOffsetXAsAttribute(aBitmapPositionOffsetX, xmlWriter);
1469 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapPositionOffsetY");
1470 sal_Int32 aBitmapPositionOffsetY = sal_Int32();
1471 if(anotherAny >>= aBitmapPositionOffsetY)
1472 dumpFillBitmapPositionOffsetYAsAttribute(aBitmapPositionOffsetY, xmlWriter);
1475 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapOffsetX");
1476 sal_Int32 aBitmapOffsetX = sal_Int32();
1477 if(anotherAny >>= aBitmapOffsetX)
1478 dumpFillBitmapOffsetXAsAttribute(aBitmapOffsetX, xmlWriter);
1481 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapOffsetY");
1482 sal_Int32 aBitmapOffsetY = sal_Int32();
1483 if(anotherAny >>= aBitmapOffsetY)
1484 dumpFillBitmapOffsetYAsAttribute(aBitmapOffsetY, xmlWriter);
1487 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapRectanglePoint");
1488 drawing::RectanglePoint eBitmapRectanglePoint;
1489 if(anotherAny >>= eBitmapRectanglePoint)
1490 dumpFillBitmapRectanglePointAsAttribute(eBitmapRectanglePoint, xmlWriter);
1493 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapLogicalSize");
1494 bool bBitmapLogicalSize;
1495 if(anotherAny >>= bBitmapLogicalSize)
1496 dumpFillBitmapLogicalSizeAsAttribute(bBitmapLogicalSize, xmlWriter);
1499 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapSizeX");
1500 sal_Int32 aBitmapSizeX = sal_Int32();
1501 if(anotherAny >>= aBitmapSizeX)
1502 dumpFillBitmapSizeXAsAttribute(aBitmapSizeX, xmlWriter);
1505 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapSizeY");
1506 sal_Int32 aBitmapSizeY = sal_Int32();
1507 if(anotherAny >>= aBitmapSizeY)
1508 dumpFillBitmapSizeYAsAttribute(aBitmapSizeY, xmlWriter);
1511 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapMode");
1512 drawing::BitmapMode eBitmapMode;
1513 if(anotherAny >>= eBitmapMode)
1514 dumpFillBitmapModeAsAttribute(eBitmapMode, xmlWriter);
1517 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapStretch");
1518 bool bBitmapStretch;
1519 if(anotherAny >>= bBitmapStretch)
1520 dumpFillBitmapStretchAsAttribute(bBitmapStretch, xmlWriter);
1523 uno::Any anotherAny = xPropSet->getPropertyValue(
"FillBitmapTile");
1525 if(anotherAny >>= bBitmapTile)
1526 dumpFillBitmapTileAsAttribute(bBitmapTile, xmlWriter);
1530void dumpLinePropertiesService(
const uno::Reference< beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter)
1533 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineStyle");
1534 drawing::LineStyle eLineStyle;
1535 if(anotherAny >>= eLineStyle)
1536 dumpLineStyleAsAttribute(eLineStyle, xmlWriter);
1539 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineDash");
1540 drawing::LineDash aLineDash;
1541 if(anotherAny >>= aLineDash)
1542 dumpLineDashAsElement(aLineDash, xmlWriter);
1545 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineDashName");
1546 OUString sLineDashName;
1547 if(anotherAny >>= sLineDashName)
1548 dumpLineDashNameAsAttribute(sLineDashName, xmlWriter);
1551 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineColor");
1552 sal_Int32 aLineColor = sal_Int32();
1553 if(anotherAny >>= aLineColor)
1554 dumpLineColorAsAttribute(aLineColor, xmlWriter);
1557 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineTransparence");
1558 sal_Int32 aLineTransparence = sal_Int32();
1559 if(anotherAny >>= aLineTransparence)
1560 dumpLineTransparenceAsAttribute(aLineTransparence, xmlWriter);
1563 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineWidth");
1564 sal_Int32 aLineWidth = sal_Int32();
1565 if(anotherAny >>= aLineWidth)
1566 dumpLineWidthAsAttribute(aLineWidth, xmlWriter);
1569 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineJoint");
1570 drawing::LineJoint eLineJoint;
1571 if(anotherAny >>= eLineJoint)
1572 dumpLineJointAsAttribute(eLineJoint, xmlWriter);
1575 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineStartName");
1576 OUString sLineStartName;
1577 if(anotherAny >>= sLineStartName)
1578 dumpLineStartNameAsAttribute(sLineStartName, xmlWriter);
1581 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineEndName");
1582 OUString sLineEndName;
1583 if(anotherAny >>= sLineEndName)
1584 dumpLineEndNameAsAttribute(sLineEndName, xmlWriter);
1587 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineStart");
1588 drawing::PolyPolygonBezierCoords aLineStart;
1589 if(anotherAny >>= aLineStart)
1590 dumpLineStartAsElement(aLineStart, xmlWriter);
1593 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineEnd");
1594 drawing::PolyPolygonBezierCoords aLineEnd;
1595 if(anotherAny >>= aLineEnd)
1596 dumpLineEndAsElement(aLineEnd, xmlWriter);
1599 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineStartCenter");
1600 bool bLineStartCenter;
1601 if(anotherAny >>= bLineStartCenter)
1602 dumpLineStartCenterAsAttribute(bLineStartCenter, xmlWriter);
1605 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineStartWidth");
1606 sal_Int32 aLineStartWidth = sal_Int32();
1607 if(anotherAny >>= aLineStartWidth)
1608 dumpLineStartWidthAsAttribute(aLineStartWidth, xmlWriter);
1611 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineEndCenter");
1612 bool bLineEndCenter;
1613 if(anotherAny >>= bLineEndCenter)
1614 dumpLineEndCenterAsAttribute(bLineEndCenter, xmlWriter);
1617 uno::Any anotherAny = xPropSet->getPropertyValue(
"LineEndWidth");
1618 sal_Int32 aLineEndWidth = sal_Int32();
1619 if(anotherAny >>= aLineEndWidth)
1620 dumpLineEndWidthAsAttribute(aLineEndWidth, xmlWriter);
1624void dumpShadowPropertiesService(
const uno::Reference< beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter)
1627 uno::Any anotherAny = xPropSet->getPropertyValue(
"Shadow");
1629 if(anotherAny >>= bShadow)
1630 dumpShadowAsAttribute(bShadow, xmlWriter);
1633 uno::Any anotherAny = xPropSet->getPropertyValue(
"ShadowColor");
1634 sal_Int32 aShadowColor = sal_Int32();
1635 if(anotherAny >>= aShadowColor)
1636 dumpShadowColorAsAttribute(aShadowColor, xmlWriter);
1639 uno::Any anotherAny = xPropSet->getPropertyValue(
"ShadowTransparence");
1640 sal_Int32 aShadowTransparence = sal_Int32();
1641 if(anotherAny >>= aShadowTransparence)
1642 dumpShadowTransparenceAsAttribute(aShadowTransparence, xmlWriter);
1645 uno::Any anotherAny = xPropSet->getPropertyValue(
"ShadowXDistance");
1646 sal_Int32 aShadowXDistance = sal_Int32();
1647 if(anotherAny >>= aShadowXDistance)
1648 dumpShadowXDistanceAsAttribute(aShadowXDistance, xmlWriter);
1651 uno::Any anotherAny = xPropSet->getPropertyValue(
"ShadowYDistance");
1652 sal_Int32 aShadowYDistance = sal_Int32();
1653 if(anotherAny >>= aShadowYDistance)
1654 dumpShadowYDistanceAsAttribute(aShadowYDistance, xmlWriter);
1658void dumpPolyPolygonDescriptorService(
const uno::Reference< beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter)
1661 uno::Any anotherAny = xPropSet->getPropertyValue(
"PolygonKind");
1662 drawing::PolygonKind ePolygonKind;
1663 if(anotherAny >>= ePolygonKind)
1664 dumpPolygonKindAsAttribute(ePolygonKind, xmlWriter);
1667 uno::Any anotherAny = xPropSet->getPropertyValue(
"PolyPolygon");
1668 drawing::PointSequenceSequence aPolyPolygon;
1669 if(anotherAny >>= aPolyPolygon)
1670 dumpPolyPolygonAsElement(aPolyPolygon, xmlWriter);
1673 uno::Any anotherAny = xPropSet->getPropertyValue(
"Geometry");
1674 drawing::PointSequenceSequence aGeometry;
1675 if(anotherAny >>= aGeometry)
1676 dumpGeometryAsElement(aGeometry, xmlWriter);
1680void dumpShapeService(
const uno::Reference< beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter,
bool bDumpInteropProperties)
1682 uno::Reference< beans::XPropertySetInfo> xInfo = xPropSet->getPropertySetInfo();
1684 uno::Any anotherAny = xPropSet->getPropertyValue(
"ZOrder");
1685 sal_Int32 aZOrder = sal_Int32();
1686 if(anotherAny >>= aZOrder)
1687 dumpZOrderAsAttribute(aZOrder, xmlWriter);
1690 uno::Any anotherAny = xPropSet->getPropertyValue(
"LayerID");
1691 sal_Int32 aLayerID = sal_Int32();
1692 if(anotherAny >>= aLayerID)
1693 dumpLayerIDAsAttribute(aLayerID, xmlWriter);
1696 uno::Any anotherAny = xPropSet->getPropertyValue(
"LayerName");
1697 OUString sLayerName;
1698 if(anotherAny >>= sLayerName)
1699 dumpLayerNameAsAttribute(sLayerName, xmlWriter);
1702 uno::Any anotherAny = xPropSet->getPropertyValue(
"Visible");
1705 dumpVisibleAsAttribute(
bVisible, xmlWriter);
1708 uno::Any anotherAny = xPropSet->getPropertyValue(
"Printable");
1710 if(anotherAny >>= bPrintable)
1711 dumpPrintableAsAttribute(bPrintable, xmlWriter);
1714 uno::Any anotherAny = xPropSet->getPropertyValue(
"MoveProtect");
1716 if(anotherAny >>= bMoveProtect)
1717 dumpMoveProtectAsAttribute(bMoveProtect, xmlWriter);
1720 uno::Any anotherAny = xPropSet->getPropertyValue(
"Name");
1722 if(anotherAny >>=
sName)
1723 dumpNameAsAttribute(
sName, xmlWriter);
1726 uno::Any anotherAny = xPropSet->getPropertyValue(
"SizeProtect");
1728 if(anotherAny >>= bSizeProtect)
1729 dumpSizeProtectAsAttribute(bSizeProtect, xmlWriter);
1732 uno::Any anotherAny = xPropSet->getPropertyValue(
"Transformation");
1733 drawing::HomogenMatrix3 aTransformation;
1734 if(anotherAny >>= aTransformation)
1735 dumpTransformationAsElement(aTransformation, xmlWriter);
1738 uno::Any anotherAny = xPropSet->getPropertyValue(
"NavigationOrder");
1739 sal_Int32 aNavigationOrder = sal_Int32();
1740 if(anotherAny >>= aNavigationOrder)
1741 dumpNavigationOrderAsAttribute(aNavigationOrder, xmlWriter);
1743 if(xInfo->hasPropertyByName(
"Hyperlink"))
1745 uno::Any anotherAny = xPropSet->getPropertyValue(
"Hyperlink");
1746 OUString sHyperlink;
1747 if(anotherAny >>= sHyperlink)
1748 dumpHyperlinkAsAttribute(sHyperlink, xmlWriter);
1750 if(xInfo->hasPropertyByName(
"InteropGrabBag") && bDumpInteropProperties)
1752 uno::Any anotherAny = xPropSet->getPropertyValue(
"InteropGrabBag");
1753 uno::Sequence< beans::PropertyValue> aInteropGrabBag;
1754 if(anotherAny >>= aInteropGrabBag)
1755 dumpInteropGrabBagAsElement(aInteropGrabBag, xmlWriter);
1759void dumpPolyPolygonBezierDescriptorService(
const uno::Reference< beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter)
1762 uno::Any anotherAny = xPropSet->getPropertyValue(
"PolygonKind");
1763 drawing::PolygonKind ePolygonKind;
1764 if(anotherAny >>= ePolygonKind)
1765 dumpPolygonKindAsAttribute(ePolygonKind, xmlWriter);
1768 uno::Any anotherAny = xPropSet->getPropertyValue(
"PolyPolygonBezier");
1769 drawing::PolyPolygonBezierCoords aPolyPolygonBezier;
1770 if(anotherAny >>= aPolyPolygonBezier)
1771 dumpPolyPolygonBezierCoords(aPolyPolygonBezier, xmlWriter);
1774 uno::Any anotherAny = xPropSet->getPropertyValue(
"Geometry");
1775 drawing::PolyPolygonBezierCoords aGeometry;
1776 if(anotherAny >>= aGeometry)
1777 dumpPolyPolygonBezierCoords(aGeometry, xmlWriter);
1781void dumpCustomShapeService(
const uno::Reference< beans::XPropertySet >& xPropSet,
xmlTextWriterPtr xmlWriter)
1783 uno::Reference< beans::XPropertySetInfo> xInfo = xPropSet->getPropertySetInfo();
1785 uno::Any anotherAny = xPropSet->getPropertyValue(
"CustomShapeEngine");
1786 OUString sCustomShapeEngine;
1787 if(anotherAny >>= sCustomShapeEngine)
1788 dumpCustomShapeEngineAsAttribute(sCustomShapeEngine, xmlWriter);
1791 uno::Any anotherAny = xPropSet->getPropertyValue(
"CustomShapeData");
1792 OUString sCustomShapeData;
1793 if(anotherAny >>= sCustomShapeData)
1794 dumpCustomShapeDataAsAttribute(sCustomShapeData, xmlWriter);
1797 uno::Any anotherAny = xPropSet->getPropertyValue(
"CustomShapeGeometry");
1798 uno::Sequence< beans::PropertyValue> aCustomShapeGeometry;
1799 if(anotherAny >>= aCustomShapeGeometry)
1800 dumpCustomShapeGeometryAsElement(aCustomShapeGeometry, xmlWriter);
1802 if(xInfo->hasPropertyByName(
"CustomShapeReplacementURL"))
1804 uno::Any anotherAny = xPropSet->getPropertyValue(
"CustomShapeReplacementURL");
1805 OUString sCustomShapeReplacementURL;
1806 if(anotherAny >>= sCustomShapeReplacementURL)
1807 dumpCustomShapeReplacementURLAsAttribute(sCustomShapeReplacementURL, xmlWriter);
1811void dumpXShape(
const uno::Reference< drawing::XShape >& xShape,
xmlTextWriterPtr xmlWriter,
bool bDumpInteropProperties)
1813 (void)xmlTextWriterStartElement( xmlWriter, BAD_CAST(
"XShape" ) );
1814 uno::Reference< beans::XPropertySet > xPropSet(xShape, uno::UNO_QUERY_THROW);
1816 m_bNameDumped =
false;
1818 dumpPositionAsAttribute(xShape->getPosition(), xmlWriter);
1819 dumpSizeAsAttribute(xShape->getSize(), xmlWriter);
1820 uno::Reference< drawing::XShapeDescriptor > xDescr(xShape, uno::UNO_QUERY_THROW);
1821 dumpShapeDescriptorAsAttribute(xDescr, xmlWriter);
1825 uno::Reference< lang::XServiceInfo > xServiceInfo( xShape, uno::UNO_QUERY_THROW );
1827 uno::Reference< beans::XPropertySetInfo> xInfo = xPropSet->getPropertySetInfo();
1828 if(xInfo->hasPropertyByName(
"Name"))
1830 uno::Any aAny = xPropSet->getPropertyValue(
"Name");
1833 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"name"),
"%s",
OUStringToOString(
aName, RTL_TEXTENCODING_UTF8).getStr());
1834 m_bNameDumped =
true;
1840 if (xServiceInfo->supportsService(
"com.sun.star.drawing.Text"))
1842 uno::Reference< text::XText > xText(xShape, uno::UNO_QUERY_THROW);
1843 OUString aText = xText->getString();
1844 if(!aText.isEmpty())
1845 (void)xmlTextWriterWriteFormatAttribute( xmlWriter, BAD_CAST(
"text"),
"%s",
OUStringToOString(aText, RTL_TEXTENCODING_UTF8).getStr());
1847 if(xServiceInfo->supportsService(
"com.sun.star.drawing.TextProperties"))
1848 dumpTextPropertiesService(xPropSet, xmlWriter);
1850 if(xServiceInfo->supportsService(
"com.sun.star.drawing.GroupShape"))
1852 uno::Reference< drawing::XShapes > xShapes(xShape, uno::UNO_QUERY_THROW);
1853 dumpXShapes(xShapes, xmlWriter, bDumpInteropProperties);
1855 if(xServiceInfo->supportsService(
"com.sun.star.drawing.FillProperties"))
1856 dumpFillPropertiesService(xPropSet, xmlWriter);
1858 if(xServiceInfo->supportsService(
"com.sun.star.drawing.LineProperties"))
1859 dumpLinePropertiesService(xPropSet, xmlWriter);
1861 if(xServiceInfo->supportsService(
"com.sun.star.drawing.PolyPolygonDescriptor"))
1862 dumpPolyPolygonDescriptorService(xPropSet, xmlWriter);
1864 if(xServiceInfo->supportsService(
"com.sun.star.drawing.ShadowProperties"))
1865 dumpShadowPropertiesService(xPropSet, xmlWriter);
1867 if(xServiceInfo->supportsService(
"com.sun.star.drawing.Shape"))
1868 dumpShapeService(xPropSet, xmlWriter, bDumpInteropProperties);
1870 if(xServiceInfo->supportsService(
"com.sun.star.drawing.PolyPolygonBezierDescriptor"))
1871 dumpPolyPolygonBezierDescriptorService(xPropSet, xmlWriter);
1873 if(xServiceInfo->supportsService(
"com.sun.star.drawing.CustomShape"))
1874 dumpCustomShapeService(xPropSet, xmlWriter);
1878 if(xServiceInfo->supportsService(
"com.sun.star.drawing.EnhancedCustomShapeExtrusion"))
1883 if(xServiceInfo->supportsService(
"com.sun.star.drawing.EnhancedCustomShapeGeometry"))
1888 if(xServiceInfo->supportsService(
"com.sun.star.drawing.EnhancedCustomShapeHandle"))
1893 if(xServiceInfo->supportsService(
"com.sun.star.drawing.EnhancedCustomShapePath"))
1898 if(xServiceInfo->supportsService(
"com.sun.star.drawing.EnhancedCustomShapeTextPath"))
1904 catch (
const beans::UnknownPropertyException& e)
1906 std::cout <<
"Exception caught in XShapeDumper.cxx: " << e.Message << std::endl;
1910 uno::Sequence< OUString >
aServiceNames = xServiceInfo->getSupportedServiceNames();
1912 for (sal_Int32
i = 0;
i < nServices; ++
i)
1914 (void)xmlTextWriterStartElement(xmlWriter, BAD_CAST(
"ServiceName" ));
1916 (void)xmlTextWriterEndElement( xmlWriter );
1920 (void)xmlTextWriterEndElement( xmlWriter );
1923void dumpXShapes(
const uno::Reference< drawing::XShapes >& xShapes,
xmlTextWriterPtr xmlWriter,
bool bDumpInteropProperties )
1925 (void)xmlTextWriterStartElement( xmlWriter, BAD_CAST(
"XShapes" ) );
1926 uno::Reference< container::XIndexAccess > xIA( xShapes, uno::UNO_QUERY_THROW);
1927 sal_Int32
nLength = xIA->getCount();
1930 uno::Reference< drawing::XShape > xShape( xIA->getByIndex(
i ), uno::UNO_QUERY_THROW );
1931 dumpXShape( xShape, xmlWriter, bDumpInteropProperties );
1934 (void)xmlTextWriterEndElement( xmlWriter );
1938OUString
XShapeDumper::dump(
const uno::Reference<drawing::XShapes>& xPageShapes,
bool bDumpInteropProperties)
1940 OStringBuffer aString;
1941 xmlOutputBufferPtr xmlOutBuffer = xmlOutputBufferCreateIO( writeCallback, closeCallback, &aString,
nullptr );
1943 xmlTextWriterSetIndent( xmlWriter, 1 );
1945 (void)xmlTextWriterStartDocument( xmlWriter,
nullptr,
nullptr,
nullptr );
1949 dumpXShapes( xPageShapes, xmlWriter, bDumpInteropProperties );
1951 catch (
const beans::UnknownPropertyException& e)
1953 std::cout <<
"Exception caught in XShapeDumper: " << e.Message << std::endl;
1956 (void)xmlTextWriterEndDocument( xmlWriter );
1957 xmlFreeTextWriter( xmlWriter );
1959 return OUString::fromUtf8(aString);
1962OUString
XShapeDumper::dump(
const uno::Reference<drawing::XShape>& xPageShapes,
bool bDumpInteropProperties)
1964 OStringBuffer aString;
1965 xmlOutputBufferPtr xmlOutBuffer = xmlOutputBufferCreateIO( writeCallback, closeCallback, &aString,
nullptr );
1967 xmlTextWriterSetIndent( xmlWriter, 1 );
1969 (void)xmlTextWriterStartDocument( xmlWriter,
nullptr,
nullptr,
nullptr );
1973 dumpXShape( xPageShapes, xmlWriter, bDumpInteropProperties );
1975 catch (
const beans::UnknownPropertyException& e)
1977 std::cout <<
"Exception caught in XShapeDumper: " << e.Message << std::endl;
1980 (void)xmlTextWriterEndDocument( xmlWriter );
1981 xmlFreeTextWriter( xmlWriter );
1983 return OUString::fromUtf8(aString);
void dumpEnhancedCustomShapeHandleService(const css::uno::Reference< css::beans::XPropertySet > &xPropSet)
void dumpAdjustmentValuesAsElement(const css::uno::Sequence< css::drawing::EnhancedCustomShapeAdjustmentValue > &aAdjustmentValues)
void dumpCoordinatesAsElement(const css::uno::Sequence< css::drawing::EnhancedCustomShapeParameterPair > &aCoordinates)
void dumpSegmentsAsElement(const css::uno::Sequence< css::drawing::EnhancedCustomShapeSegment > &aSegments)
void dumpEnhancedCustomShapePathService(const css::uno::Reference< css::beans::XPropertySet > &xPropSet)
void dumpEnhancedCustomShapeGeometryService(const css::uno::Reference< css::beans::XPropertySet > &xPropSet)
void dumpViewBoxAsElement(css::awt::Rectangle aViewBox)
void dumpEnhancedCustomShapeTextPathService(const css::uno::Reference< css::beans::XPropertySet > &xPropSet)
void dumpEnhancedCustomShapeExtrusionService(const css::uno::Reference< css::beans::XPropertySet > &xPropSet)
Sequence< OUString > aServiceNames
struct _xmlTextWriter * xmlTextWriterPtr
OString OUStringToOString(std::u16string_view str, ConnectionSettings const *settings)
static OUString dump(const css::uno::Reference< css::drawing::XShapes > &xPageShapes, bool bDumpInteropProperties=false)
std::vector< ISegmentProgressBarRef > aSegments