LibreOffice Module xmloff (master) 1
Classes | Namespaces | Functions | Variables
shapeexport.cxx File Reference
#include <config_wasm_strip.h>
#include <basegfx/matrix/b2dhommatrix.hxx>
#include <basegfx/matrix/b3dhommatrix.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
#include <basegfx/polygon/b2dpolypolygontools.hxx>
#include <basegfx/polygon/b2dpolygontools.hxx>
#include <basegfx/polygon/b3dpolypolygon.hxx>
#include <basegfx/polygon/b3dpolypolygontools.hxx>
#include <basegfx/tuple/b2dtuple.hxx>
#include <basegfx/vector/b3dvector.hxx>
#include <com/sun/star/beans/XPropertyState.hpp>
#include <com/sun/star/beans/PropertyValues.hpp>
#include <com/sun/star/container/XChild.hpp>
#include <com/sun/star/container/XEnumerationAccess.hpp>
#include <com/sun/star/container/XIdentifierAccess.hpp>
#include <com/sun/star/container/XNamed.hpp>
#include <com/sun/star/document/XEventsSupplier.hpp>
#include <com/sun/star/drawing/Alignment.hpp>
#include <com/sun/star/drawing/CameraGeometry.hpp>
#include <com/sun/star/drawing/CircleKind.hpp>
#include <com/sun/star/drawing/ConnectorType.hpp>
#include <com/sun/star/drawing/Direction3D.hpp>
#include <com/sun/star/drawing/EscapeDirection.hpp>
#include <com/sun/star/drawing/EnhancedCustomShapeAdjustmentValue.hpp>
#include <com/sun/star/drawing/EnhancedCustomShapeGluePointType.hpp>
#include <com/sun/star/drawing/EnhancedCustomShapeParameterPair.hpp>
#include <com/sun/star/drawing/EnhancedCustomShapeParameterType.hpp>
#include <com/sun/star/drawing/EnhancedCustomShapeMetalType.hpp>
#include <com/sun/star/drawing/EnhancedCustomShapeSegment.hpp>
#include <com/sun/star/drawing/EnhancedCustomShapeSegmentCommand.hpp>
#include <com/sun/star/drawing/EnhancedCustomShapeTextFrame.hpp>
#include <com/sun/star/drawing/EnhancedCustomShapeTextPathMode.hpp>
#include <com/sun/star/drawing/GluePoint2.hpp>
#include <com/sun/star/drawing/HomogenMatrix.hpp>
#include <com/sun/star/drawing/HomogenMatrix3.hpp>
#include <com/sun/star/drawing/PolyPolygonBezierCoords.hpp>
#include <com/sun/star/drawing/PolyPolygonShape3D.hpp>
#include <com/sun/star/drawing/Position3D.hpp>
#include <com/sun/star/drawing/ProjectionMode.hpp>
#include <com/sun/star/drawing/ShadeMode.hpp>
#include <com/sun/star/drawing/XControlShape.hpp>
#include <com/sun/star/drawing/XCustomShapeEngine.hpp>
#include <com/sun/star/drawing/XGluePointsSupplier.hpp>
#include <com/sun/star/drawing/BarCode.hpp>
#include <com/sun/star/drawing/BarCodeErrorCorrection.hpp>
#include <com/sun/star/drawing/XShapes3.hpp>
#include <com/sun/star/embed/ElementModes.hpp>
#include <com/sun/star/embed/XStorage.hpp>
#include <com/sun/star/embed/XTransactedObject.hpp>
#include <com/sun/star/graphic/XGraphic.hpp>
#include <com/sun/star/graphic/GraphicProvider.hpp>
#include <com/sun/star/graphic/XGraphicProvider.hpp>
#include <com/sun/star/io/XSeekableInputStream.hpp>
#include <com/sun/star/io/XStream.hpp>
#include <com/sun/star/lang/ServiceNotRegisteredException.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/media/ZoomLevel.hpp>
#include <com/sun/star/presentation/AnimationSpeed.hpp>
#include <com/sun/star/presentation/ClickAction.hpp>
#include <com/sun/star/style/XStyle.hpp>
#include <com/sun/star/table/XColumnRowRange.hpp>
#include <com/sun/star/text/XText.hpp>
#include <comphelper/classids.hxx>
#include <comphelper/processfactory.hxx>
#include <comphelper/propertyvalue.hxx>
#include <comphelper/storagehelper.hxx>
#include <officecfg/Office/Common.hxx>
#include <o3tl/any.hxx>
#include <o3tl/typed_flags_set.hxx>
#include <o3tl/string_view.hxx>
#include <rtl/math.hxx>
#include <rtl/ustrbuf.hxx>
#include <rtl/ustring.hxx>
#include <sal/log.hxx>
#include <sax/tools/converter.hxx>
#include <tools/debug.hxx>
#include <tools/globname.hxx>
#include <tools/helpers.hxx>
#include <tools/diagnose_ex.h>
#include <xmloff/contextid.hxx>
#include <xmloff/families.hxx>
#include <xmloff/namespacemap.hxx>
#include <xmloff/shapeexport.hxx>
#include <xmloff/unointerfacetouniqueidentifiermapper.hxx>
#include <xmloff/xmlexp.hxx>
#include <xmloff/xmlnamespace.hxx>
#include <xmloff/xmltoken.hxx>
#include <xmloff/xmluconv.hxx>
#include <xmloff/table/XMLTableExport.hxx>
#include <xmloff/ProgressBarHelper.hxx>
#include <anim.hxx>
#include <EnhancedCustomShapeToken.hxx>
#include "sdpropls.hxx"
#include <xexptran.hxx>
#include "ximpshap.hxx"
#include <XMLBase64Export.hxx>
#include <XMLImageMapExport.hxx>
#include <memory>
Include dependency graph for shapeexport.cxx:

