gdi32: Use symbolic names for font tags
Dmitry Timoshkov
dmitry at codeweavers.com
Thu Sep 20 05:10:31 CDT 2007
Hello,
Chnagelog:
gdi32: Use symbolic names for font tags.
---
configure.ac | 1 +
dlls/gdi32/freetype.c | 15 ++++++++++++---
2 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/configure.ac b/configure.ac
index 2c8c5da..b951604 100644
--- a/configure.ac
+++ b/configure.ac
@@ -872,6 +872,7 @@ then
AC_CHECK_HEADERS(ft2build.h \
freetype/freetype.h \
freetype/ftglyph.h \
+ freetype/fttypes.h \
freetype/tttables.h \
freetype/ftnames.h \
freetype/ftsnames.h \
diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c
index c556c3d..89f8b22 100644
--- a/dlls/gdi32/freetype.c
+++ b/dlls/gdi32/freetype.c
@@ -102,6 +102,9 @@ WINE_DEFAULT_DEBUG_CHANNEL(font);
#ifdef HAVE_FREETYPE_TTTABLES_H
#include <freetype/tttables.h>
#endif
+#ifdef HAVE_FREETYPE_FTTYPES_H
+#include <freetype/fttypes.h>
+#endif
#ifdef HAVE_FREETYPE_FTSNAMES_H
#include <freetype/ftsnames.h>
#else
@@ -195,6 +198,12 @@ MAKE_FUNCPTR(FcPatternGetString);
#undef MAKE_FUNCPTR
+#ifndef FT_MAKE_TAG
+#define FT_MAKE_TAG( ch0, ch1, ch2, ch3 ) \
+ ( ((DWORD)(BYTE)(ch0) << 24) | ((DWORD)(BYTE)(ch1) << 16) | \
+ ((DWORD)(BYTE)(ch2) << 8) | (DWORD)(BYTE)(ch3) )
+#endif
+
#ifndef ft_encoding_none
#define FT_ENCODING_NONE ft_encoding_none
#endif
@@ -587,7 +596,7 @@ static char **expand_mac_font(const char *path)
unsigned short *num_faces_ptr, num_faces, face;
AsscEntry *assoc;
Handle fond;
- ResType fond_res = 0x464f4e44; /* 'FOND' */
+ ResType fond_res = FT_MAKE_TAG('F','O','N','D');
fond = Get1IndResource(fond_res, idx);
if(!fond) break;
@@ -603,7 +612,7 @@ static char **expand_mac_font(const char *path)
for(face = 0; face < num_faces; face++, assoc++)
{
Handle sfnt;
- ResType sfnt_res = 0x73666e74; /* 'sfnt' */
+ ResType sfnt_res = FT_MAKE_TAG('s','f','n','t');
unsigned short size, font_id;
char *output;
@@ -1195,7 +1204,7 @@ static INT AddFontToList(const char *file, void *font_data_ptr, DWORD font_data_
/* check for the presence of the 'CFF ' table to check if the font is Type1 */
tmp_size = 0;
- if (pFT_Load_Sfnt_Table && !pFT_Load_Sfnt_Table(ft_face, 0x43464620, 0, NULL, &tmp_size))
+ if (pFT_Load_Sfnt_Table && !pFT_Load_Sfnt_Table(ft_face, FT_MAKE_TAG('C','F','F',' '), 0, NULL, &tmp_size))
{
TRACE("Font %s/%p is OTF Type1\n", wine_dbgstr_a(file), font_data_ptr);
face->ntmFlags = NTM_PS_OPENTYPE;
--
1.5.3.1
More information about the wine-patches
mailing list