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 #include "core/fpdfapi/fpdf_cmaps/GB1/cmaps_gb1.h" | 7 #include "core/fpdfapi/fpdf_cmaps/GB1/cmaps_gb1.h" |
8 | 8 |
9 #include "core/fpdfapi/fpdf_cmaps/cmap_int.h" | 9 #include "core/fpdfapi/fpdf_cmaps/cmap_int.h" |
10 #include "core/fpdfapi/fpdf_font/font_int.h" | 10 #include "core/fpdfapi/fpdf_font/font_int.h" |
11 #include "core/fpdfapi/fpdf_page/cpdf_pagemodule.h" | 11 #include "core/fpdfapi/fpdf_page/cpdf_pagemodule.h" |
12 #include "core/fpdfapi/include/cpdf_modulemgr.h" | 12 #include "core/fpdfapi/include/cpdf_modulemgr.h" |
13 #include "core/fxcrt/include/fx_basic.h" | 13 #include "core/fxcrt/include/fx_basic.h" |
14 | 14 |
15 static const FXCMAP_CMap g_FXCMAP_GB1_cmaps[] = { | 15 static const FXCMAP_CMap g_FXCMAP_GB1_cmaps[] = { |
16 {"GB-EUC-H", FXCMAP_CMap::Range, g_FXCMAP_GB_EUC_H_0, 90, FXCMAP_CMap::None, | 16 {"GB-EUC-H", FXCMAP_CMap::Range, g_FXCMAP_GB_EUC_H_0, 90, FXCMAP_CMap::None, |
17 NULL, 0, 0}, | 17 nullptr, 0, 0}, |
18 {"GB-EUC-V", FXCMAP_CMap::Range, g_FXCMAP_GB_EUC_V_0, 20, FXCMAP_CMap::None, | 18 {"GB-EUC-V", FXCMAP_CMap::Range, g_FXCMAP_GB_EUC_V_0, 20, FXCMAP_CMap::None, |
19 NULL, 0, -1}, | 19 nullptr, 0, -1}, |
20 {"GBpc-EUC-H", FXCMAP_CMap::Range, g_FXCMAP_GBpc_EUC_H_0, 91, | 20 {"GBpc-EUC-H", FXCMAP_CMap::Range, g_FXCMAP_GBpc_EUC_H_0, 91, |
21 FXCMAP_CMap::None, NULL, 0, 0}, | 21 FXCMAP_CMap::None, nullptr, 0, 0}, |
22 {"GBpc-EUC-V", FXCMAP_CMap::Range, g_FXCMAP_GBpc_EUC_V_0, 20, | 22 {"GBpc-EUC-V", FXCMAP_CMap::Range, g_FXCMAP_GBpc_EUC_V_0, 20, |
23 FXCMAP_CMap::None, NULL, 0, -1}, | 23 FXCMAP_CMap::None, nullptr, 0, -1}, |
24 {"GBK-EUC-H", FXCMAP_CMap::Range, g_FXCMAP_GBK_EUC_H_2, 4071, | 24 {"GBK-EUC-H", FXCMAP_CMap::Range, g_FXCMAP_GBK_EUC_H_2, 4071, |
25 FXCMAP_CMap::None, NULL, 0, 0}, | 25 FXCMAP_CMap::None, nullptr, 0, 0}, |
26 {"GBK-EUC-V", FXCMAP_CMap::Range, g_FXCMAP_GBK_EUC_V_2, 20, | 26 {"GBK-EUC-V", FXCMAP_CMap::Range, g_FXCMAP_GBK_EUC_V_2, 20, |
27 FXCMAP_CMap::None, NULL, 0, -1}, | 27 FXCMAP_CMap::None, nullptr, 0, -1}, |
28 {"GBKp-EUC-H", FXCMAP_CMap::Range, g_FXCMAP_GBKp_EUC_H_2, 4070, | 28 {"GBKp-EUC-H", FXCMAP_CMap::Range, g_FXCMAP_GBKp_EUC_H_2, 4070, |
29 FXCMAP_CMap::None, NULL, 0, -2}, | 29 FXCMAP_CMap::None, nullptr, 0, -2}, |
30 {"GBKp-EUC-V", FXCMAP_CMap::Range, g_FXCMAP_GBKp_EUC_V_2, 20, | 30 {"GBKp-EUC-V", FXCMAP_CMap::Range, g_FXCMAP_GBKp_EUC_V_2, 20, |
31 FXCMAP_CMap::None, NULL, 0, -1}, | 31 FXCMAP_CMap::None, nullptr, 0, -1}, |
32 {"GBK2K-H", FXCMAP_CMap::Range, g_FXCMAP_GBK2K_H_5, 4071, | 32 {"GBK2K-H", FXCMAP_CMap::Range, g_FXCMAP_GBK2K_H_5, 4071, |
33 FXCMAP_CMap::Single, g_FXCMAP_GBK2K_H_5_DWord, 1017, -4}, | 33 FXCMAP_CMap::Single, g_FXCMAP_GBK2K_H_5_DWord, 1017, -4}, |
34 {"GBK2K-V", FXCMAP_CMap::Range, g_FXCMAP_GBK2K_V_5, 41, FXCMAP_CMap::None, | 34 {"GBK2K-V", FXCMAP_CMap::Range, g_FXCMAP_GBK2K_V_5, 41, FXCMAP_CMap::None, |
35 NULL, 0, -1}, | 35 nullptr, 0, -1}, |
36 {"UniGB-UCS2-H", FXCMAP_CMap::Range, g_FXCMAP_UniGB_UCS2_H_4, 13825, | 36 {"UniGB-UCS2-H", FXCMAP_CMap::Range, g_FXCMAP_UniGB_UCS2_H_4, 13825, |
37 FXCMAP_CMap::None, NULL, 0, 0}, | 37 FXCMAP_CMap::None, nullptr, 0, 0}, |
38 {"UniGB-UCS2-V", FXCMAP_CMap::Range, g_FXCMAP_UniGB_UCS2_V_4, 24, | 38 {"UniGB-UCS2-V", FXCMAP_CMap::Range, g_FXCMAP_UniGB_UCS2_V_4, 24, |
39 FXCMAP_CMap::None, NULL, 0, -1}, | 39 FXCMAP_CMap::None, nullptr, 0, -1}, |
40 {"UniGB-UTF16-H", FXCMAP_CMap::Range, g_FXCMAP_UniGB_UCS2_H_4, 13825, | 40 {"UniGB-UTF16-H", FXCMAP_CMap::Range, g_FXCMAP_UniGB_UCS2_H_4, 13825, |
41 FXCMAP_CMap::None, NULL, 0, 0}, | 41 FXCMAP_CMap::None, nullptr, 0, 0}, |
42 {"UniGB-UTF16-V", FXCMAP_CMap::Range, g_FXCMAP_UniGB_UCS2_V_4, 24, | 42 {"UniGB-UTF16-V", FXCMAP_CMap::Range, g_FXCMAP_UniGB_UCS2_V_4, 24, |
43 FXCMAP_CMap::None, NULL, 0, -1}, | 43 FXCMAP_CMap::None, nullptr, 0, -1}, |
44 }; | 44 }; |
45 | 45 |
46 void CPDF_ModuleMgr::LoadEmbeddedGB1CMaps() { | 46 void CPDF_ModuleMgr::LoadEmbeddedGB1CMaps() { |
47 CPDF_FontGlobals* pFontGlobals = | 47 CPDF_FontGlobals* pFontGlobals = |
48 CPDF_ModuleMgr::Get()->GetPageModule()->GetFontGlobals(); | 48 CPDF_ModuleMgr::Get()->GetPageModule()->GetFontGlobals(); |
49 pFontGlobals->m_EmbeddedCharsets[CIDSET_GB1].m_pMapList = g_FXCMAP_GB1_cmaps; | 49 pFontGlobals->m_EmbeddedCharsets[CIDSET_GB1].m_pMapList = g_FXCMAP_GB1_cmaps; |
50 pFontGlobals->m_EmbeddedCharsets[CIDSET_GB1].m_Count = | 50 pFontGlobals->m_EmbeddedCharsets[CIDSET_GB1].m_Count = |
51 FX_ArraySize(g_FXCMAP_GB1_cmaps); | 51 FX_ArraySize(g_FXCMAP_GB1_cmaps); |
52 pFontGlobals->m_EmbeddedToUnicodes[CIDSET_GB1].m_pMap = | 52 pFontGlobals->m_EmbeddedToUnicodes[CIDSET_GB1].m_pMap = |
53 g_FXCMAP_GB1CID2Unicode_5; | 53 g_FXCMAP_GB1CID2Unicode_5; |
54 pFontGlobals->m_EmbeddedToUnicodes[CIDSET_GB1].m_Count = 30284; | 54 pFontGlobals->m_EmbeddedToUnicodes[CIDSET_GB1].m_Count = 30284; |
55 } | 55 } |
OLD | NEW |