Go to the source code of this file.

Classes

struct  o3tl::typed_flags< Found >
 

Namespaces

namespace  xmloff
 
namespace  o3tl
 

Functions

constexpr OUStringLiteral gsZIndex (u"ZOrder")
 
constexpr OUStringLiteral gsPrintable (u"Printable")
 
constexpr OUStringLiteral gsVisible (u"Visible")
 
constexpr OUStringLiteral gsModel (u"Model")
 
constexpr OUStringLiteral gsStartShape (u"StartShape")
 
constexpr OUStringLiteral gsEndShape (u"EndShape")
 
constexpr OUStringLiteral gsOnClick (u"OnClick")
 
constexpr OUStringLiteral gsEventType (u"EventType")
 
constexpr OUStringLiteral gsPresentation (u"Presentation")
 
constexpr OUStringLiteral gsMacroName (u"MacroName")
 
constexpr OUStringLiteral gsScript (u"Script")
 
constexpr OUStringLiteral gsLibrary (u"Library")
 
constexpr OUStringLiteral gsClickAction (u"ClickAction")
 
constexpr OUStringLiteral gsBookmark (u"Bookmark")
 
constexpr OUStringLiteral gsEffect (u"Effect")
 
constexpr OUStringLiteral gsPlayFull (u"PlayFull")
 
constexpr OUStringLiteral gsVerb (u"Verb")
 
constexpr OUStringLiteral gsSoundURL (u"SoundURL")
 
constexpr OUStringLiteral gsSpeed (u"Speed")
 
constexpr OUStringLiteral gsStarBasic (u"StarBasic")
 
constexpr OUStringLiteral gsHyperlink (u"Hyperlink")
 
void xmloff::FixZOrder (uno::Reference< drawing::XShapes > const &xShapes, std::function< unsigned int(uno::Reference< beans::XPropertySet > const &)> const &rGetLayer)
 
static void lcl_CopyStream (uno::Reference< io::XInputStream > const &xInStream, uno::Reference< embed::XStorage > const &xTarget, OUString const &rPath, const OUString &rMimeType)
 
static OUString lcl_StoreMediaAndGetURL (SvXMLExport &rExport, uno::Reference< beans::XPropertySet > const &xPropSet, OUString const &rURL, const OUString &rMimeType)
 
static void ExportParameter (OUStringBuffer &rStrBuffer, const css::drawing::EnhancedCustomShapeParameter &rParameter)
 
static void ImpExportEquations (SvXMLExport &rExport, const uno::Sequence< OUString > &rEquations)
 
static void ImpExportHandles (SvXMLExport &rExport, const uno::Sequence< beans::PropertyValues > &rHandles)
 
static void ImpExportEnhancedPath (SvXMLExport &rExport, const uno::Sequence< css::drawing::EnhancedCustomShapeParameterPair > &rCoordinates, const uno::Sequence< css::drawing::EnhancedCustomShapeSegment > &rSegments, bool bExtended=false)
 
