OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #ifndef _FX_FONT | 7 #ifndef _FX_FONT |
8 #define _FX_FONT | 8 #define _FX_FONT |
9 class IFX_Font; | 9 class IFX_Font; |
10 class IFX_FontMgr; | 10 class IFX_FontMgr; |
(...skipping 22 matching lines...) Expand all Loading... |
33 #define FX_FONTDECORATION_Hide 0x40000000 | 33 #define FX_FONTDECORATION_Hide 0x40000000 |
34 #define FX_FONTDECORATION_StrokeFill 0x80000000 | 34 #define FX_FONTDECORATION_StrokeFill 0x80000000 |
35 #define FX_BOUNDINGSHAPE_None 0 | 35 #define FX_BOUNDINGSHAPE_None 0 |
36 #define FX_BOUNDINGSHAPE_Circle 1 | 36 #define FX_BOUNDINGSHAPE_Circle 1 |
37 #define FX_BOUNDINGSHAPE_Square 2 | 37 #define FX_BOUNDINGSHAPE_Square 2 |
38 #define FX_BOUNDINGSHAPE_Triangle 3 | 38 #define FX_BOUNDINGSHAPE_Triangle 3 |
39 #define FX_BOUNDINGSHAPE_Diamond 4 | 39 #define FX_BOUNDINGSHAPE_Diamond 4 |
40 class IFX_FontProvider | 40 class IFX_FontProvider |
41 { | 41 { |
42 public: | 42 public: |
43 virtual FX_BOOL» » GetCharWidth(IFX_Font* pFont, FX_WCHAR wUnicode,
FX_INT32 &iWidth, FX_BOOL bCharCode = FALSE) = 0; | 43 virtual FX_BOOL» » GetCharWidth(IFX_Font* pFont, FX_WCHAR wUnicode,
int32_t &iWidth, FX_BOOL bCharCode = FALSE) = 0; |
44 }; | 44 }; |
45 class IFX_Font | 45 class IFX_Font |
46 { | 46 { |
47 public: | 47 public: |
48 static IFX_Font* LoadFont(FX_LPCWSTR pszFontFamily, FX_DWORD dwFo
ntStyles, FX_WORD wCodePage, IFX_FontMgr *pFontMgr); | 48 static IFX_Font* LoadFont(FX_LPCWSTR pszFontFamily, FX_DWORD dwFo
ntStyles, FX_WORD wCodePage, IFX_FontMgr *pFontMgr); |
49 static IFX_Font*» » LoadFont(FX_LPCBYTE pBuffer, FX_INT32 iLength, I
FX_FontMgr *pFontMgr); | 49 static IFX_Font*» » LoadFont(FX_LPCBYTE pBuffer, int32_t iLength, IF
X_FontMgr *pFontMgr); |
50 static IFX_Font* LoadFont(FX_LPCWSTR pszFileName, IFX_FontMgr *pF
ontMgr); | 50 static IFX_Font* LoadFont(FX_LPCWSTR pszFileName, IFX_FontMgr *pF
ontMgr); |
51 static IFX_Font* LoadFont(IFX_Stream *pFontStream, IFX_FontMgr *p
FontMgr, FX_BOOL bSaveStream = FALSE); | 51 static IFX_Font* LoadFont(IFX_Stream *pFontStream, IFX_FontMgr *p
FontMgr, FX_BOOL bSaveStream = FALSE); |
52 static IFX_Font* LoadFont(CFX_Font *pExtFont, IFX_FontMgr *pFontM
gr, FX_BOOL bTakeOver = FALSE); | 52 static IFX_Font* LoadFont(CFX_Font *pExtFont, IFX_FontMgr *pFontM
gr, FX_BOOL bTakeOver = FALSE); |
53 virtual void Release() = 0; | 53 virtual void Release() = 0; |
54 virtual IFX_Font* Retain() = 0; | 54 virtual IFX_Font* Retain() = 0; |
55 virtual IFX_Font* Derive(FX_DWORD dwFontStyles, FX_WORD wCodePage
= 0) = 0; | 55 virtual IFX_Font* Derive(FX_DWORD dwFontStyles, FX_WORD wCodePage
= 0) = 0; |
56 virtual void GetFamilyName(CFX_WideString &wsFamily)
const = 0; | 56 virtual void GetFamilyName(CFX_WideString &wsFamily)
const = 0; |
57 virtual void GetPsName(CFX_WideString &wsName) const
= 0; | 57 virtual void GetPsName(CFX_WideString &wsName) const
= 0; |
58 virtual FX_DWORD GetFontStyles() const = 0; | 58 virtual FX_DWORD GetFontStyles() const = 0; |
59 virtual FX_BYTE» » » GetCharSet() const = 0; | 59 virtual uint8_t» » » GetCharSet() const = 0; |
60 virtual FX_BOOL» » » GetCharWidth(FX_WCHAR wUnicode, FX_INT32
&iWidth, FX_BOOL bCharCode = FALSE) = 0; | 60 virtual FX_BOOL» » » GetCharWidth(FX_WCHAR wUnicode, int32_t
&iWidth, FX_BOOL bCharCode = FALSE) = 0; |
61 virtual FX_INT32» » GetGlyphIndex(FX_WCHAR wUnicode, FX_BOOL bCharCo
de = FALSE) = 0; | 61 virtual int32_t» » GetGlyphIndex(FX_WCHAR wUnicode, FX_BOOL bCharCo
de = FALSE) = 0; |
62 virtual FX_INT32» » GetAscent() const = 0; | 62 virtual int32_t» » GetAscent() const = 0; |
63 virtual FX_INT32» » GetDescent() const = 0; | 63 virtual int32_t» » GetDescent() const = 0; |
64 virtual FX_BOOL GetCharBBox(FX_WCHAR wUnicode, CFX_Rect
&bbox, FX_BOOL bCharCode = FALSE) = 0; | 64 virtual FX_BOOL GetCharBBox(FX_WCHAR wUnicode, CFX_Rect
&bbox, FX_BOOL bCharCode = FALSE) = 0; |
65 virtual FX_BOOL GetBBox(CFX_Rect &bbox) = 0; | 65 virtual FX_BOOL GetBBox(CFX_Rect &bbox) = 0; |
66 virtual FX_INT32» » GetItalicAngle() const = 0; | 66 virtual int32_t» » GetItalicAngle() const = 0; |
67 virtual void Reset() = 0; | 67 virtual void Reset() = 0; |
68 virtual IFX_Font*» » GetSubstFont(FX_INT32 iGlyphIndex) const = 0; | 68 virtual IFX_Font*» » GetSubstFont(int32_t iGlyphIndex) const = 0; |
69 virtual void* GetDevFont() const = 0; | 69 virtual void* GetDevFont() const = 0; |
70 virtual void SetFontProvider(IFX_FontProvider* pProvi
der) = 0; | 70 virtual void SetFontProvider(IFX_FontProvider* pProvi
der) = 0; |
71 #if _FXM_PLATFORM_ != _FXM_PLATFORM_WINDOWS_ | 71 #if _FXM_PLATFORM_ != _FXM_PLATFORM_WINDOWS_ |
72 virtual void SetLogicalFontStyle(FX_DWORD dwLogFontSt
yle) = 0; | 72 virtual void SetLogicalFontStyle(FX_DWORD dwLogFontSt
yle) = 0; |
73 #endif | 73 #endif |
74 }; | 74 }; |
75 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ | 75 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ |
76 typedef struct _FX_FONTMATCHPARAMS { | 76 typedef struct _FX_FONTMATCHPARAMS { |
77 FX_LPCWSTR pwsFamily; | 77 FX_LPCWSTR pwsFamily; |
78 FX_DWORD dwFontStyles; | 78 FX_DWORD dwFontStyles; |
79 FX_DWORD dwUSB; | 79 FX_DWORD dwUSB; |
80 FX_DWORD dwMatchFlags; | 80 FX_DWORD dwMatchFlags; |
81 FX_WCHAR wUnicode; | 81 FX_WCHAR wUnicode; |
82 FX_WORD wCodePage; | 82 FX_WORD wCodePage; |
83 } FX_FONTMATCHPARAMS, * FX_LPFONTMATCHPARAMS; | 83 } FX_FONTMATCHPARAMS, * FX_LPFONTMATCHPARAMS; |
84 typedef FX_FONTMATCHPARAMS const * FX_LPCFONTMATCHPARAMS; | 84 typedef FX_FONTMATCHPARAMS const * FX_LPCFONTMATCHPARAMS; |
85 typedef struct _FX_FONTSIGNATURE : public CFX_Target { | 85 typedef struct _FX_FONTSIGNATURE : public CFX_Target { |
86 FX_DWORD fsUsb[4]; | 86 FX_DWORD fsUsb[4]; |
87 FX_DWORD fsCsb[2]; | 87 FX_DWORD fsCsb[2]; |
88 } FX_FONTSIGNATURE; | 88 } FX_FONTSIGNATURE; |
89 typedef struct _FX_FONTDESCRIPTOR : public CFX_Target { | 89 typedef struct _FX_FONTDESCRIPTOR : public CFX_Target { |
90 FX_WCHAR wsFontFace[32]; | 90 FX_WCHAR wsFontFace[32]; |
91 FX_DWORD dwFontStyles; | 91 FX_DWORD dwFontStyles; |
92 FX_BYTE» » » » » uCharSet; | 92 uint8_t» » » » » uCharSet; |
93 FX_FONTSIGNATURE FontSignature; | 93 FX_FONTSIGNATURE FontSignature; |
94 } FX_FONTDESCRIPTOR, * FX_LPFONTDESCRIPTOR; | 94 } FX_FONTDESCRIPTOR, * FX_LPFONTDESCRIPTOR; |
95 typedef FX_FONTDESCRIPTOR const * FX_LPCFONTDESCRIPTOR; | 95 typedef FX_FONTDESCRIPTOR const * FX_LPCFONTDESCRIPTOR; |
96 typedef CFX_MassArrayTemplate<FX_FONTDESCRIPTOR> CFX_FontDescriptors; | 96 typedef CFX_MassArrayTemplate<FX_FONTDESCRIPTOR> CFX_FontDescriptors; |
97 inline FX_BOOL operator == (const FX_FONTDESCRIPTOR &left, const FX_FONTDESCRIPT
OR &right) | 97 inline FX_BOOL operator == (const FX_FONTDESCRIPTOR &left, const FX_FONTDESCRIPT
OR &right) |
98 { | 98 { |
99 return left.uCharSet == right.uCharSet | 99 return left.uCharSet == right.uCharSet |
100 && left.dwFontStyles == right.dwFontStyles | 100 && left.dwFontStyles == right.dwFontStyles |
101 && FXSYS_wcscmp(left.wsFontFace, right.wsFontFace) == 0 | 101 && FXSYS_wcscmp(left.wsFontFace, right.wsFontFace) == 0 |
102 && FXSYS_memcmp(&left.FontSignature, &right.FontSignature, sizeof(FX_
FONTSIGNATURE)) == 0; | 102 && FXSYS_memcmp(&left.FontSignature, &right.FontSignature, sizeof(FX_
FONTSIGNATURE)) == 0; |
103 } | 103 } |
104 #define FX_FONTMATCHPARA_MacthStyle 0x01 | 104 #define FX_FONTMATCHPARA_MacthStyle 0x01 |
105 #define FX_FONTMATCHPARA_MacthFamily 0x02 | 105 #define FX_FONTMATCHPARA_MacthFamily 0x02 |
106 #define FX_FONTMATCHPARA_MacthUnicode 0x04 | 106 #define FX_FONTMATCHPARA_MacthUnicode 0x04 |
107 typedef void (*FX_LPEnumAllFonts)(CFX_FontDescriptors &fonts, FX_LPVOID pUserDat
a, FX_LPCWSTR pwsFaceName, FX_WCHAR wUnicode); | 107 typedef void (*FX_LPEnumAllFonts)(CFX_FontDescriptors &fonts, FX_LPVOID pUserDat
a, FX_LPCWSTR pwsFaceName, FX_WCHAR wUnicode); |
108 FX_LPEnumAllFonts FX_GetDefFontEnumerator(); | 108 FX_LPEnumAllFonts FX_GetDefFontEnumerator(); |
109 typedef FX_LPCFONTDESCRIPTOR (*FX_LPMatchFont)(FX_LPFONTMATCHPARAMS pParams, con
st CFX_FontDescriptors &fonts, FX_LPVOID pUserData); | 109 typedef FX_LPCFONTDESCRIPTOR (*FX_LPMatchFont)(FX_LPFONTMATCHPARAMS pParams, con
st CFX_FontDescriptors &fonts, FX_LPVOID pUserData); |
110 FX_LPMatchFont FX_GetDefFontMatchor(); | 110 FX_LPMatchFont FX_GetDefFontMatchor(); |
111 class IFX_FontMgr | 111 class IFX_FontMgr |
112 { | 112 { |
113 public: | 113 public: |
114 static IFX_FontMgr* Create(FX_LPEnumAllFonts pEnumerator, FX_LPMatchFont pMa
tcher = NULL, FX_LPVOID pUserData = NULL); | 114 static IFX_FontMgr* Create(FX_LPEnumAllFonts pEnumerator, FX_LPMatchFont pMa
tcher = NULL, FX_LPVOID pUserData = NULL); |
115 virtual void Release() = 0; | 115 virtual void Release() = 0; |
116 virtual IFX_Font* GetDefFontByCodePage(FX_WORD wCodePage, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 116 virtual IFX_Font* GetDefFontByCodePage(FX_WORD wCodePage, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
117 virtual IFX_Font*» » GetDefFontByCharset(FX_BYTE nCharset, FX_DWORD d
wFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 117 virtual IFX_Font*» » GetDefFontByCharset(uint8_t nCharset, FX_DWORD d
wFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
118 virtual IFX_Font* GetDefFontByUnicode(FX_WCHAR wUnicode, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 118 virtual IFX_Font* GetDefFontByUnicode(FX_WCHAR wUnicode, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
119 virtual IFX_Font* GetDefFontByLanguage(FX_WORD wLanguage, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 119 virtual IFX_Font* GetDefFontByLanguage(FX_WORD wLanguage, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
120 virtual IFX_Font* LoadFont(FX_LPCWSTR pszFontFamily, FX_DWORD dwFo
ntStyles, FX_WORD wCodePage = 0xFFFF) = 0; | 120 virtual IFX_Font* LoadFont(FX_LPCWSTR pszFontFamily, FX_DWORD dwFo
ntStyles, FX_WORD wCodePage = 0xFFFF) = 0; |
121 virtual IFX_Font*» » LoadFont(FX_LPCBYTE pBuffer, FX_INT32 iLength) =
0; | 121 virtual IFX_Font*» » LoadFont(FX_LPCBYTE pBuffer, int32_t iLength) =
0; |
122 virtual IFX_Font* LoadFont(FX_LPCWSTR pszFileName) = 0; | 122 virtual IFX_Font* LoadFont(FX_LPCWSTR pszFileName) = 0; |
123 virtual IFX_Font* LoadFont(IFX_Stream *pFontStream, FX_LPCWSTR psz
FontAlias = NULL, FX_DWORD dwFontStyles = 0, FX_WORD wCodePage = 0, FX_BOOL bSav
eStream = FALSE) = 0; | 123 virtual IFX_Font* LoadFont(IFX_Stream *pFontStream, FX_LPCWSTR psz
FontAlias = NULL, FX_DWORD dwFontStyles = 0, FX_WORD wCodePage = 0, FX_BOOL bSav
eStream = FALSE) = 0; |
124 virtual IFX_Font* LoadFont(IFX_Font *pSrcFont, FX_DWORD dwFontStyl
es, FX_WORD wCodePage = 0xFFFF) = 0; | 124 virtual IFX_Font* LoadFont(IFX_Font *pSrcFont, FX_DWORD dwFontStyl
es, FX_WORD wCodePage = 0xFFFF) = 0; |
125 virtual void ClearFontCache() = 0; | 125 virtual void ClearFontCache() = 0; |
126 virtual void RemoveFont(IFX_Font *pFont) = 0; | 126 virtual void RemoveFont(IFX_Font *pFont) = 0; |
127 }; | 127 }; |
128 #else | 128 #else |
129 class IFX_FontMgrDelegate | 129 class IFX_FontMgrDelegate |
130 { | 130 { |
131 public: | 131 public: |
132 virtual IFX_Font* GetDefFontByCodePage(IFX_FontMgr* pFontMgr, FX_W
ORD wCodePage, FX_DWORD dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 132 virtual IFX_Font* GetDefFontByCodePage(IFX_FontMgr* pFontMgr, FX_W
ORD wCodePage, FX_DWORD dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
133 virtual IFX_Font*» » GetDefFontByCharset(IFX_FontMgr* pFontMgr, FX_BY
TE nCharset, FX_DWORD dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 133 virtual IFX_Font*» » GetDefFontByCharset(IFX_FontMgr* pFontMgr, uint8
_t nCharset, FX_DWORD dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
134 virtual IFX_Font* GetDefFontByUnicode(IFX_FontMgr* pFontMgr, FX_WC
HAR wUnicode, FX_DWORD dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 134 virtual IFX_Font* GetDefFontByUnicode(IFX_FontMgr* pFontMgr, FX_WC
HAR wUnicode, FX_DWORD dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
135 virtual IFX_Font* GetDefFontByLanguage(IFX_FontMgr* pFontMgr, FX_W
ORD wLanguage, FX_DWORD dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 135 virtual IFX_Font* GetDefFontByLanguage(IFX_FontMgr* pFontMgr, FX_W
ORD wLanguage, FX_DWORD dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
136 }; | 136 }; |
137 class IFX_FontSourceEnum | 137 class IFX_FontSourceEnum |
138 { | 138 { |
139 public: | 139 public: |
140 virtual void Release() = 0; | 140 virtual void Release() = 0; |
141 virtual FX_POSITION GetStartPosition(FX_LPVOID pUserData = NULL) = 0
; | 141 virtual FX_POSITION GetStartPosition(FX_LPVOID pUserData = NULL) = 0
; |
142 virtual IFX_FileAccess* GetNext(FX_POSITION& pos, FX_LPVOID pUserData =
NULL) = 0; | 142 virtual IFX_FileAccess* GetNext(FX_POSITION& pos, FX_LPVOID pUserData =
NULL) = 0; |
143 }; | 143 }; |
144 IFX_FontSourceEnum* FX_CreateDefaultFontSourceEnum(); | 144 IFX_FontSourceEnum* FX_CreateDefaultFontSourceEnum(); |
145 class IFX_FontMgr | 145 class IFX_FontMgr |
146 { | 146 { |
147 public: | 147 public: |
148 static IFX_FontMgr* Create(IFX_FontSourceEnum* pFontEnum, IFX_FontMgrDelegat
e* pDelegate = NULL, FX_LPVOID pUserData = NULL); | 148 static IFX_FontMgr* Create(IFX_FontSourceEnum* pFontEnum, IFX_FontMgrDelegat
e* pDelegate = NULL, FX_LPVOID pUserData = NULL); |
149 virtual void Release() = 0; | 149 virtual void Release() = 0; |
150 virtual IFX_Font* GetDefFontByCodePage(FX_WORD wCodePage, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 150 virtual IFX_Font* GetDefFontByCodePage(FX_WORD wCodePage, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
151 virtual IFX_Font*» » GetDefFontByCharset(FX_BYTE nCharset, FX_DWORD d
wFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 151 virtual IFX_Font*» » GetDefFontByCharset(uint8_t nCharset, FX_DWORD d
wFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
152 virtual IFX_Font* GetDefFontByUnicode(FX_WCHAR wUnicode, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 152 virtual IFX_Font* GetDefFontByUnicode(FX_WCHAR wUnicode, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
153 virtual IFX_Font* GetDefFontByLanguage(FX_WORD wLanguage, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 153 virtual IFX_Font* GetDefFontByLanguage(FX_WORD wLanguage, FX_DWORD
dwFontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
154 virtual IFX_Font* GetFontByCodePage(FX_WORD wCodePage, FX_DWORD dw
FontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 154 virtual IFX_Font* GetFontByCodePage(FX_WORD wCodePage, FX_DWORD dw
FontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
155 inline IFX_Font* LoadFont(FX_LPCWSTR pszFontFamily, FX_DWORD dwFo
ntStyles, FX_WORD wCodePage) | 155 inline IFX_Font* LoadFont(FX_LPCWSTR pszFontFamily, FX_DWORD dwFo
ntStyles, FX_WORD wCodePage) |
156 { | 156 { |
157 return GetFontByCodePage(wCodePage, dwFontStyles, pszFontFamily); | 157 return GetFontByCodePage(wCodePage, dwFontStyles, pszFontFamily); |
158 } | 158 } |
159 virtual IFX_Font*» » GetFontByCharset(FX_BYTE nCharset, FX_DWORD dwFo
ntStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 159 virtual IFX_Font*» » GetFontByCharset(uint8_t nCharset, FX_DWORD dwFo
ntStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
160 virtual IFX_Font* GetFontByUnicode(FX_WCHAR wUnicode, FX_DWORD dwF
ontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 160 virtual IFX_Font* GetFontByUnicode(FX_WCHAR wUnicode, FX_DWORD dwF
ontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
161 virtual IFX_Font* GetFontByLanguage(FX_WORD wLanguage, FX_DWORD dw
FontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; | 161 virtual IFX_Font* GetFontByLanguage(FX_WORD wLanguage, FX_DWORD dw
FontStyles, FX_LPCWSTR pszFontFamily = NULL) = 0; |
162 virtual IFX_Font*» » LoadFont(FX_LPCBYTE pBuffer, FX_INT32 iLength, F
X_INT32 iFaceIndex, FX_INT32* pFaceCount = NULL) = 0; | 162 virtual IFX_Font*» » LoadFont(FX_LPCBYTE pBuffer, int32_t iLength, in
t32_t iFaceIndex, int32_t* pFaceCount = NULL) = 0; |
163 virtual IFX_Font*» » LoadFont(FX_LPCWSTR pszFileName, FX_INT32 iFaceI
ndex, FX_INT32* pFaceCount = NULL) = 0; | 163 virtual IFX_Font*» » LoadFont(FX_LPCWSTR pszFileName, int32_t iFaceIn
dex, int32_t* pFaceCount = NULL) = 0; |
164 virtual IFX_Font*» » LoadFont(IFX_Stream *pFontStream, FX_INT32 iFace
Index, FX_INT32* pFaceCount = NULL, FX_BOOL bSaveStream = FALSE) = 0; | 164 virtual IFX_Font*» » LoadFont(IFX_Stream *pFontStream, int32_t iFaceI
ndex, int32_t* pFaceCount = NULL, FX_BOOL bSaveStream = FALSE) = 0; |
165 | 165 |
166 virtual void ClearFontCache() = 0; | 166 virtual void ClearFontCache() = 0; |
167 virtual void RemoveFont(IFX_Font *pFont) = 0; | 167 virtual void RemoveFont(IFX_Font *pFont) = 0; |
168 }; | 168 }; |
169 #endif | 169 #endif |
170 #endif | 170 #endif |
OLD | NEW |