Index: xfa/src/fgas/src/font/fx_gdifont.h |
diff --git a/xfa/src/fgas/src/font/fx_gdifont.h b/xfa/src/fgas/src/font/fx_gdifont.h |
index c50563b2866266bba7454819329bd696c1046a50..648a37c521acd4c899d641da7297b2de3ab07d28 100644 |
--- a/xfa/src/fgas/src/font/fx_gdifont.h |
+++ b/xfa/src/fgas/src/font/fx_gdifont.h |
@@ -1,106 +1,106 @@ |
-// Copyright 2014 PDFium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
- |
-#ifndef _FX_GDIOBJECT_IMP |
-#define _FX_GDIOBJECT_IMP |
-#ifdef _FXPLUS |
-#if _FX_OS_ == _FX_WIN32_DESKTOP_ || _FX_OS_ == _FX_WIN32_MOBILE_ || \ |
- _FX_OS_ == _FX_WIN64_ |
-typedef struct _FX_GDIGOCACHE { |
- GLYPHMETRICS gm; |
- uint8_t* pOutline; |
-} FX_GDIGOCACHE, *FX_LPGDIGOCACHE; |
-typedef FX_GDIGOCACHE const* FX_LPCGDIGOCACHE; |
-class CFX_GdiFontCache { |
- public: |
- CFX_GdiFontCache(); |
- ~CFX_GdiFontCache(); |
- void SetCachedGlyphOutline(FX_DWORD dwGlyph, |
- const GLYPHMETRICS& gm, |
- uint8_t* pOutline); |
- FX_LPCGDIGOCACHE GetCachedGlyphOutline(FX_DWORD dwGlyph) const; |
- |
- protected: |
- CFX_MapPtrToPtr m_GlyphMap; |
-}; |
-class CFX_GdiFont : public IFX_Font, public CFX_ThreadLock { |
- public: |
- CFX_GdiFont(IFX_FontMgr* pFontMgr); |
- ~CFX_GdiFont(); |
- virtual void Release(); |
- virtual IFX_Font* Retain(); |
- FX_BOOL LoadFont(const FX_WCHAR* pszFontFamily, |
- FX_DWORD dwFontStyles, |
- FX_WORD wCodePage); |
- FX_BOOL LoadFont(const uint8_t* pBuffer, int32_t iLength); |
- FX_BOOL LoadFont(const FX_WCHAR* pszFileName); |
- FX_BOOL LoadFont(IFX_Stream* pFontStream); |
- FX_BOOL LoadFont(const LOGFONTW& lf); |
- virtual IFX_Font* Derive(FX_DWORD dwFontStyles, FX_WORD wCodePage = 0) { |
- return NULL; |
- } |
- virtual void GetFamilyName(CFX_WideString& wsFamily) const; |
- virtual FX_DWORD GetFontStyles() const { return m_dwStyles; } |
- virtual uint8_t GetCharSet() const { return m_LogFont.lfCharSet; } |
- virtual FX_BOOL GetCharWidth(FX_WCHAR wUnicode, |
- int32_t& iWidth, |
- FX_BOOL bCharCode = FALSE); |
- virtual int32_t GetGlyphIndex(FX_WCHAR wUnicode, FX_BOOL bCharCode = FALSE); |
- virtual int32_t GetAscent() const; |
- virtual int32_t GetDescent() const; |
- virtual FX_BOOL GetCharBBox(FX_WCHAR wUnicode, |
- CFX_Rect& bbox, |
- FX_BOOL bCharCode = FALSE); |
- virtual FX_BOOL GetBBox(CFX_Rect& bbox); |
- virtual int32_t GetItalicAngle() const; |
- virtual void Reset(); |
- FX_DWORD GetGlyphDIBits(int32_t iGlyphIndex, |
- FX_ARGB argb, |
- const MAT2* pMatrix, |
- GLYPHMETRICS& gm, |
- void* pBuffer, |
- FX_DWORD bufSize); |
- FX_DWORD GetHashCode() const; |
- |
- protected: |
- IFX_FontMgr* m_pFontMgr; |
- int32_t m_iRefCount; |
- CFX_WordDiscreteArray m_WidthCache; |
- OUTLINETEXTMETRICW m_OutlineTM; |
- HGDIOBJ m_hOldFont; |
- HFONT m_hFont; |
- HDC m_hDC; |
- LOGFONTW m_LogFont; |
- CFX_WideString m_wsFontFileName; |
- CFX_WideStringArray m_FontFamilies; |
- HANDLE m_hRes; |
- FX_DWORD m_dwStyles; |
- CFX_PtrArray m_SubstFonts; |
- CFX_MapPtrToPtr m_FontMapper; |
- CFX_MapPtrToPtr m_FontCache; |
- void ClearCache(); |
- int32_t GetFontFamilies(Gdiplus::FontCollection& fc); |
- void RetrieveFontStyles(); |
- IFX_Font* GetSubstFont(int32_t iGlyphIndex) const; |
- FX_BOOL GetCharWidth(FX_WCHAR wUnicode, |
- int32_t& iWidth, |
- FX_BOOL bRecursive, |
- FX_BOOL bCharCode = FALSE); |
- int32_t GetGlyphIndex(FX_WCHAR wUnicode, |
- FX_BOOL bRecursive, |
- IFX_Font** ppFont, |
- FX_BOOL bCharCode = FALSE); |
- FX_DWORD GetMAT2HashCode(const FIXED* pFixed); |
- void CreateGlyphBitmap(int32_t iWidth, |
- int32_t iHeight, |
- uint8_t* pOutline, |
- FX_DWORD* pDIB, |
- FX_ARGB argb); |
- friend class CFX_GdiFontMgr; |
-}; |
-#endif |
-#endif |
-#endif |
+// Copyright 2014 PDFium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
+ |
+#ifndef _FX_GDIOBJECT_IMP |
+#define _FX_GDIOBJECT_IMP |
+#ifdef _FXPLUS |
+#if _FX_OS_ == _FX_WIN32_DESKTOP_ || _FX_OS_ == _FX_WIN32_MOBILE_ || \ |
+ _FX_OS_ == _FX_WIN64_ |
+typedef struct _FX_GDIGOCACHE { |
+ GLYPHMETRICS gm; |
+ uint8_t* pOutline; |
+} FX_GDIGOCACHE, *FX_LPGDIGOCACHE; |
+typedef FX_GDIGOCACHE const* FX_LPCGDIGOCACHE; |
+class CFX_GdiFontCache { |
+ public: |
+ CFX_GdiFontCache(); |
+ ~CFX_GdiFontCache(); |
+ void SetCachedGlyphOutline(FX_DWORD dwGlyph, |
+ const GLYPHMETRICS& gm, |
+ uint8_t* pOutline); |
+ FX_LPCGDIGOCACHE GetCachedGlyphOutline(FX_DWORD dwGlyph) const; |
+ |
+ protected: |
+ CFX_MapPtrToPtr m_GlyphMap; |
+}; |
+class CFX_GdiFont : public IFX_Font, public CFX_ThreadLock { |
+ public: |
+ CFX_GdiFont(IFX_FontMgr* pFontMgr); |
+ ~CFX_GdiFont(); |
+ virtual void Release(); |
+ virtual IFX_Font* Retain(); |
+ FX_BOOL LoadFont(const FX_WCHAR* pszFontFamily, |
+ FX_DWORD dwFontStyles, |
+ FX_WORD wCodePage); |
+ FX_BOOL LoadFont(const uint8_t* pBuffer, int32_t iLength); |
+ FX_BOOL LoadFont(const FX_WCHAR* pszFileName); |
+ FX_BOOL LoadFont(IFX_Stream* pFontStream); |
+ FX_BOOL LoadFont(const LOGFONTW& lf); |
+ virtual IFX_Font* Derive(FX_DWORD dwFontStyles, FX_WORD wCodePage = 0) { |
+ return NULL; |
+ } |
+ virtual void GetFamilyName(CFX_WideString& wsFamily) const; |
+ virtual FX_DWORD GetFontStyles() const { return m_dwStyles; } |
+ virtual uint8_t GetCharSet() const { return m_LogFont.lfCharSet; } |
+ virtual FX_BOOL GetCharWidth(FX_WCHAR wUnicode, |
+ int32_t& iWidth, |
+ FX_BOOL bCharCode = FALSE); |
+ virtual int32_t GetGlyphIndex(FX_WCHAR wUnicode, FX_BOOL bCharCode = FALSE); |
+ virtual int32_t GetAscent() const; |
+ virtual int32_t GetDescent() const; |
+ virtual FX_BOOL GetCharBBox(FX_WCHAR wUnicode, |
+ CFX_Rect& bbox, |
+ FX_BOOL bCharCode = FALSE); |
+ virtual FX_BOOL GetBBox(CFX_Rect& bbox); |
+ virtual int32_t GetItalicAngle() const; |
+ virtual void Reset(); |
+ FX_DWORD GetGlyphDIBits(int32_t iGlyphIndex, |
+ FX_ARGB argb, |
+ const MAT2* pMatrix, |
+ GLYPHMETRICS& gm, |
+ void* pBuffer, |
+ FX_DWORD bufSize); |
+ FX_DWORD GetHashCode() const; |
+ |
+ protected: |
+ IFX_FontMgr* m_pFontMgr; |
+ int32_t m_iRefCount; |
+ CFX_WordDiscreteArray m_WidthCache; |
+ OUTLINETEXTMETRICW m_OutlineTM; |
+ HGDIOBJ m_hOldFont; |
+ HFONT m_hFont; |
+ HDC m_hDC; |
+ LOGFONTW m_LogFont; |
+ CFX_WideString m_wsFontFileName; |
+ CFX_WideStringArray m_FontFamilies; |
+ HANDLE m_hRes; |
+ FX_DWORD m_dwStyles; |
+ CFX_PtrArray m_SubstFonts; |
+ CFX_MapPtrToPtr m_FontMapper; |
+ CFX_MapPtrToPtr m_FontCache; |
+ void ClearCache(); |
+ int32_t GetFontFamilies(Gdiplus::FontCollection& fc); |
+ void RetrieveFontStyles(); |
+ IFX_Font* GetSubstFont(int32_t iGlyphIndex) const; |
+ FX_BOOL GetCharWidth(FX_WCHAR wUnicode, |
+ int32_t& iWidth, |
+ FX_BOOL bRecursive, |
+ FX_BOOL bCharCode = FALSE); |
+ int32_t GetGlyphIndex(FX_WCHAR wUnicode, |
+ FX_BOOL bRecursive, |
+ IFX_Font** ppFont, |
+ FX_BOOL bCharCode = FALSE); |
+ FX_DWORD GetMAT2HashCode(const FIXED* pFixed); |
+ void CreateGlyphBitmap(int32_t iWidth, |
+ int32_t iHeight, |
+ uint8_t* pOutline, |
+ FX_DWORD* pDIB, |
+ FX_ARGB argb); |
+ friend class CFX_GdiFontMgr; |
+}; |
+#endif |
+#endif |
+#endif |