static void ImpExportEnhancedGeometry (SvXMLExport &rExport, const uno::Reference< beans::XPropertySet > &xPropSet)
 

Variables

constexpr OUStringLiteral XML_EMBEDDEDOBJECTGRAPHIC_URL_BASE = u"vnd.sun.star.GraphicObject:"
 

Function Documentation

◆ ExportParameter()

static void ExportParameter ( OUStringBuffer &  rStrBuffer,
const css::drawing::EnhancedCustomShapeParameter &  rParameter 
)
static

◆ gsBookmark()

constexpr OUStringLiteral gsBookmark ( u"Bookmark"  )
constexpr

◆ gsClickAction()

constexpr OUStringLiteral gsClickAction ( u"ClickAction"  )
constexpr

◆ gsEffect()

constexpr OUStringLiteral gsEffect ( u"Effect"  )
constexpr

◆ gsEndShape()

constexpr OUStringLiteral gsEndShape ( u"EndShape"  )
constexpr

◆ gsEventType()

constexpr OUStringLiteral gsEventType ( u"EventType"  )
constexpr

◆ gsHyperlink()

constexpr OUStringLiteral gsHyperlink ( u"Hyperlink"  )
constexpr

◆ gsLibrary()

constexpr OUStringLiteral gsLibrary ( u"Library"  )
constexpr

◆ gsMacroName()

constexpr OUStringLiteral gsMacroName ( u"MacroName"  )
constexpr

◆ gsModel()

constexpr OUStringLiteral gsModel ( u"Model"  )
constexpr

◆ gsOnClick()

constexpr OUStringLiteral gsOnClick ( u"OnClick"  )
constexpr

◆ gsPlayFull()

constexpr OUStringLiteral gsPlayFull ( u"PlayFull"  )
constexpr

◆ gsPresentation()

constexpr OUStringLiteral gsPresentation ( u"Presentation"  )
constexpr

◆ gsPrintable()

constexpr OUStringLiteral gsPrintable ( u"Printable"  )
constexpr

◆ gsScript()

constexpr OUStringLiteral gsScript ( u"Script"  )
constexpr

◆ gsSoundURL()

constexpr OUStringLiteral gsSoundURL ( u"SoundURL"  )
constexpr

◆ gsSpeed()

constexpr OUStringLiteral gsSpeed ( u"Speed"  )
constexpr

◆ gsStarBasic()

constexpr OUStringLiteral gsStarBasic ( u"StarBasic"  )
constexpr

◆ gsStartShape()

constexpr OUStringLiteral gsStartShape ( u"StartShape"  )
constexpr

◆ gsVerb()

constexpr OUStringLiteral gsVerb ( u"Verb"  )
constexpr

◆ gsVisible()

constexpr OUStringLiteral gsVisible ( u"Visible"  )
constexpr

◆ gsZIndex()

constexpr OUStringLiteral gsZIndex ( u"ZOrder"  )
constexpr

◆ ImpExportEnhancedGeometry()

static void ImpExportEnhancedGeometry ( SvXMLExport rExport,
const uno::Reference< beans::XPropertySet > &  xPropSet 
)
static

Definition at line 4214 of file shapeexport.cxx.

