49 SAL_INFO(
"drawinglayer.emf",
"EMF+\t Region node data type 0x" << std::hex << dataType << std::dec);
68 SAL_INFO(
"drawinglayer.emf",
"EMF+\t\t RegionNodeDataTypeRect x:" << dx <<
", y:" << dy <<
69 ", width:" << dw <<
", height:" << dh);
71 const ::basegfx::B2DPoint mappedStartPoint(rR.
Map(dx, dy));
72 const ::basegfx::B2DPoint mappedEndPoint(rR.
Map(dx + dw, dy + dh));
74 ::basegfx::utils::createPolygonFromRect(
76 mappedStartPoint.getX(),
77 mappedStartPoint.getY(),
78 mappedEndPoint.getX(),
79 mappedEndPoint.getY())));
86 SAL_INFO(
"drawinglayer.emf",
"EMF+\t\t RegionNodeDataTypePath, Path Length: " << pathLength <<
" bytes");
88 sal_uInt32
header, pathFlags;
92 SAL_INFO(
"drawinglayer.emf",
"EMF+\t\t header: 0x" << std::hex <<
header <<
93 " points: " << std::dec << points <<
" additional flags: 0x" << std::hex << pathFlags << std::dec);
96 path.
Read(s, pathFlags);
102 SAL_INFO(
"drawinglayer.emf",
"EMF+\t\t RegionNodeDataTypeEmpty");
103 SAL_WARN(
"drawinglayer.emf",
"EMF+\t\t TODO we need to set empty polygon here");
110 SAL_INFO(
"drawinglayer.emf",
"EMF+\t\t RegionNodeDataTypeInfinite");
116 SAL_WARN(
"drawinglayer.emf",
"EMF+\t\t Unhandled region type: 0x" << std::hex << dataType << std::dec);
128 SAL_INFO(
"drawinglayer.emf",
"EMF+\t version: 0x" << std::hex <<
header << std::dec <<
", region node count: " <<
count);
constexpr sal_Int8 header[]
SvStream & ReadFloat(float &rFloat)
SvStream & ReadUInt32(sal_uInt32 &rUInt32)
SvStream & ReadInt32(sal_Int32 &rInt32)
::basegfx::B2DPolyPolygon & GetPolygon(EmfPlusHelperData const &rR, bool bMapIt=true, bool bAddLineToCloseShape=false)
void Read(SvStream &s, sal_uInt32 pathFlags)
#define SAL_WARN(area, stream)
#define SAL_INFO(area, stream)
@ RegionNodeDataTypeEmpty
@ RegionNodeDataTypeComplement
@ RegionNodeDataTypeInfinite
@ RegionNodeDataTypeExclude
::basegfx::B2DPolyPolygon regionPolyPolygon
virtual ~EMFPRegion() override
void ReadRegion(SvStream &s, EmfPlusHelperData &rR)
::basegfx::B2DPolyPolygon ReadRegionNode(SvStream &s, EmfPlusHelperData &rR)
::basegfx::B2DPoint Map(double ix, double iy) const
::basegfx::B2DPolyPolygon combineClip(::basegfx::B2DPolyPolygon const &leftPolygon, int combineMode, ::basegfx::B2DPolyPolygon const &rightPolygon)