6 * This file is part of the w32api package.
8 * THIS SOFTWARE IS NOT COPYRIGHTED
10 * This source code is offered for use in the public domain. You may
11 * use, modify or distribute it freely.
13 * This code is distributed in the hope that it will be useful but
14 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
15 * DISCLAIMED. This includes but is not limited to warranties of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
19 #ifndef _GDIPLUSMETAFILE_H
20 #define _GDIPLUSMETAFILE_H
22 class Metafile
: public Image
25 Metafile(HDC referenceHdc
, EmfType type
, const WCHAR
*description
)
29 Metafile(const WCHAR
*filename
)
33 Metafile(HDC referenceHdc
, const RectF
&frameRect
, MetafileFrameUnit frameUnit
, EmfType type
, const WCHAR
*description
)
37 Metafile(HMETAFILE hWmf
, const WmfPlaceableFileHeader
*wmfPlaceableFileHeader
, BOOL deleteWmf
)
41 Metafile(const WCHAR
*fileName
, HDC referenceHdc
, const Rect
&frameRect
, MetafileFrameUnit frameUnit
, EmfType type
, const WCHAR
*description
)
45 Metafile(IStream
*stream
, HDC referenceHdc
, const RectF
&frameRect
, MetafileFrameUnit frameUnit
, EmfType type
, const WCHAR
*description
)
49 Metafile(IStream
*stream
, HDC referenceHdc
, EmfType type
, const WCHAR
*description
)
53 Metafile(IStream
*stream
, HDC referenceHdc
, const Rect
&frameRect
, MetafileFrameUnit frameUnit
, EmfType type
, const WCHAR
*description
)
57 Metafile(const WCHAR
*fileName
, HDC referenceHdc
, const RectF
&frameRect
, MetafileFrameUnit frameUnit
, EmfType type
, const WCHAR
*description
)
61 Metafile(const WCHAR
*fileName
, HDC referenceHdc
, EmfType type
, const WCHAR
*description
)
65 Metafile(IStream
*stream
)
69 Metafile(HENHMETAFILE hEmf
, BOOL deleteEmf
)
73 Metafile(HDC referenceHdc
, const Rect
&frameRect
, MetafileFrameUnit frameUnit
, EmfType type
, const WCHAR
*description
)
77 static UINT
EmfToWmfBits(HENHMETAFILE hemf
, UINT cbData16
, LPBYTE pData16
, INT iMapMode
, EmfToWmfBitsFlags eFlags
)
82 UINT
GetDownLevelRasterizationLimit(VOID
)
87 HENHMETAFILE
GetHENHMETAFILE(VOID
)
92 static Status
GetMetafileHeader(const WCHAR
*filename
, MetafileHeader
*header
)
94 return NotImplemented
;
97 static Status
GetMetafileHeader(HENHMETAFILE
*hEmf
, MetafileHeader
*header
)
99 return NotImplemented
;
102 static Status
GetMetafileHeader(HMETAFILE hWmf
, const WmfPlaceableFileHeader
*wmfPlaceableFileHeader
, MetafileHeader
*header
)
104 return NotImplemented
;
107 Status
GetMetafileHeader(MetafileHeader
*header
) const
109 return NotImplemented
;
112 static Status
GetMetafileHeader(IStream
*stream
, MetafileHeader
*header
)
114 return NotImplemented
;
117 Status
PlayRecord(EmfPlusRecordType recordType
, UINT flags
, UINT dataSize
, const BYTE
*data
)
119 return NotImplemented
;
122 Status
SetDownLevelRasterizationLimit(UINT metafileRasterizationLimitDpi
)
124 return NotImplemented
;
128 #endif /* _GDIPLUSMETAFILE_H */