| 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 "../../../include/fpdfapi/fpdf_module.h" | 7 #include "../../../include/fpdfapi/fpdf_module.h" |
| 8 #include "../../../include/fpdfapi/fpdf_page.h" | 8 #include "../../../include/fpdfapi/fpdf_page.h" |
| 9 #include "../../../include/fpdfapi/fpdf_resource.h" | 9 #include "../../../include/fpdfapi/fpdf_resource.h" |
| 10 #include "../../../include/fxge/fx_freetype.h" | 10 #include "../../../include/fxge/fx_freetype.h" |
| (...skipping 412 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 423 {0x81, 0xfe}}, | 423 {0x81, 0xfe}}, |
| 424 {"KSCpc-EUC", | 424 {"KSCpc-EUC", |
| 425 CIDSET_KOREA1, | 425 CIDSET_KOREA1, |
| 426 CIDCODING_KOREA, | 426 CIDCODING_KOREA, |
| 427 CPDF_CMap::MixedTwoBytes, | 427 CPDF_CMap::MixedTwoBytes, |
| 428 1, | 428 1, |
| 429 {0xa1, 0xfd}}, | 429 {0xa1, 0xfd}}, |
| 430 {"UniKS-UCS2", CIDSET_KOREA1, CIDCODING_UCS2, CPDF_CMap::TwoBytes}, | 430 {"UniKS-UCS2", CIDSET_KOREA1, CIDCODING_UCS2, CPDF_CMap::TwoBytes}, |
| 431 {"UniKS-UTF16", CIDSET_KOREA1, CIDCODING_UTF16, CPDF_CMap::TwoBytes}, | 431 {"UniKS-UTF16", CIDSET_KOREA1, CIDCODING_UTF16, CPDF_CMap::TwoBytes}, |
| 432 {NULL, 0, 0}}; | 432 {NULL, 0, 0}}; |
| 433 extern void FPDFAPI_FindEmbeddedCMap(const char* name, | 433 |
| 434 int charset, | |
| 435 int coding, | |
| 436 const FXCMAP_CMap*& pMap); | |
| 437 extern FX_WORD FPDFAPI_CIDFromCharCode(const FXCMAP_CMap* pMap, | |
| 438 FX_DWORD charcode); | |
| 439 FX_BOOL CPDF_CMap::LoadPredefined(CPDF_CMapManager* pMgr, | 434 FX_BOOL CPDF_CMap::LoadPredefined(CPDF_CMapManager* pMgr, |
| 440 const FX_CHAR* pName, | 435 const FX_CHAR* pName, |
| 441 FX_BOOL bPromptCJK) { | 436 FX_BOOL bPromptCJK) { |
| 442 m_PredefinedCMap = pName; | 437 m_PredefinedCMap = pName; |
| 443 if (m_PredefinedCMap == FX_BSTRC("Identity-H") || | 438 if (m_PredefinedCMap == FX_BSTRC("Identity-H") || |
| 444 m_PredefinedCMap == FX_BSTRC("Identity-V")) { | 439 m_PredefinedCMap == FX_BSTRC("Identity-V")) { |
| 445 m_Coding = CIDCODING_CID; | 440 m_Coding = CIDCODING_CID; |
| 446 m_bVertical = pName[9] == 'V'; | 441 m_bVertical = pName[9] == 'V'; |
| 447 m_bLoaded = TRUE; | 442 m_bLoaded = TRUE; |
| 448 return TRUE; | 443 return TRUE; |
| (...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 807 if (m_pCMap == NULL) { | 802 if (m_pCMap == NULL) { |
| 808 return (FX_WORD)charcode; | 803 return (FX_WORD)charcode; |
| 809 } | 804 } |
| 810 return m_pCMap->CIDFromCharCode(charcode); | 805 return m_pCMap->CIDFromCharCode(charcode); |
| 811 } | 806 } |
| 812 FX_BOOL CPDF_CIDFont::IsVertWriting() const { | 807 FX_BOOL CPDF_CIDFont::IsVertWriting() const { |
| 813 return m_pCMap ? m_pCMap->IsVertWriting() : FALSE; | 808 return m_pCMap ? m_pCMap->IsVertWriting() : FALSE; |
| 814 } | 809 } |
| 815 | 810 |
| 816 #if _FXM_PLATFORM_ != _FXM_PLATFORM_WINDOWS_ | 811 #if _FXM_PLATFORM_ != _FXM_PLATFORM_WINDOWS_ |
| 817 extern FX_DWORD FPDFAPI_CharCodeFromCID(const FXCMAP_CMap* pMap, FX_WORD cid); | |
| 818 static FX_DWORD _EmbeddedCharcodeFromUnicode(const FXCMAP_CMap* pEmbedMap, | 812 static FX_DWORD _EmbeddedCharcodeFromUnicode(const FXCMAP_CMap* pEmbedMap, |
| 819 int charset, | 813 int charset, |
| 820 FX_WCHAR unicode) { | 814 FX_WCHAR unicode) { |
| 821 if (charset <= 0 || charset > 4) { | 815 if (charset <= 0 || charset > 4) { |
| 822 return 0; | 816 return 0; |
| 823 } | 817 } |
| 824 CPDF_FontGlobals* pFontGlobals = | 818 CPDF_FontGlobals* pFontGlobals = |
| 825 CPDF_ModuleMgr::Get()->GetPageModule()->GetFontGlobals(); | 819 CPDF_ModuleMgr::Get()->GetPageModule()->GetFontGlobals(); |
| 826 const FX_WORD* pCodes = pFontGlobals->m_EmbeddedToUnicodes[charset].m_pMap; | 820 const FX_WORD* pCodes = pFontGlobals->m_EmbeddedToUnicodes[charset].m_pMap; |
| 827 if (pCodes == NULL) { | 821 if (pCodes == NULL) { |
| (...skipping 803 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1631 if (middlecode > CID) { | 1625 if (middlecode > CID) { |
| 1632 end = middle - 1; | 1626 end = middle - 1; |
| 1633 } else if (middlecode < CID) { | 1627 } else if (middlecode < CID) { |
| 1634 begin = middle + 1; | 1628 begin = middle + 1; |
| 1635 } else { | 1629 } else { |
| 1636 return &Japan1_VertCIDs[middle].a; | 1630 return &Japan1_VertCIDs[middle].a; |
| 1637 } | 1631 } |
| 1638 } | 1632 } |
| 1639 return NULL; | 1633 return NULL; |
| 1640 } | 1634 } |
| OLD | NEW |