| 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 CORE_FXGE_INCLUDE_FX_FONT_H_ | 7 #ifndef CORE_FXGE_INCLUDE_FX_FONT_H_ |
| 8 #define CORE_FXGE_INCLUDE_FX_FONT_H_ | 8 #define CORE_FXGE_INCLUDE_FX_FONT_H_ |
| 9 | 9 |
| 10 #include <map> | 10 #include <map> |
| 11 #include <memory> | 11 #include <memory> |
| 12 #include <vector> | 12 #include <vector> |
| 13 | 13 |
| 14 #include "core/fxcrt/include/fx_system.h" | 14 #include "core/fxcrt/include/fx_system.h" |
| 15 #include "core/fxge/include/fx_dib.h" | 15 #include "core/fxge/include/fx_dib.h" |
| 16 #include "core/fxge/include/fx_freetype.h" | 16 #include "core/fxge/include/fx_freetype.h" |
| 17 | 17 |
| 18 typedef struct FT_FaceRec_* FXFT_Face; | 18 typedef struct FT_FaceRec_* FXFT_Face; |
| 19 typedef void* FXFT_Library; | 19 typedef void* FXFT_Library; |
| 20 | 20 |
| 21 class CFX_FaceCache; | 21 class CFX_FaceCache; |
| 22 class CFX_FontCache; |
| 22 class CFX_PathData; | 23 class CFX_PathData; |
| 23 class CFX_SizeGlyphCache; | 24 class CFX_SizeGlyphCache; |
| 24 class CFX_SubstFont; | 25 class CFX_SubstFont; |
| 25 class CTTFontDesc; | 26 class CTTFontDesc; |
| 26 | 27 |
| 27 #ifdef _SKIA_SUPPORT_ | 28 #ifdef _SKIA_SUPPORT_ |
| 28 class SkTypeface; | 29 class SkTypeface; |
| 29 | 30 |
| 30 using CFX_TypeFace = SkTypeface; | 31 using CFX_TypeFace = SkTypeface; |
| 31 #endif | 32 #endif |
| (...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 283 uint32_t m_Styles; | 284 uint32_t m_Styles; |
| 284 uint32_t m_Charsets; | 285 uint32_t m_Charsets; |
| 285 }; | 286 }; |
| 286 | 287 |
| 287 class CFX_CountedFaceCache { | 288 class CFX_CountedFaceCache { |
| 288 public: | 289 public: |
| 289 CFX_FaceCache* m_Obj; | 290 CFX_FaceCache* m_Obj; |
| 290 uint32_t m_nCount; | 291 uint32_t m_nCount; |
| 291 }; | 292 }; |
| 292 | 293 |
| 293 class CFX_FontCache { | |
| 294 public: | |
| 295 CFX_FontCache(); | |
| 296 ~CFX_FontCache(); | |
| 297 CFX_FaceCache* GetCachedFace(CFX_Font* pFont); | |
| 298 void ReleaseCachedFace(CFX_Font* pFont); | |
| 299 void FreeCache(FX_BOOL bRelease = FALSE); | |
| 300 #ifdef _SKIA_SUPPORT_ | |
| 301 CFX_TypeFace* GetDeviceCache(CFX_Font* pFont); | |
| 302 #endif | |
| 303 | |
| 304 private: | |
| 305 using CFX_FTCacheMap = std::map<FXFT_Face, CFX_CountedFaceCache*>; | |
| 306 CFX_FTCacheMap m_FTFaceMap; | |
| 307 CFX_FTCacheMap m_ExtFaceMap; | |
| 308 }; | |
| 309 | |
| 310 class CFX_AutoFontCache { | |
| 311 public: | |
| 312 CFX_AutoFontCache(CFX_FontCache* pFontCache, CFX_Font* pFont) | |
| 313 : m_pFontCache(pFontCache), m_pFont(pFont) {} | |
| 314 ~CFX_AutoFontCache() { m_pFontCache->ReleaseCachedFace(m_pFont); } | |
| 315 CFX_FontCache* m_pFontCache; | |
| 316 CFX_Font* m_pFont; | |
| 317 }; | |
| 318 | |
| 319 class CFX_GlyphBitmap { | 294 class CFX_GlyphBitmap { |
| 320 public: | 295 public: |
| 321 int m_Top; | 296 int m_Top; |
| 322 int m_Left; | 297 int m_Left; |
| 323 CFX_DIBitmap m_Bitmap; | 298 CFX_DIBitmap m_Bitmap; |
| 324 }; | 299 }; |
| 325 | 300 |
| 326 class CFX_FaceCache { | 301 class CFX_FaceCache { |
| 327 public: | 302 public: |
| 328 explicit CFX_FaceCache(FXFT_Face face); | 303 explicit CFX_FaceCache(FXFT_Face face); |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 386 FX_FLOAT retinaScaleX = 1.0f, | 361 FX_FLOAT retinaScaleX = 1.0f, |
| 387 FX_FLOAT retinaScaleY = 1.0f); | 362 FX_FLOAT retinaScaleY = 1.0f); |
| 388 | 363 |
| 389 CFX_ByteString GetNameFromTT(const uint8_t* name_table, | 364 CFX_ByteString GetNameFromTT(const uint8_t* name_table, |
| 390 uint32_t name_table_size, | 365 uint32_t name_table_size, |
| 391 uint32_t name); | 366 uint32_t name); |
| 392 | 367 |
| 393 int PDF_GetStandardFontName(CFX_ByteString* name); | 368 int PDF_GetStandardFontName(CFX_ByteString* name); |
| 394 | 369 |
| 395 #endif // CORE_FXGE_INCLUDE_FX_FONT_H_ | 370 #endif // CORE_FXGE_INCLUDE_FX_FONT_H_ |
| OLD | NEW |