OLD | NEW |
| (Empty) |
1 // Copyright 2014 PDFium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | |
6 | |
7 #include "core/fpdfapi/fpdf_cmaps/CNS1/cmaps_cns1.h" | |
8 | |
9 #include "core/fpdfapi/cpdf_modulemgr.h" | |
10 #include "core/fpdfapi/fpdf_cmaps/cmap_int.h" | |
11 #include "core/fpdfapi/fpdf_font/font_int.h" | |
12 #include "core/fpdfapi/fpdf_page/cpdf_pagemodule.h" | |
13 #include "core/fxcrt/fx_basic.h" | |
14 | |
15 static const FXCMAP_CMap g_FXCMAP_CNS1_cmaps[] = { | |
16 {"B5pc-H", FXCMAP_CMap::Range, g_FXCMAP_B5pc_H_0, 247, FXCMAP_CMap::None, | |
17 nullptr, 0, 0}, | |
18 {"B5pc-V", FXCMAP_CMap::Range, g_FXCMAP_B5pc_V_0, 12, FXCMAP_CMap::None, | |
19 nullptr, 0, -1}, | |
20 {"HKscs-B5-H", FXCMAP_CMap::Range, g_FXCMAP_HKscs_B5_H_5, 1210, | |
21 FXCMAP_CMap::None, nullptr, 0, 0}, | |
22 {"HKscs-B5-V", FXCMAP_CMap::Range, g_FXCMAP_HKscs_B5_V_5, 13, | |
23 FXCMAP_CMap::None, nullptr, 0, -1}, | |
24 {"ETen-B5-H", FXCMAP_CMap::Range, g_FXCMAP_ETen_B5_H_0, 254, | |
25 FXCMAP_CMap::None, nullptr, 0, 0}, | |
26 {"ETen-B5-V", FXCMAP_CMap::Range, g_FXCMAP_ETen_B5_V_0, 13, | |
27 FXCMAP_CMap::None, nullptr, 0, -1}, | |
28 {"ETenms-B5-H", FXCMAP_CMap::Range, g_FXCMAP_ETenms_B5_H_0, 1, | |
29 FXCMAP_CMap::None, nullptr, 0, -2}, | |
30 {"ETenms-B5-V", FXCMAP_CMap::Range, g_FXCMAP_ETenms_B5_V_0, 18, | |
31 FXCMAP_CMap::None, nullptr, 0, -1}, | |
32 {"CNS-EUC-H", FXCMAP_CMap::Range, g_FXCMAP_CNS_EUC_H_0, 157, | |
33 FXCMAP_CMap::Range, g_FXCMAP_CNS_EUC_H_0_DWord, 238, 0}, | |
34 {"CNS-EUC-V", FXCMAP_CMap::Range, g_FXCMAP_CNS_EUC_V_0, 180, | |
35 FXCMAP_CMap::Range, g_FXCMAP_CNS_EUC_V_0_DWord, 261, 0}, | |
36 {"UniCNS-UCS2-H", FXCMAP_CMap::Range, g_FXCMAP_UniCNS_UCS2_H_3, 16418, | |
37 FXCMAP_CMap::None, nullptr, 0, 0}, | |
38 {"UniCNS-UCS2-V", FXCMAP_CMap::Range, g_FXCMAP_UniCNS_UCS2_V_3, 13, | |
39 FXCMAP_CMap::None, nullptr, 0, -1}, | |
40 {"UniCNS-UTF16-H", FXCMAP_CMap::Single, g_FXCMAP_UniCNS_UTF16_H_0, 14557, | |
41 FXCMAP_CMap::None, nullptr, 0, 0}, | |
42 {"UniCNS-UTF16-V", FXCMAP_CMap::Range, g_FXCMAP_UniCNS_UCS2_V_3, 13, | |
43 FXCMAP_CMap::None, nullptr, 0, -1}, | |
44 }; | |
45 | |
46 void CPDF_ModuleMgr::LoadEmbeddedCNS1CMaps() { | |
47 CPDF_FontGlobals* pFontGlobals = | |
48 CPDF_ModuleMgr::Get()->GetPageModule()->GetFontGlobals(); | |
49 pFontGlobals->m_EmbeddedCharsets[CIDSET_CNS1].m_pMapList = | |
50 g_FXCMAP_CNS1_cmaps; | |
51 pFontGlobals->m_EmbeddedCharsets[CIDSET_CNS1].m_Count = | |
52 FX_ArraySize(g_FXCMAP_CNS1_cmaps); | |
53 pFontGlobals->m_EmbeddedToUnicodes[CIDSET_CNS1].m_pMap = | |
54 g_FXCMAP_CNS1CID2Unicode_5; | |
55 pFontGlobals->m_EmbeddedToUnicodes[CIDSET_CNS1].m_Count = 19088; | |
56 } | |
OLD | NEW |