Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(864)

Unified Diff: core/fxge/include/cfx_fontmgr.h

Issue 2185533006: Splitting fx_ge_fontmap.cpp (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Add missing includes Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « core/fxge/include/cfx_fontmapper.h ('k') | core/fxge/include/fx_font.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: core/fxge/include/cfx_fontmgr.h
diff --git a/core/fxge/include/cfx_fontmgr.h b/core/fxge/include/cfx_fontmgr.h
new file mode 100644
index 0000000000000000000000000000000000000000..dac8c5ac7b6aaf3d07a1a1a319a0d47e3d651448
--- /dev/null
+++ b/core/fxge/include/cfx_fontmgr.h
@@ -0,0 +1,67 @@
+// Copyright 2016 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 CORE_FXGE_INCLUDE_CFX_FONTMGR_H_
+#define CORE_FXGE_INCLUDE_CFX_FONTMGR_H_
+
+#include <map>
+#include <memory>
+
+#include "core/fxge/include/fx_font.h"
+
+class IFX_SystemFontInfo;
+class CFX_FontMapper;
+
+class CFX_FontMgr {
+ public:
+ CFX_FontMgr();
+ ~CFX_FontMgr();
+
+ void InitFTLibrary();
+
+ FXFT_Face GetCachedFace(const CFX_ByteString& face_name,
+ int weight,
+ FX_BOOL bItalic,
+ uint8_t*& pFontData);
+ FXFT_Face AddCachedFace(const CFX_ByteString& face_name,
+ int weight,
+ FX_BOOL bItalic,
+ uint8_t* pData,
+ uint32_t size,
+ int face_index);
+ FXFT_Face GetCachedTTCFace(int ttc_size,
+ uint32_t checksum,
+ int font_offset,
+ uint8_t*& pFontData);
+ FXFT_Face AddCachedTTCFace(int ttc_size,
+ uint32_t checksum,
+ uint8_t* pData,
+ uint32_t size,
+ int font_offset);
+ FXFT_Face GetFileFace(const FX_CHAR* filename, int face_index);
+ FXFT_Face GetFixedFace(const uint8_t* pData, uint32_t size, int face_index);
+ void ReleaseFace(FXFT_Face face);
+ void SetSystemFontInfo(std::unique_ptr<IFX_SystemFontInfo> pFontInfo);
+ FXFT_Face FindSubstFont(const CFX_ByteString& face_name,
+ FX_BOOL bTrueType,
+ uint32_t flags,
+ int weight,
+ int italic_angle,
+ int CharsetCP,
+ CFX_SubstFont* pSubstFont);
+ bool GetBuiltinFont(size_t index, const uint8_t** pFontData, uint32_t* size);
+ CFX_FontMapper* GetBuiltinMapper() const { return m_pBuiltinMapper.get(); }
+ FXFT_Library GetFTLibrary() const { return m_FTLibrary; }
+ bool FTLibrarySupportsHinting() const { return m_FTLibrarySupportsHinting; }
+
+ private:
+ std::unique_ptr<CFX_FontMapper> m_pBuiltinMapper;
+ std::map<CFX_ByteString, CTTFontDesc*> m_FaceMap;
+ FXFT_Library m_FTLibrary;
+ bool m_FTLibrarySupportsHinting;
+};
+
+#endif // CORE_FXGE_INCLUDE_CFX_FONTMGR_H_
« no previous file with comments | « core/fxge/include/cfx_fontmapper.h ('k') | core/fxge/include/fx_font.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698