Index: core/fpdfapi/fpdf_font/fpdf_font.cpp |
diff --git a/core/fpdfapi/fpdf_font/fpdf_font.cpp b/core/fpdfapi/fpdf_font/fpdf_font.cpp |
index 1735f0ba2579f7ae051dd8cccc979915e3e6892b..cb410b8d6845af86cf357b7963f2a42dc37b1178 100644 |
--- a/core/fpdfapi/fpdf_font/fpdf_font.cpp |
+++ b/core/fpdfapi/fpdf_font/fpdf_font.cpp |
@@ -21,17 +21,23 @@ |
#include "core/fxge/include/fx_freetype.h" |
#include "third_party/base/stl_util.h" |
-FX_BOOL FT_UseTTCharmap(FXFT_Face face, int platform_id, int encoding_id) { |
+int16_t TT2PDF(int m, FXFT_Face face) { |
+ int upm = FXFT_Get_Face_UnitsPerEM(face); |
+ if (upm == 0) |
+ return static_cast<int16_t>(m); |
+ return (m * 1000 + upm / 2) / upm; |
+} |
+ |
+bool FT_UseTTCharmap(FXFT_Face face, int platform_id, int encoding_id) { |
+ auto* pCharMap = FXFT_Get_Face_Charmaps(face); |
for (int i = 0; i < FXFT_Get_Face_CharmapCount(face); i++) { |
- if (FXFT_Get_Charmap_PlatformID(FXFT_Get_Face_Charmaps(face)[i]) == |
- platform_id && |
- FXFT_Get_Charmap_EncodingID(FXFT_Get_Face_Charmaps(face)[i]) == |
- encoding_id) { |
- FXFT_Set_Charmap(face, FXFT_Get_Face_Charmaps(face)[i]); |
- return TRUE; |
+ if (FXFT_Get_Charmap_PlatformID(pCharMap[i]) == platform_id && |
+ FXFT_Get_Charmap_EncodingID(pCharMap[i]) == encoding_id) { |
+ FXFT_Set_Charmap(face, pCharMap[i]); |
+ return true; |
} |
} |
- return FALSE; |
+ return false; |
} |
CFX_StockFontArray::CFX_StockFontArray() {} |
@@ -84,15 +90,6 @@ void CPDF_FontGlobals::Clear(CPDF_Document* pDoc) { |
m_StockMap.erase(pDoc); |
} |
- |
- |
-short TT2PDF(int m, FXFT_Face face) { |
- int upm = FXFT_Get_Face_UnitsPerEM(face); |
- if (upm == 0) |
- return (short)m; |
- return (m * 1000 + upm / 2) / upm; |
-} |
- |
CFX_WideString CPDF_ToUnicodeMap::Lookup(uint32_t charcode) const { |
auto it = m_Map.find(charcode); |
if (it != m_Map.end()) { |