Dmitry Timoshkov : gdiplus: Implement GdipGetMetafileHeaderFromWmf.
Module: wine Branch: master Commit: 8c1ded6164ca6d98a0d7010f154cc01e9fc76371 URL: http://source.winehq.org/git/wine.git/?a=commit;h=8c1ded6164ca6d98a0d7010f15... Author: Dmitry Timoshkov <dmitry(a)baikal.ru> Date: Wed Sep 14 14:57:00 2016 -0500 gdiplus: Implement GdipGetMetafileHeaderFromWmf. Signed-off-by: Vincent Povirk <vincent(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/gdiplus/gdiplus.spec | 2 +- dlls/gdiplus/metafile.c | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec index c163ef9..db0a49a 100644 --- a/dlls/gdiplus/gdiplus.spec +++ b/dlls/gdiplus/gdiplus.spec @@ -303,7 +303,7 @@ 303 stdcall GdipGetMetafileHeaderFromFile(wstr ptr) 304 stdcall GdipGetMetafileHeaderFromMetafile(ptr ptr) 305 stdcall GdipGetMetafileHeaderFromStream(ptr ptr) -306 stub GdipGetMetafileHeaderFromWmf +306 stdcall GdipGetMetafileHeaderFromWmf(ptr ptr ptr) 307 stdcall GdipGetNearestColor(ptr ptr) 308 stdcall GdipGetPageScale(ptr ptr) 309 stdcall GdipGetPageUnit(ptr ptr) diff --git a/dlls/gdiplus/metafile.c b/dlls/gdiplus/metafile.c index 6d58170..88717e4 100644 --- a/dlls/gdiplus/metafile.c +++ b/dlls/gdiplus/metafile.c @@ -1779,6 +1779,23 @@ GpStatus WINGDIPAPI GdipGetMetafileHeaderFromEmf(HENHMETAFILE hemf, return Ok; } +GpStatus WINGDIPAPI GdipGetMetafileHeaderFromWmf(HMETAFILE hwmf, + GDIPCONST WmfPlaceableFileHeader *placeable, MetafileHeader *header) +{ + GpStatus status; + GpMetafile *metafile; + + TRACE("(%p,%p,%p)\n", hwmf, placeable, header); + + status = GdipCreateMetafileFromWmf(hwmf, FALSE, placeable, &metafile); + if (status == Ok) + { + status = GdipGetMetafileHeaderFromMetafile(metafile, header); + GdipDisposeImage(&metafile->image); + } + return status; +} + GpStatus WINGDIPAPI GdipGetMetafileHeaderFromFile(GDIPCONST WCHAR *filename, MetafileHeader *header) {
participants (1)
-
Alexandre Julliard