References SvXMLExport::AddAttribute(), aSegments, aStr, SvXMLUnitConverter::convertB3DVector(), SvXMLUnitConverter::convertDouble(), sax::Converter::convertDouble(), SvXMLUnitConverter::convertPosition3D(), xmloff::EnhancedCustomShapeToken::EAS_AdjustmentValues, xmloff::EnhancedCustomShapeToken::EAS_Brightness, xmloff::EnhancedCustomShapeToken::EAS_Color, xmloff::EnhancedCustomShapeToken::EAS_ConcentricGradientFillAllowed, xmloff::EnhancedCustomShapeToken::EAS_Coordinates, xmloff::EnhancedCustomShapeToken::EAS_Depth, xmloff::EnhancedCustomShapeToken::EAS_Diffusion, xmloff::EnhancedCustomShapeToken::EAS_Equations, xmloff::EnhancedCustomShapeToken::EAS_Extrusion, xmloff::EnhancedCustomShapeToken::EAS_ExtrusionAllowed, xmloff::EnhancedCustomShapeToken::EAS_FirstLightDirection, xmloff::EnhancedCustomShapeToken::EAS_FirstLightHarsh, xmloff::EnhancedCustomShapeToken::EAS_FirstLightLevel, xmloff::EnhancedCustomShapeToken::EAS_GluePoints, xmloff::EnhancedCustomShapeToken::EAS_GluePointType, xmloff::EnhancedCustomShapeToken::EAS_Handles, xmloff::EnhancedCustomShapeToken::EAS_LightFace, xmloff::EnhancedCustomShapeToken::EAS_Metal, xmloff::EnhancedCustomShapeToken::EAS_MetalType, xmloff::EnhancedCustomShapeToken::EAS_MirroredX, xmloff::EnhancedCustomShapeToken::EAS_MirroredY, xmloff::EnhancedCustomShapeToken::EAS_NumberOfLineSegments, xmloff::EnhancedCustomShapeToken::EAS_Origin, xmloff::EnhancedCustomShapeToken::EAS_Path, xmloff::EnhancedCustomShapeToken::EAS_ProjectionMode, xmloff::EnhancedCustomShapeToken::EAS_RotateAngle, xmloff::EnhancedCustomShapeToken::EAS_RotationCenter, xmloff::EnhancedCustomShapeToken::EAS_SameLetterHeights, xmloff::EnhancedCustomShapeToken::EAS_ScaleX, xmloff::EnhancedCustomShapeToken::EAS_SecondLightDirection, xmloff::EnhancedCustomShapeToken::EAS_SecondLightHarsh, xmloff::EnhancedCustomShapeToken::EAS_SecondLightLevel, xmloff::EnhancedCustomShapeToken::EAS_Segments, xmloff::EnhancedCustomShapeToken::EAS_ShadeMode, xmloff::EnhancedCustomShapeToken::EAS_Shininess, xmloff::EnhancedCustomShapeToken::EAS_Skew, xmloff::EnhancedCustomShapeToken::EAS_Specularity, xmloff::EnhancedCustomShapeToken::EAS_StretchX, xmloff::EnhancedCustomShapeToken::EAS_StretchY, xmloff::EnhancedCustomShapeToken::EAS_SubViewSize, xmloff::EnhancedCustomShapeToken::EAS_TextFrames, xmloff::EnhancedCustomShapeToken::EAS_TextPath, xmloff::EnhancedCustomShapeToken::EAS_TextPathAllowed, xmloff::EnhancedCustomShapeToken::EAS_TextPathMode, xmloff::EnhancedCustomShapeToken::EAS_TextPreRotateAngle, xmloff::EnhancedCustomShapeToken::EAS_TextRotateAngle, xmloff::EnhancedCustomShapeToken::EAS_Type, xmloff::EnhancedCustomShapeToken::EAS_ViewBox, xmloff::EnhancedCustomShapeToken::EAS_ViewPoint, xmloff::EnhancedCustomShapeToken::EASGet(), ExportParameter(), SdXMLImExViewBox::GetExportString(), SvXMLExport::GetMM100UnitConverter(), SvXMLExport::getSaneDefaultVersion(), xmloff::token::GetXMLToken(), Height, i, ImpExportEnhancedPath(), ImpExportEquations(), ImpExportHandles(), nValue, SvtSaveOptions::ODFSVER_012, SvtSaveOptions::ODFSVER_013, SvtSaveOptions::ODFSVER_EXTENDED, u, Width, xmloff::token::XML_CONCENTRIC_GRADIENT_FILL_ALLOWED, xmloff::token::XML_DRAFT, xmloff::token::XML_ENHANCED_GEOMETRY, xmloff::token::XML_EXTRUSION, xmloff::token::XML_EXTRUSION_ALLOWED, xmloff::token::XML_EXTRUSION_BRIGHTNESS, xmloff::token::XML_EXTRUSION_COLOR, xmloff::token::XML_EXTRUSION_DEPTH, xmloff::token::XML_EXTRUSION_DIFFUSION, xmloff::token::XML_EXTRUSION_FIRST_LIGHT_DIRECTION, xmloff::token::XML_EXTRUSION_FIRST_LIGHT_HARSH, xmloff::token::XML_EXTRUSION_FIRST_LIGHT_LEVEL, xmloff::token::XML_EXTRUSION_LIGHT_FACE, xmloff::token::XML_EXTRUSION_METAL, xmloff::token::XML_EXTRUSION_METAL_TYPE, xmloff::token::XML_EXTRUSION_NUMBER_OF_LINE_SEGMENTS, xmloff::token::XML_EXTRUSION_ORIGIN, xmloff::token::XML_EXTRUSION_ROTATION_ANGLE, xmloff::token::XML_EXTRUSION_ROTATION_CENTER, xmloff::token::XML_EXTRUSION_SECOND_LIGHT_DIRECTION, xmloff::token::XML_EXTRUSION_SECOND_LIGHT_HARSH, xmloff::token::XML_EXTRUSION_SECOND_LIGHT_LEVEL, xmloff::token::XML_EXTRUSION_SHININESS, xmloff::token::XML_EXTRUSION_SKEW, xmloff::token::XML_EXTRUSION_SPECULARITY, xmloff::token::XML_EXTRUSION_SPECULARITY_LOEXT, xmloff::token::XML_EXTRUSION_VIEWPOINT, xmloff::token::XML_FALSE, xmloff::token::XML_FLAT, xmloff::token::XML_GLUE_POINT_TYPE, xmloff::token::XML_GLUE_POINTS, xmloff::token::XML_GOURAUD, xmloff::token::XML_MIRROR_HORIZONTAL, xmloff::token::XML_MIRROR_VERTICAL, xmloff::token::XML_MODIFIERS, XML_NAMESPACE_DR3D, XML_NAMESPACE_DRAW, XML_NAMESPACE_DRAW_EXT, XML_NAMESPACE_LO_EXT, XML_NAMESPACE_SVG, xmloff::token::XML_NONE, xmloff::token::XML_NORMAL, xmloff::token::XML_PARALLEL, xmloff::token::XML_PATH, xmloff::token::XML_PATH_STRETCHPOINT_X, xmloff::token::XML_PATH_STRETCHPOINT_Y, xmloff::token::XML_PERSPECTIVE, xmloff::token::XML_PHONG, xmloff::token::XML_PROJECTION, xmloff::token::XML_RECTANGLE, xmloff::token::XML_SEGMENTS, xmloff::token::XML_SHADE_MODE, xmloff::token::XML_SHAPE, xmloff::token::XML_SUB_VIEW_SIZE, xmloff::token::XML_TEXT_AREAS, xmloff::token::XML_TEXT_PATH, xmloff::token::XML_TEXT_PATH_ALLOWED, xmloff::token::XML_TEXT_PATH_MODE, xmloff::token::XML_TEXT_PATH_SAME_LETTER_HEIGHTS, xmloff::token::XML_TEXT_PATH_SCALE, xmloff::token::XML_TEXT_ROTATE_ANGLE, xmloff::token::XML_TRUE, xmloff::token::XML_TYPE, and xmloff::token::XML_VIEWBOX.

