31namespace basegfx {
class B2DPolyPolygon; }
36 #define EmfPlusRecordTypeHeader 0x4001
37 #define EmfPlusRecordTypeEndOfFile 0x4002
38 #define EmfPlusRecordTypeComment 0x4003
39 #define EmfPlusRecordTypeGetDC 0x4004
43 #define EmfPlusRecordTypeObject 0x4008
45 #define EmfPlusRecordTypeFillRects 0x400A
46 #define EmfPlusRecordTypeDrawRects 0x400B
47 #define EmfPlusRecordTypeFillPolygon 0x400C
48 #define EmfPlusRecordTypeDrawLines 0x400D
49 #define EmfPlusRecordTypeFillEllipse 0x400E
50 #define EmfPlusRecordTypeDrawEllipse 0x400F
51 #define EmfPlusRecordTypeFillPie 0x4010
52 #define EmfPlusRecordTypeDrawPie 0x4011
53 #define EmfPlusRecordTypeDrawArc 0x4012
54 #define EmfPlusRecordTypeFillRegion 0x4013
55 #define EmfPlusRecordTypeFillPath 0x4014
56 #define EmfPlusRecordTypeDrawPath 0x4015
57 #define EmfPlusRecordTypeFillClosedCurve 0x4016
58 #define EmfPlusRecordTypeDrawClosedCurve 0x4017
59 #define EmfPlusRecordTypeDrawCurve 0x4018
60 #define EmfPlusRecordTypeDrawBeziers 0x4019
61 #define EmfPlusRecordTypeDrawImage 0x401A
62 #define EmfPlusRecordTypeDrawImagePoints 0x401B
63 #define EmfPlusRecordTypeDrawString 0x401C
64 #define EmfPlusRecordTypeSetRenderingOrigin 0x401D
65 #define EmfPlusRecordTypeSetAntiAliasMode 0x401E
66 #define EmfPlusRecordTypeSetTextRenderingHint 0x401F
67 #define EmfPlusRecordTypeSetTextContrast 0x4020
68 #define EmfPlusRecordTypeSetInterpolationMode 0x4021
69 #define EmfPlusRecordTypeSetPixelOffsetMode 0x4022
71 #define EmfPlusRecordTypeSetCompositingQuality 0x4024
72 #define EmfPlusRecordTypeSave 0x4025
73 #define EmfPlusRecordTypeRestore 0x4026
74 #define EmfPlusRecordTypeBeginContainer 0x4027
75 #define EmfPlusRecordTypeBeginContainerNoParams 0x4028
76 #define EmfPlusRecordTypeEndContainer 0x4029
77 #define EmfPlusRecordTypeSetWorldTransform 0x402A
78 #define EmfPlusRecordTypeResetWorldTransform 0x402B
79 #define EmfPlusRecordTypeMultiplyWorldTransform 0x402C
80 #define EmfPlusRecordTypeTranslateWorldTransform 0x402D
81 #define EmfPlusRecordTypeScaleWorldTransform 0x402E
82 #define EmfPlusRecordTypeRotateWorldTransform 0x402F
83 #define EmfPlusRecordTypeSetPageTransform 0x4030
84 #define EmfPlusRecordTypeResetClip 0x4031
85 #define EmfPlusRecordTypeSetClipRect 0x4032
86 #define EmfPlusRecordTypeSetClipPath 0x4033
87 #define EmfPlusRecordTypeSetClipRegion 0x4034
88 #define EmfPlusRecordTypeOffsetClip 0x4035
89 #define EmfPlusRecordTypeDrawDriverString 0x4036
96 #define EmfPlusObjectTypeBrush 0x100
97 #define EmfPlusObjectTypePen 0x200
98 #define EmfPlusObjectTypePath 0x300
99 #define EmfPlusObjectTypeRegion 0x400
100 #define EmfPlusObjectTypeImage 0x500
101 #define EmfPlusObjectTypeFont 0x600
102 #define EmfPlusObjectTypeStringFormat 0x700
103 #define EmfPlusObjectTypeImageAttributes 0x800
104 #define EmfPlusObjectTypeCustomLineCap 0x900
237 const float aPenWidth)
const;
241 void EMFPPlusFillPolygon(const ::basegfx::B2DPolyPolygon& polygon,
const bool isColor,
const sal_uInt32 brushIndexOrColor);
262 static void ReadRectangle(
SvStream& s,
float& x,
float& y,
float &width,
float& height,
bool bCompressed =
false);
helper class for graphic context
Helper class which builds a stack on the TargetHolder class.
@ TextRenderingHintAntialiasGridFit
@ TextRenderingHintSingleBitPerPixel
@ TextRenderingHintClearTypeGridFit
@ TextRenderingHintSingleBitPerPixelGridFit
@ TextRenderingHintSystemDefault
@ TextRenderingHintAntialias
OUString UnitTypeToString(sal_uInt16 nType)
const char * emfTypeToName(sal_uInt16 type)
@ PixelOffsetModeHighQuality
@ PixelOffsetModeHighSpeed
std::map< int, wmfemfhelper::PropertyHolder > GraphicStateMap
@ SmoothingModeAntiAlias8x8
@ SmoothingModeAntiAlias8x4
@ SmoothingModeHighQuality
@ InterpolationModeDefault
@ InterpolationModeBicubic
@ InterpolationModeLowQuality
@ InterpolationModeHighQualityBicubic
@ InterpolationModeHighQuality
@ InterpolationModeNearestNeighbor
@ InterpolationModeBilinear
@ InterpolationModeHighQualityBilinear
@ EmfPlusCombineModeExclude
@ EmfPlusCombineModeComplement
@ EmfPlusCombineModeIntersect
@ EmfPlusCombineModeUnion
@ EmfPlusCombineModeReplace
void GraphicStatePush(GraphicStateMap &map, sal_Int32 index)
basegfx::B2DHomMatrix maBaseTransform
static bool readXForm(SvStream &rIn, basegfx::B2DHomMatrix &rTarget)
sal_uInt16 mnTextContrast
GraphicStateMap mGSContainerStack
void GraphicStatePop(GraphicStateMap &map, sal_Int32 index)
::basegfx::B2DPoint Map(double ix, double iy) const
void EMFPPlusDrawPolygon(const ::basegfx::B2DPolyPolygon &polygon, sal_uInt32 penIndex)
EmfPlusHelperData(SvMemoryStream &rMS, wmfemfhelper::TargetHolders &rTargetHolders, wmfemfhelper::PropertyHolders &rPropertyHolders)
basegfx::B2DHomMatrix maWorldTransform
void EMFPPlusFillPolygon(const ::basegfx::B2DPolyPolygon &polygon, const bool isColor, const sal_uInt32 brushIndexOrColor)
void processEmfPlusData(SvMemoryStream &rMS, const drawinglayer::geometry::ViewInformation2D &rViewInformation)
wmfemfhelper::PropertyHolders & mrPropertyHolders
void EMFPPlusFillPolygonSolidColor(const ::basegfx::B2DPolyPolygon &polygon, Color const &color)
basegfx::B2DHomMatrix maMapTransform
static void ReadRectangle(SvStream &s, float &x, float &y, float &width, float &height, bool bCompressed=false)
std::unique_ptr< EMFPObject > maEMFPObjects[256]
static void ReadPoint(SvStream &s, float &x, float &y, sal_uInt32 flags)
wmfemfhelper::TargetHolders & mrTargetHolders
data holders
::basegfx::B2DPolyPolygon combineClip(::basegfx::B2DPolyPolygon const &leftPolygon, int combineMode, ::basegfx::B2DPolyPolygon const &rightPolygon)
void processObjectRecord(SvMemoryStream &rObjectStream, sal_uInt16 flags, sal_uInt32 dataSize, bool bUseWholeStream=false)
Color EMFPGetBrushColorOrARGBColor(const sal_uInt16 flags, const sal_uInt32 brushIndexOrColor) const
static float getUnitToPixelMultiplier(const UnitType aUnitType, const sal_uInt32 aDPI)
wmfemfhelper::PropertyHolder aGetDCState
drawinglayer::attribute::LineStartEndAttribute CreateLineEnd(const sal_Int32 aCap, const float aPenWidth) const