[7/7] gdiplus: added GdipCreateFontFromLogfontA
Evan Stade
estade at gmail.com
Mon Aug 13 20:34:57 CDT 2007
Hi,
added GdipCreateFontFromLogfontA
dlls/gdiplus/font.c | 19 +++++++++++++++++++
dlls/gdiplus/gdiplus.spec | 2 +-
include/gdiplusflat.h | 1 +
3 files changed, 21 insertions(+), 1 deletions(-)
--
Evan Stade
-------------- next part --------------
diff --git a/dlls/gdiplus/font.c b/dlls/gdiplus/font.c
index 2cd514d..d02b04d 100644
--- a/dlls/gdiplus/font.c
+++ b/dlls/gdiplus/font.c
@@ -21,6 +21,7 @@ #include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "wingdi.h"
+#include "winnls.h"
#include "objbase.h"
@@ -40,3 +41,21 @@ GpStatus WINGDIPAPI GdipCreateFontFromLo
return Ok;
}
+
+GpStatus WINGDIPAPI GdipCreateFontFromLogfontA(HDC hdc,
+ GDIPCONST LOGFONTA *lfa, GpFont **font)
+{
+ LOGFONTW lfw;
+
+ if(!lfa || !font)
+ return InvalidParameter;
+
+ memcpy(&lfw, lfa, sizeof(LOGFONTA));
+
+ if(!MultiByteToWideChar(CP_ACP, 0, lfa->lfFaceName, -1, lfw.lfFaceName, LF_FACESIZE))
+ return GenericError;
+
+ GdipCreateFontFromLogfontW(hdc, &lfw, font);
+
+ return Ok;
+}
diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index d311c45..39253a5 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -87,7 +87,7 @@
@ stub GdipCreateFont
@ stub GdipCreateFontFamilyFromName
@ stub GdipCreateFontFromDC
-@ stub GdipCreateFontFromLogfontA
+@ stdcall GdipCreateFontFromLogfontA(ptr ptr ptr)
@ stdcall GdipCreateFontFromLogfontW(ptr ptr ptr)
@ stub GdipCreateFromHDC2
@ stdcall GdipCreateFromHDC(long ptr)
diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h
index 05bf54e..ba2a3ca 100644
--- a/include/gdiplusflat.h
+++ b/include/gdiplusflat.h
@@ -236,6 +236,7 @@ GpStatus WINGDIPAPI GdipSetImageAttribut
GpStatus WINGDIPAPI GdipSetImageAttributesWrapMode(GpImageAttributes*,WrapMode,
ARGB,BOOL);
+GpStatus WINGDIPAPI GdipCreateFontFromLogfontA(HDC,GDIPCONST LOGFONTA*,GpFont**);
GpStatus WINGDIPAPI GdipCreateFontFromLogfontW(HDC,GDIPCONST LOGFONTW*,GpFont**);
#ifdef __cplusplus
--
1.4.1
More information about the wine-patches
mailing list