Referenced by XMLShapeExport::ImpExportCustomShape().

◆ ImpExportEnhancedPath()

static void ImpExportEnhancedPath ( SvXMLExport rExport,
const uno::Sequence< css::drawing::EnhancedCustomShapeParameterPair > &  rCoordinates,
const uno::Sequence< css::drawing::EnhancedCustomShapeSegment > &  rSegments,
bool  bExtended = false 
)
static

◆ ImpExportEquations()

static void ImpExportEquations ( SvXMLExport rExport,
const uno::Sequence< OUString > &  rEquations 
)
static

◆ ImpExportHandles()

static void ImpExportHandles ( SvXMLExport rExport,
const uno::Sequence< beans::PropertyValues > &  rHandles 
)
static

◆ lcl_CopyStream()

static void lcl_CopyStream ( uno::Reference< io::XInputStream > const &  xInStream,
uno::Reference< embed::XStorage > const &  xTarget,
OUString const &  rPath,
const OUString &  rMimeType 
)
static

◆ lcl_StoreMediaAndGetURL()

static OUString lcl_StoreMediaAndGetURL ( SvXMLExport rExport,
uno::Reference< beans::XPropertySet > const &  xPropSet,
OUString const &  rURL,
const OUString &  rMimeType 
)
static

Variable Documentation

◆ XML_EMBEDDEDOBJECTGRAPHIC_URL_BASE

constexpr OUStringLiteral XML_EMBEDDEDOBJECTGRAPHIC_URL_BASE = u"vnd.sun.star.GraphicObject:"
constexpr

Definition at line 132 of file shapeexport.cxx.

Referenced by XMLShapeExport::ImpExportOLE2Shape().