diff options
Diffstat (limited to 'core/src/fpdfapi/fpdf_font')
-rw-r--r-- | core/src/fpdfapi/fpdf_font/font_int.h | 16 | ||||
-rw-r--r-- | core/src/fpdfapi/fpdf_font/fpdf_font.cpp | 64 | ||||
-rw-r--r-- | core/src/fpdfapi/fpdf_font/fpdf_font_charset.cpp | 14 | ||||
-rw-r--r-- | core/src/fpdfapi/fpdf_font/fpdf_font_cid.cpp | 52 | ||||
-rw-r--r-- | core/src/fpdfapi/fpdf_font/ttgsubtable.cpp | 2 |
5 files changed, 75 insertions, 73 deletions
diff --git a/core/src/fpdfapi/fpdf_font/font_int.h b/core/src/fpdfapi/fpdf_font/font_int.h index 1e52607d98..6f32f4fa98 100644 --- a/core/src/fpdfapi/fpdf_font/font_int.h +++ b/core/src/fpdfapi/fpdf_font/font_int.h @@ -12,7 +12,7 @@ class CPDF_CMapManager public: CPDF_CMapManager(); ~CPDF_CMapManager(); - FX_LPVOID GetPackage(FX_BOOL bPrompt); + void* GetPackage(FX_BOOL bPrompt); CPDF_CMap* GetPredefinedCMap(const CFX_ByteString& name, FX_BOOL bPrompt); CPDF_CID2UnicodeMap* GetCID2UnicodeMap(int charset, FX_BOOL bPrompt); void ReloadAll(); @@ -44,7 +44,7 @@ public: } m_EmbeddedToUnicodes[NUMBER_OF_CIDSETS]; private: CFX_MapPtrToPtr m_pStockMap; - FX_LPBYTE m_pContrastRamps; + uint8_t* m_pContrastRamps; }; struct _CMap_CodeRange { int m_CharSize; @@ -81,7 +81,7 @@ class CPDF_CMap public: CPDF_CMap(); FX_BOOL LoadPredefined(CPDF_CMapManager* pMgr, const FX_CHAR* name, FX_BOOL bPromptCJK); - FX_BOOL LoadEmbedded(FX_LPCBYTE pData, FX_DWORD dwSize); + FX_BOOL LoadEmbedded(const uint8_t* pData, FX_DWORD dwSize); void Release(); FX_BOOL IsLoaded() const { @@ -98,9 +98,9 @@ public: FX_WORD CIDFromCharCode(FX_DWORD charcode) const; FX_DWORD CharCodeFromCID(FX_WORD CID) const; int GetCharSize(FX_DWORD charcode) const; - FX_DWORD GetNextChar(FX_LPCSTR pString, int nStrLen, int& offset) const; - int CountChar(FX_LPCSTR pString, int size) const; - int AppendChar(FX_LPSTR str, FX_DWORD charcode) const; + FX_DWORD GetNextChar(const FX_CHAR* pString, int nStrLen, int& offset) const; + int CountChar(const FX_CHAR* pString, int size) const; + int AppendChar(FX_CHAR* str, FX_DWORD charcode) const; typedef enum {OneByte, TwoBytes, MixedTwoBytes, MixedFourBytes} CodingScheme; protected: ~CPDF_CMap(); @@ -115,7 +115,7 @@ protected: int m_nCodeRanges; uint8_t* m_pLeadingBytes; FX_WORD* m_pMapping; - FX_LPBYTE m_pAddMapping; + uint8_t* m_pAddMapping; FX_BOOL m_bLoaded; const FXCMAP_CMap* m_pEmbedMap; CPDF_CMap* m_pUseMap; @@ -123,7 +123,7 @@ protected: class CPDF_PredefinedCMap { public: - FX_LPCSTR m_pName; + const FX_CHAR* m_pName; int m_Charset; int m_Coding; CPDF_CMap::CodingScheme m_CodingScheme; diff --git a/core/src/fpdfapi/fpdf_font/fpdf_font.cpp b/core/src/fpdfapi/fpdf_font/fpdf_font.cpp index 0058e140d4..c6922d11f8 100644 --- a/core/src/fpdfapi/fpdf_font/fpdf_font.cpp +++ b/core/src/fpdfapi/fpdf_font/fpdf_font.cpp @@ -205,7 +205,7 @@ CFX_WideString CPDF_Font::DecodeString(const CFX_ByteString& str) const CFX_WideString result; int src_len = str.GetLength(); result.Reserve(src_len); - FX_LPCSTR src_buf = str; + const FX_CHAR* src_buf = str; int src_pos = 0; while (src_pos < src_len) { FX_DWORD charcode = GetNextChar(src_buf, src_len, src_pos); @@ -222,8 +222,8 @@ CFX_ByteString CPDF_Font::EncodeString(const CFX_WideString& str) const { CFX_ByteString result; int src_len = str.GetLength(); - FX_LPSTR dest_buf = result.GetBuffer(src_len * 2); - FX_LPCWSTR src_buf = str.c_str(); + FX_CHAR* dest_buf = result.GetBuffer(src_len * 2); + const FX_WCHAR* src_buf = str.c_str(); int dest_pos = 0; for (int src_pos = 0; src_pos < src_len; src_pos ++) { FX_DWORD charcode = CharCodeFromUnicode(src_buf[src_pos]); @@ -289,7 +289,7 @@ void CPDF_Font::LoadFontDescriptor(CPDF_Dictionary* pFontDesc) if (m_pFontFile == NULL) { return; } - FX_LPCBYTE pFontData = m_pFontFile->GetData(); + const uint8_t* pFontData = m_pFontFile->GetData(); FX_DWORD dwFontSize = m_pFontFile->GetSize(); m_Font.LoadEmbedded(pFontData, dwFontSize); if (m_Font.m_Face == NULL) { @@ -369,7 +369,7 @@ void CPDF_Font::LoadUnicodeMap() m_pToUnicodeMap = new CPDF_ToUnicodeMap; m_pToUnicodeMap->Load(pStream); } -int CPDF_Font::GetStringWidth(FX_LPCSTR pString, int size) +int CPDF_Font::GetStringWidth(const FX_CHAR* pString, int size) { int offset = 0; int width = 0; @@ -431,7 +431,7 @@ CPDF_Font* CPDF_Font::CreateFontF(CPDF_Document* pDoc, CPDF_Dictionary* pFontDic int i; int count = sizeof(ChineseFontNames) / sizeof(ChineseFontNames[0]); for (i = 0; i < count; ++i) { - if (tag == CFX_ByteString((FX_LPCSTR)ChineseFontNames[i])) { + if (tag == CFX_ByteString((const FX_CHAR*)ChineseFontNames[i])) { break; } } @@ -500,7 +500,7 @@ CFX_WideString CPDF_ToUnicodeMap::Lookup(FX_DWORD charcode) if (unicode != 0xffff) { return unicode; } - FX_LPCWSTR buf = m_MultiCharBuf.GetBuffer(); + const FX_WCHAR* buf = m_MultiCharBuf.GetBuffer(); FX_DWORD buf_len = m_MultiCharBuf.GetLength(); if (buf == NULL || buf_len == 0) { return CFX_WideString(); @@ -534,7 +534,7 @@ FX_DWORD CPDF_ToUnicodeMap::ReverseLookup(FX_WCHAR unicode) } static FX_DWORD _StringToCode(FX_BSTR str) { - FX_LPCSTR buf = str.GetCStr(); + const FX_CHAR* buf = str.GetCStr(); int len = str.GetLength(); if (len == 0) { return 0; @@ -586,7 +586,7 @@ static CFX_WideString _StringDataAdd(CFX_WideString str) } static CFX_WideString _StringToWideString(FX_BSTR str) { - FX_LPCSTR buf = str.GetCStr(); + const FX_CHAR* buf = str.GetCStr(); int len = str.GetLength(); if (len == 0) { return CFX_WideString(); @@ -816,7 +816,7 @@ FX_BOOL CPDF_Font::IsStandardFont() const } return TRUE; } -extern FX_LPCSTR PDF_CharNameFromPredefinedCharSet(int encoding, uint8_t charcode); +extern const FX_CHAR* PDF_CharNameFromPredefinedCharSet(int encoding, uint8_t charcode); CPDF_SimpleFont::CPDF_SimpleFont(int fonttype) : CPDF_Font(fonttype) { FXSYS_memset8(m_CharBBox, 0xff, sizeof m_CharBBox); @@ -907,13 +907,13 @@ void CPDF_SimpleFont::GetCharBBox(FX_DWORD charcode, FX_RECT& rect, int level) rect.bottom = m_CharBBox[charcode].Bottom; rect.top = m_CharBBox[charcode].Top; } -FX_LPCSTR GetAdobeCharName(int iBaseEncoding, const CFX_ByteString* pCharNames, int charcode) +const FX_CHAR* GetAdobeCharName(int iBaseEncoding, const CFX_ByteString* pCharNames, int charcode) { ASSERT(charcode >= 0 && charcode < 256); if (charcode < 0 || charcode >= 256) { return NULL; } - FX_LPCSTR name = NULL; + const FX_CHAR* name = NULL; if (pCharNames) { name = pCharNames[charcode]; } @@ -1081,8 +1081,8 @@ int CPDF_Type1Font::GlyphFromCharCodeExt(FX_DWORD charcode) } #if _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_ struct _GlyphNameMap { - FX_LPCSTR m_pStrAdobe; - FX_LPCSTR m_pStrUnicode; + const FX_CHAR* m_pStrAdobe; + const FX_CHAR* m_pStrUnicode; }; static const _GlyphNameMap g_GlyphNameSubsts[] = { {"ff", "uniFB00"}, @@ -1094,10 +1094,10 @@ static const _GlyphNameMap g_GlyphNameSubsts[] = { extern "C" { static int compareString(const void* key, const void* element) { - return FXSYS_stricmp((FX_LPCSTR)key, ((_GlyphNameMap*)element)->m_pStrAdobe); + return FXSYS_stricmp((const FX_CHAR*)key, ((_GlyphNameMap*)element)->m_pStrAdobe); } } -static FX_LPCSTR _GlyphNameRemap(FX_LPCSTR pStrAdobe) +static const FX_CHAR* _GlyphNameRemap(const FX_CHAR* pStrAdobe) { _GlyphNameMap* found = (_GlyphNameMap*)FXSYS_bsearch(pStrAdobe, g_GlyphNameSubsts, sizeof g_GlyphNameSubsts / sizeof(_GlyphNameMap), sizeof(_GlyphNameMap), @@ -1164,7 +1164,7 @@ void CPDF_Type1Font::LoadGlyphMap() m_BaseEncoding = PDFFONT_ENCODING_STANDARD; } for (int charcode = 0; charcode < 256; charcode ++) { - FX_LPCSTR name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); + const FX_CHAR* name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); if (name == NULL) { continue; } @@ -1207,7 +1207,7 @@ void CPDF_Type1Font::LoadGlyphMap() if (bCoreText) { if (m_Flags & PDFFONT_SYMBOLIC) { for (int charcode = 0; charcode < 256; charcode ++) { - FX_LPCSTR name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); + const FX_CHAR* name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); if (name) { m_Encoding.m_Unicodes[charcode] = PDF_UnicodeFromAdobeName(name); m_GlyphIndex[charcode] = FXFT_Get_Name_Index(m_Font.m_Face, (char*)name); @@ -1244,12 +1244,12 @@ void CPDF_Type1Font::LoadGlyphMap() bUnicode = TRUE; } for (int charcode = 0; charcode < 256; charcode ++) { - FX_LPCSTR name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); + const FX_CHAR* name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); if (name == NULL) { continue; } m_Encoding.m_Unicodes[charcode] = PDF_UnicodeFromAdobeName(name); - FX_LPCSTR pStrUnicode = _GlyphNameRemap(name); + const FX_CHAR* pStrUnicode = _GlyphNameRemap(name); if (pStrUnicode && 0 == FXFT_Get_Name_Index(m_Font.m_Face, (char*)name)) { name = pStrUnicode; } @@ -1289,7 +1289,7 @@ void CPDF_Type1Font::LoadGlyphMap() #endif if (m_Flags & PDFFONT_SYMBOLIC) { for (int charcode = 0; charcode < 256; charcode ++) { - FX_LPCSTR name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); + const FX_CHAR* name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); if (name) { m_Encoding.m_Unicodes[charcode] = PDF_UnicodeFromAdobeName(name); m_GlyphIndex[charcode] = FXFT_Get_Name_Index(m_Font.m_Face, (char*)name); @@ -1322,7 +1322,7 @@ void CPDF_Type1Font::LoadGlyphMap() bUnicode = TRUE; } for (int charcode = 0; charcode < 256; charcode ++) { - FX_LPCSTR name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); + const FX_CHAR* name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); if (name == NULL) { continue; } @@ -1475,7 +1475,7 @@ void CPDF_TrueTypeFont::LoadGlyphMap() } FX_BOOL bToUnicode = m_pFontDict->KeyExist(FX_BSTRC("ToUnicode")); for (int charcode = 0; charcode < 256; charcode ++) { - FX_LPCSTR name = GetAdobeCharName(baseEncoding, m_pCharNames, charcode); + const FX_CHAR* name = GetAdobeCharName(baseEncoding, m_pCharNames, charcode); if (name == NULL) { m_GlyphIndex[charcode] = m_pFontFile ? FXFT_Get_Char_Index(m_Font.m_Face, charcode) : -1; continue; @@ -1540,7 +1540,7 @@ void CPDF_TrueTypeFont::LoadGlyphMap() if (bGotOne) { if (baseEncoding != PDFFONT_ENCODING_BUILTIN) { for (int charcode = 0; charcode < 256; charcode ++) { - FX_LPCSTR name = GetAdobeCharName(baseEncoding, m_pCharNames, charcode); + const FX_CHAR* name = GetAdobeCharName(baseEncoding, m_pCharNames, charcode); if (name == NULL) { continue; } @@ -1572,7 +1572,7 @@ void CPDF_TrueTypeFont::LoadGlyphMap() const FX_WORD* pUnicodes = PDF_UnicodesForPredefinedCharSet(baseEncoding); for (int charcode = 0; charcode < 256; charcode ++) { if (m_pFontFile == NULL) { - FX_LPCSTR name = GetAdobeCharName(0, m_pCharNames, charcode); + const FX_CHAR* name = GetAdobeCharName(0, m_pCharNames, charcode); if (name != NULL) { m_Encoding.m_Unicodes[charcode] = PDF_UnicodeFromAdobeName(name); } else if (pUnicodes) { @@ -1603,14 +1603,16 @@ CPDF_Type3Font::~CPDF_Type3Font() { FX_POSITION pos = m_CacheMap.GetStartPosition(); while (pos) { - FX_LPVOID key, value; + void* key; + void* value; m_CacheMap.GetNextAssoc(pos, key, value); delete (CPDF_Type3Char*)value; } m_CacheMap.RemoveAll(); pos = m_DeletedMap.GetStartPosition(); while (pos) { - FX_LPVOID key, value; + void* key; + void* value; m_DeletedMap.GetNextAssoc(pos, key, value); delete (CPDF_Type3Char*)key; } @@ -1671,15 +1673,15 @@ CPDF_Type3Char* CPDF_Type3Font::LoadChar(FX_DWORD charcode, int level) return NULL; } CPDF_Type3Char* pChar = NULL; - if (m_CacheMap.Lookup((FX_LPVOID)(uintptr_t)charcode, (FX_LPVOID&)pChar)) { + if (m_CacheMap.Lookup((void*)(uintptr_t)charcode, (void*&)pChar)) { if (pChar->m_bPageRequired && m_pPageResources) { delete pChar; - m_CacheMap.RemoveKey((FX_LPVOID)(uintptr_t)charcode); + m_CacheMap.RemoveKey((void*)(uintptr_t)charcode); return LoadChar(charcode, level + 1); } return pChar; } - FX_LPCSTR name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); + const FX_CHAR* name = GetAdobeCharName(m_BaseEncoding, m_pCharNames, charcode); if (name == NULL) { return NULL; } @@ -1703,7 +1705,7 @@ CPDF_Type3Char* CPDF_Type3Font::LoadChar(FX_DWORD charcode, int level) rcBBox.right = FXSYS_round(char_rect.right * 1000); rcBBox.top = FXSYS_round(char_rect.top * 1000); rcBBox.bottom = FXSYS_round(char_rect.bottom * 1000); - m_CacheMap.SetAt((FX_LPVOID)(uintptr_t)charcode, pChar); + m_CacheMap.SetAt((void*)(uintptr_t)charcode, pChar); if (pChar->m_pForm->CountObjects() == 0) { delete pChar->m_pForm; pChar->m_pForm = NULL; diff --git a/core/src/fpdfapi/fpdf_font/fpdf_font_charset.cpp b/core/src/fpdfapi/fpdf_font/fpdf_font_charset.cpp index 8e8fccd8a3..8d2f922fb1 100644 --- a/core/src/fpdfapi/fpdf_font/fpdf_font_charset.cpp +++ b/core/src/fpdfapi/fpdf_font/fpdf_font_charset.cpp @@ -264,7 +264,7 @@ const FX_WORD ZapfEncoding[256] = { 0x0000, 0x27B1, 0x27B2, 0x27B3, 0x27B4, 0x27B5, 0x27B6, 0x27B7, 0x27B8, 0x27B9, 0x27BA, 0x27BB, 0x27BC, 0x27BD, 0x27BE, 0x0000, }; -const FX_LPCSTR StandardEncodingNames[224] = { +const FX_CHAR* const StandardEncodingNames[224] = { "space", "exclam", "quotedbl", "numbersign", "dollar", "percent", "ampersand", "quoteright", "parenleft", "parenright", "asterisk", "plus", "comma", "hyphen", "period", "slash", "zero", "one", "two", "three", "four", "five", "six", "seven", @@ -294,7 +294,7 @@ const FX_LPCSTR StandardEncodingNames[224] = { NULL, "ae", NULL, NULL, NULL, "dotlessi", NULL, NULL, "lslash", "oslash", "oe", "germandbls", NULL, NULL, NULL, NULL, }; -const FX_LPCSTR AdobeWinAnsiEncodingNames[224] = { +const FX_CHAR* const AdobeWinAnsiEncodingNames[224] = { "space", "exclam", "quotedbl", "numbersign", "dollar", "percent", "ampersand", "quotesingle", "parenleft", "parenright", "asterisk", "plus", "comma", "hyphen", "period", "slash", "zero", "one", "two", "three", "four", "five", "six", "seven", @@ -324,7 +324,7 @@ const FX_LPCSTR AdobeWinAnsiEncodingNames[224] = { "eth", "ntilde", "ograve", "oacute", "ocircumflex", "otilde", "odieresis", "divide", "oslash", "ugrave", "uacute", "ucircumflex", "udieresis", "yacute", "thorn", "ydieresis", }; -const FX_LPCSTR MacRomanEncodingNames[224] = { +const FX_CHAR* const MacRomanEncodingNames[224] = { "space", "exclam", "quotedbl", "numbersign", "dollar", "percent", "ampersand", "quotesingle", "parenleft", "parenright", "asterisk", "plus", "comma", "hyphen", "period", "slash", "zero", "one", "two", "three", "four", "five", "six", "seven", @@ -354,7 +354,7 @@ const FX_LPCSTR MacRomanEncodingNames[224] = { "apple", "Ograve", "Uacute", "Ucircumflex", "Ugrave", "dotlessi", "circumflex", "tilde", "macron", "breve", "dotaccent", "ring", "cedilla", "hungarumlaut", "ogonek", "caron", }; -const FX_LPCSTR MacExpertEncodingNames[224] = { +const FX_CHAR* const MacExpertEncodingNames[224] = { "space", "exclamsmall", "Hungarumlautsmall", "centoldstyle", "dollaroldstyle", "dollarsuperior", "ampersandsmall", "Acutesmall", "parenleftsuperior", "parenrightsuperior", "twodotenleader", "onedotenleader", "comma", "hyphen", "period", "fraction", "zerooldstyle", "oneoldstyle", "twooldstyle", "threeoldstyle", "fouroldstyle", "fiveoldstyle", "sixoldstyle", "sevenoldstyle", @@ -384,7 +384,7 @@ const FX_LPCSTR MacExpertEncodingNames[224] = { NULL, "lsuperior", "Ogoneksmall", "Brevesmall", "Macronsmall", "bsuperior", "nsuperior", "msuperior", "commasuperior", "periodsuperior", "Dotaccentsmall", "Ringsmall", NULL, NULL, NULL, NULL, }; -const FX_LPCSTR PDFDocEncodingNames[232] = { +const FX_CHAR* const PDFDocEncodingNames[232] = { "breve", "caron", "circumflex", "dotaccent", "hungarumlaut", "ogonek", "ring", "tilde", "space", "exclam", "quotedbl", "numbersign", "dollar", "percent", "ampersand", "quotesingle", "parenleft", "parenright", "asterisk", "plus", "comma", "hyphen", "period", "slash", @@ -415,7 +415,7 @@ const FX_LPCSTR PDFDocEncodingNames[232] = { "eth", "ntilde", "ograve", "oacute", "ocircumflex", "otilde", "odieresis", "divide", "oslash", "ugrave", "uacute", "ucircumflex", "udieresis", "yacute", "thorn", "ydieresis", }; -const FX_LPCSTR AdobeSymbolEncodingNames[224] = { +const FX_CHAR* const AdobeSymbolEncodingNames[224] = { "space", "exclam", "universal", "numbersign", "existential", "percent", "ampersand", "suchthat", "parenleft", "parenright", "asteriskmath", "plus", "comma", "minus", "period", "slash", "zero", "one", "two", "three", "four", "five", "six", "seven", @@ -445,7 +445,7 @@ const FX_LPCSTR AdobeSymbolEncodingNames[224] = { NULL, "angleright", "integral", "integraltp", "integralex", "integralbt", "parenrighttp", "parenrightex", "parenrightbt", "bracketrighttp", "bracketrightex", "bracketrightbt", "bracerighttp", "bracerightmid", "bracerightbt", NULL, }; -const FX_LPCSTR ZapfEncodingNames[224] = { +const FX_CHAR* const ZapfEncodingNames[224] = { "space", "a1", "a2", "a202", "a3", "a4", "a5", "a119", "a118", "a117", "a11", "a12", "a13", "a14", "a15", "a16", "a105", "a17", "a18", "a19", "a20", "a21", "a22", "a23", diff --git a/core/src/fpdfapi/fpdf_font/fpdf_font_cid.cpp b/core/src/fpdfapi/fpdf_font/fpdf_font_cid.cpp index a6209cb536..bec2c90144 100644 --- a/core/src/fpdfapi/fpdf_font/fpdf_font_cid.cpp +++ b/core/src/fpdfapi/fpdf_font/fpdf_font_cid.cpp @@ -13,7 +13,7 @@ extern FX_DWORD FT_CharCodeFromUnicode(int encoding, FX_WCHAR unicode); extern short TT2PDF(int m, FXFT_Face face); extern FX_BOOL FT_UseTTCharmap(FXFT_Face face, int platform_id, int encoding_id); -extern FX_LPCSTR GetAdobeCharName(int iBaseEncoding, const CFX_ByteString* pCharNames, int charcode); +extern const FX_CHAR* GetAdobeCharName(int iBaseEncoding, const CFX_ByteString* pCharNames, int charcode); CPDF_CMapManager::CPDF_CMapManager() { m_bPrompted = FALSE; @@ -26,7 +26,7 @@ CPDF_CMapManager::~CPDF_CMapManager() CPDF_CMap* CPDF_CMapManager::GetPredefinedCMap(const CFX_ByteString& name, FX_BOOL bPromptCJK) { CPDF_CMap* pCMap; - if (m_CMaps.Lookup(name, (FX_LPVOID&)pCMap)) { + if (m_CMaps.Lookup(name, (void*&)pCMap)) { return pCMap; } pCMap = LoadPredefinedCMap(name, bPromptCJK); @@ -39,14 +39,14 @@ CPDF_CMap* CPDF_CMapManager::GetPredefinedCMap(const CFX_ByteString& name, FX_BO CPDF_CMap* CPDF_CMapManager::LoadPredefinedCMap(const CFX_ByteString& name, FX_BOOL bPromptCJK) { CPDF_CMap* pCMap = new CPDF_CMap; - FX_LPCSTR pname = name; + const FX_CHAR* pname = name; if (*pname == '/') { pname ++; } pCMap->LoadPredefined(this, pname, bPromptCJK); return pCMap; } -static const FX_LPCSTR g_CharsetNames[NUMBER_OF_CIDSETS] = {NULL, "GB1", "CNS1", "Japan1", "Korea1", "UCS" }; +static const FX_CHAR* const g_CharsetNames[NUMBER_OF_CIDSETS] = {NULL, "GB1", "CNS1", "Japan1", "Korea1", "UCS" }; static const int g_CharsetCPs[NUMBER_OF_CIDSETS] = {0, 936, 950, 932, 949, 1200 }; int _CharsetFromOrdering(const CFX_ByteString& Ordering) { @@ -66,7 +66,7 @@ void CPDF_CMapManager::DropAll(FX_BOOL bReload) while (pos) { CFX_ByteString name; CPDF_CMap* pCMap; - m_CMaps.GetNextAssoc(pos, name, (FX_LPVOID&)pCMap); + m_CMaps.GetNextAssoc(pos, name, (void*&)pCMap); if (pCMap == NULL) { continue; } @@ -347,7 +347,7 @@ const CPDF_PredefinedCMap g_PredefinedCMaps[] = { }; extern void FPDFAPI_FindEmbeddedCMap(const char* name, int charset, int coding, const FXCMAP_CMap*& pMap); extern FX_WORD FPDFAPI_CIDFromCharCode(const FXCMAP_CMap* pMap, FX_DWORD charcode); -FX_BOOL CPDF_CMap::LoadPredefined(CPDF_CMapManager* pMgr, FX_LPCSTR pName, FX_BOOL bPromptCJK) +FX_BOOL CPDF_CMap::LoadPredefined(CPDF_CMapManager* pMgr, const FX_CHAR* pName, FX_BOOL bPromptCJK) { m_PredefinedCMap = pName; if (m_PredefinedCMap == FX_BSTRC("Identity-H") || m_PredefinedCMap == FX_BSTRC("Identity-V")) { @@ -396,7 +396,7 @@ extern "C" { return (*(FX_DWORD*)data1) - (*(FX_DWORD*)data2); } }; -FX_BOOL CPDF_CMap::LoadEmbedded(FX_LPCBYTE pData, FX_DWORD size) +FX_BOOL CPDF_CMap::LoadEmbedded(const uint8_t* pData, FX_DWORD size) { m_pMapping = FX_Alloc(FX_WORD, 65536); CPDF_CMapParser parser; @@ -462,7 +462,7 @@ FX_WORD CPDF_CMap::CIDFromCharCode(FX_DWORD charcode) const } return (FX_WORD)CID; } -static int _CheckCodeRange(FX_LPBYTE codes, int size, _CMap_CodeRange* pRanges, int nRanges) +static int _CheckCodeRange(uint8_t* codes, int size, _CMap_CodeRange* pRanges, int nRanges) { int iSeg = nRanges - 1; while (iSeg >= 0) { @@ -491,26 +491,26 @@ static int _CheckCodeRange(FX_LPBYTE codes, int size, _CMap_CodeRange* pRanges, } return 0; } -FX_DWORD CPDF_CMap::GetNextChar(FX_LPCSTR pString, int nStrLen, int& offset) const +FX_DWORD CPDF_CMap::GetNextChar(const FX_CHAR* pString, int nStrLen, int& offset) const { switch (m_CodingScheme) { case OneByte: - return ((FX_LPBYTE)pString)[offset++]; + return ((uint8_t*)pString)[offset++]; case TwoBytes: offset += 2; - return ((FX_LPBYTE)pString)[offset - 2] * 256 + ((FX_LPBYTE)pString)[offset - 1]; + return ((uint8_t*)pString)[offset - 2] * 256 + ((uint8_t*)pString)[offset - 1]; case MixedTwoBytes: { - uint8_t byte1 = ((FX_LPBYTE)pString)[offset++]; + uint8_t byte1 = ((uint8_t*)pString)[offset++]; if (!m_pLeadingBytes[byte1]) { return byte1; } - uint8_t byte2 = ((FX_LPBYTE)pString)[offset++]; + uint8_t byte2 = ((uint8_t*)pString)[offset++]; return byte1 * 256 + byte2; } case MixedFourBytes: { uint8_t codes[4]; int char_size = 1; - codes[0] = ((FX_LPBYTE)pString)[offset++]; + codes[0] = ((uint8_t*)pString)[offset++]; _CMap_CodeRange* pRanges = (_CMap_CodeRange*)m_pLeadingBytes; while (1) { int ret = _CheckCodeRange(codes, char_size, pRanges, m_nCodeRanges); @@ -527,7 +527,7 @@ FX_DWORD CPDF_CMap::GetNextChar(FX_LPCSTR pString, int nStrLen, int& offset) con if (char_size == 4 || offset == nStrLen) { return 0; } - codes[char_size ++] = ((FX_LPBYTE)pString)[offset++]; + codes[char_size ++] = ((uint8_t*)pString)[offset++]; } break; } @@ -556,7 +556,7 @@ int CPDF_CMap::GetCharSize(FX_DWORD charcode) const } return 1; } -int CPDF_CMap::CountChar(FX_LPCSTR pString, int size) const +int CPDF_CMap::CountChar(const FX_CHAR* pString, int size) const { switch (m_CodingScheme) { case OneByte: @@ -567,7 +567,7 @@ int CPDF_CMap::CountChar(FX_LPCSTR pString, int size) const int count = 0; for (int i = 0; i < size; i ++) { count ++; - if (m_pLeadingBytes[((FX_LPBYTE)pString)[i]]) { + if (m_pLeadingBytes[((uint8_t*)pString)[i]]) { i ++; } } @@ -619,7 +619,7 @@ int _GetCharSize(FX_DWORD charcode, _CMap_CodeRange* pRanges, int iRangesSize) } return 1; } -int CPDF_CMap::AppendChar(FX_LPSTR str, FX_DWORD charcode) const +int CPDF_CMap::AppendChar(FX_CHAR* str, FX_DWORD charcode) const { switch (m_CodingScheme) { case OneByte: @@ -793,7 +793,7 @@ FX_WCHAR CPDF_CIDFont::_UnicodeFromCharCode(FX_DWORD charcode) const charcode = (charcode % 256) * 256 + (charcode / 256); charsize = 2; } - int ret = FXSYS_MultiByteToWideChar(g_CharsetCPs[m_pCMap->m_Coding], 0, (FX_LPCSTR)&charcode, charsize, &unicode, 1); + int ret = FXSYS_MultiByteToWideChar(g_CharsetCPs[m_pCMap->m_Coding], 0, (const FX_CHAR*)&charcode, charsize, &unicode, 1); if (ret != 1) { return 0; } @@ -1056,7 +1056,7 @@ void CPDF_CIDFont::GetCharBBox(FX_DWORD charcode, FX_RECT& rect, int level) } if (m_pFontFile == NULL && m_Charset == CIDSET_JAPAN1) { FX_WORD CID = CIDFromCharCode(charcode); - FX_LPCBYTE pTransform = GetCIDTransform(CID); + const uint8_t* pTransform = GetCIDTransform(CID); if (pTransform && !bVert) { CFX_AffineMatrix matrix(_CIDTransformToFloat(pTransform[0]), _CIDTransformToFloat(pTransform[1]), _CIDTransformToFloat(pTransform[2]), _CIDTransformToFloat(pTransform[3]), @@ -1222,7 +1222,7 @@ int CPDF_CIDFont::GlyphFromCharCode(FX_DWORD charcode, FX_BOOL *pVertGlyph) } else if (bMacRoman) { iBaseEncoding = PDFFONT_ENCODING_MACROMAN; } - FX_LPCSTR name = GetAdobeCharName(iBaseEncoding, NULL, charcode); + const FX_CHAR* name = GetAdobeCharName(iBaseEncoding, NULL, charcode); if (name == NULL) { return charcode == 0 ? -1 : (int)charcode; } @@ -1314,10 +1314,10 @@ int CPDF_CIDFont::GlyphFromCharCode(FX_DWORD charcode, FX_BOOL *pVertGlyph) if (byte_pos + 2 > m_pCIDToGIDMap->GetSize()) { return -1; } - FX_LPCBYTE pdata = m_pCIDToGIDMap->GetData() + byte_pos; + const uint8_t* pdata = m_pCIDToGIDMap->GetData() + byte_pos; return pdata[0] * 256 + pdata[1]; } -FX_DWORD CPDF_CIDFont::GetNextChar(FX_LPCSTR pString, int nStrLen, int& offset) const +FX_DWORD CPDF_CIDFont::GetNextChar(const FX_CHAR* pString, int nStrLen, int& offset) const { return m_pCMap->GetNextChar(pString, nStrLen, offset); } @@ -1325,11 +1325,11 @@ int CPDF_CIDFont::GetCharSize(FX_DWORD charcode) const { return m_pCMap->GetCharSize(charcode); } -int CPDF_CIDFont::CountChar(FX_LPCSTR pString, int size) const +int CPDF_CIDFont::CountChar(const FX_CHAR* pString, int size) const { return m_pCMap->CountChar(pString, size); } -int CPDF_CIDFont::AppendChar(FX_LPSTR str, FX_DWORD charcode) const +int CPDF_CIDFont::AppendChar(FX_CHAR* str, FX_DWORD charcode) const { return m_pCMap->AppendChar(str, charcode); } @@ -1579,7 +1579,7 @@ Japan1_VertCIDs[] = { {8818, 0, 129, 127, 0, 19, 114}, {8819, 0, 129, 127, 0, 218, 108}, }; -FX_LPCBYTE CPDF_CIDFont::GetCIDTransform(FX_WORD CID) const +const uint8_t* CPDF_CIDFont::GetCIDTransform(FX_WORD CID) const { if (m_Charset != CIDSET_JAPAN1 || m_pFontFile != NULL) { return NULL; diff --git a/core/src/fpdfapi/fpdf_font/ttgsubtable.cpp b/core/src/fpdfapi/fpdf_font/ttgsubtable.cpp index ab15c47cb3..b6b2f57c02 100644 --- a/core/src/fpdfapi/fpdf_font/ttgsubtable.cpp +++ b/core/src/fpdfapi/fpdf_font/ttgsubtable.cpp @@ -48,7 +48,7 @@ void CFX_GlyphMap::SetAt(int key, int value) } FX_BOOL CFX_GlyphMap::Lookup(int key, int &value) { - FX_LPVOID pResult = FXSYS_bsearch(&key, m_Buffer.GetBuffer(), m_Buffer.GetSize() / sizeof(_IntPair), + void* pResult = FXSYS_bsearch(&key, m_Buffer.GetBuffer(), m_Buffer.GetSize() / sizeof(_IntPair), sizeof(_IntPair), _CompareInt); if (pResult == NULL) { return FALSE; |