| OLD | NEW |
| 1 // Copyright 2016 PDFium Authors. All rights reserved. | 1 // Copyright 2016 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_FPDFAPI_FONT_CPDF_CIDFONT_H_ | 7 #ifndef CORE_FPDFAPI_FONT_CPDF_CIDFONT_H_ |
| 8 #define CORE_FPDFAPI_FONT_CPDF_CIDFONT_H_ | 8 #define CORE_FPDFAPI_FONT_CPDF_CIDFONT_H_ |
| 9 | 9 |
| 10 #include <memory> | 10 #include <memory> |
| 11 #include <vector> |
| 11 | 12 |
| 12 #include "core/fpdfapi/font/cpdf_font.h" | 13 #include "core/fpdfapi/font/cpdf_font.h" |
| 13 #include "core/fxcrt/fx_string.h" | 14 #include "core/fxcrt/fx_string.h" |
| 14 #include "core/fxcrt/fx_system.h" | 15 #include "core/fxcrt/fx_system.h" |
| 15 | 16 |
| 16 enum CIDSet { | 17 enum CIDSet { |
| 17 CIDSET_UNKNOWN, | 18 CIDSET_UNKNOWN, |
| 18 CIDSET_GB1, | 19 CIDSET_GB1, |
| 19 CIDSET_CNS1, | 20 CIDSET_CNS1, |
| 20 CIDSET_JAPAN1, | 21 CIDSET_JAPAN1, |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 58 const uint8_t* GetCIDTransform(uint16_t CID) const; | 59 const uint8_t* GetCIDTransform(uint16_t CID) const; |
| 59 short GetVertWidth(uint16_t CID) const; | 60 short GetVertWidth(uint16_t CID) const; |
| 60 void GetVertOrigin(uint16_t CID, short& vx, short& vy) const; | 61 void GetVertOrigin(uint16_t CID, short& vx, short& vy) const; |
| 61 int GetCharSize(uint32_t charcode) const; | 62 int GetCharSize(uint32_t charcode) const; |
| 62 | 63 |
| 63 protected: | 64 protected: |
| 64 void LoadGB2312(); | 65 void LoadGB2312(); |
| 65 int GetGlyphIndex(uint32_t unicodeb, bool* pVertGlyph); | 66 int GetGlyphIndex(uint32_t unicodeb, bool* pVertGlyph); |
| 66 int GetVerticalGlyph(int index, bool* pVertGlyph); | 67 int GetVerticalGlyph(int index, bool* pVertGlyph); |
| 67 void LoadMetricsArray(CPDF_Array* pArray, | 68 void LoadMetricsArray(CPDF_Array* pArray, |
| 68 CFX_ArrayTemplate<uint32_t>& result, | 69 std::vector<uint32_t>* result, |
| 69 int nElements); | 70 int nElements); |
| 70 void LoadSubstFont(); | 71 void LoadSubstFont(); |
| 71 FX_WCHAR GetUnicodeFromCharCode(uint32_t charcode) const; | 72 FX_WCHAR GetUnicodeFromCharCode(uint32_t charcode) const; |
| 72 | 73 |
| 73 CPDF_CMap* m_pCMap; | 74 CPDF_CMap* m_pCMap; |
| 74 std::unique_ptr<CPDF_CMap> m_pAllocatedCMap; | 75 std::unique_ptr<CPDF_CMap> m_pAllocatedCMap; |
| 75 CPDF_CID2UnicodeMap* m_pCID2UnicodeMap; | 76 CPDF_CID2UnicodeMap* m_pCID2UnicodeMap; |
| 76 CIDSet m_Charset; | 77 CIDSet m_Charset; |
| 77 bool m_bType1; | 78 bool m_bType1; |
| 78 bool m_bCIDIsGID; | 79 bool m_bCIDIsGID; |
| 79 uint16_t m_DefaultWidth; | 80 uint16_t m_DefaultWidth; |
| 80 std::unique_ptr<CPDF_StreamAcc> m_pStreamAcc; | 81 std::unique_ptr<CPDF_StreamAcc> m_pStreamAcc; |
| 81 bool m_bAnsiWidthsFixed; | 82 bool m_bAnsiWidthsFixed; |
| 82 FX_RECT m_CharBBox[256]; | 83 FX_RECT m_CharBBox[256]; |
| 83 CFX_ArrayTemplate<uint32_t> m_WidthList; | 84 std::vector<uint32_t> m_WidthList; |
| 84 short m_DefaultVY; | 85 short m_DefaultVY; |
| 85 short m_DefaultW1; | 86 short m_DefaultW1; |
| 86 CFX_ArrayTemplate<uint32_t> m_VertMetrics; | 87 std::vector<uint32_t> m_VertMetrics; |
| 87 bool m_bAdobeCourierStd; | 88 bool m_bAdobeCourierStd; |
| 88 std::unique_ptr<CFX_CTTGSUBTable> m_pTTGSUBTable; | 89 std::unique_ptr<CFX_CTTGSUBTable> m_pTTGSUBTable; |
| 89 }; | 90 }; |
| 90 | 91 |
| 91 #endif // CORE_FPDFAPI_FONT_CPDF_CIDFONT_H_ | 92 #endif // CORE_FPDFAPI_FONT_CPDF_CIDFONT_H_ |
| OLD | NEW |