Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(50)

Side by Side Diff: fpdfsdk/src/formfiller/FFL_CBA_Fontmap.cpp

Issue 1194933003: Make CPDF_Object::GetString() a virtual method. (Closed) Base URL: https://pdfium.googlesource.com/pdfium@master
Patch Set: rebase Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/formfiller/FormFiller.h" 7 #include "../../include/formfiller/FormFiller.h"
8 #include "../../include/formfiller/FFL_CBA_Fontmap.h" 8 #include "../../include/formfiller/FFL_CBA_Fontmap.h"
9 9
10 CBA_FontMap::CBA_FontMap(CPDFSDK_Annot* pAnnot, IFX_SystemHandler* pSystemHandle r) : 10 CBA_FontMap::CBA_FontMap(CPDFSDK_Annot* pAnnot, IFX_SystemHandler* pSystemHandle r) :
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
86 int32_t nCharset = DEFAULT_CHARSET; 86 int32_t nCharset = DEFAULT_CHARSET;
87 if (const CFX_SubstFont* pSubstFont = m_pDefaultFont->GetSubstFont()) 87 if (const CFX_SubstFont* pSubstFont = m_pDefaultFont->GetSubstFont())
88 nCharset = pSubstFont->m_Charset; 88 nCharset = pSubstFont->m_Charset;
89 AddFontData(m_pDefaultFont, m_sDefaultFontName, nCharset); 89 AddFontData(m_pDefaultFont, m_sDefaultFontName, nCharset);
90 } 90 }
91 91
92 CPDF_Font* CBA_FontMap::FindFontSameCharset(CFX_ByteString& sFontAlias, int32_t nCharset) 92 CPDF_Font* CBA_FontMap::FindFontSameCharset(CFX_ByteString& sFontAlias, int32_t nCharset)
93 { 93 {
94 ASSERT(m_pAnnotDict != NULL); 94 ASSERT(m_pAnnotDict != NULL);
95 95
96 » if (m_pAnnotDict->GetString("Subtype") == "Widget") 96 » if (m_pAnnotDict->GetStringAt("Subtype") == "Widget")
97 { 97 {
98 CPDF_Document* pDocument = GetDocument(); 98 CPDF_Document* pDocument = GetDocument();
99 ASSERT(pDocument != NULL); 99 ASSERT(pDocument != NULL);
100 100
101 CPDF_Dictionary * pRootDict = pDocument->GetRoot(); 101 CPDF_Dictionary * pRootDict = pDocument->GetRoot();
102 if (!pRootDict) return NULL; 102 if (!pRootDict) return NULL;
103 103
104 CPDF_Dictionary* pAcroFormDict = pRootDict->GetDict("AcroForm"); 104 CPDF_Dictionary* pAcroFormDict = pRootDict->GetDict("AcroForm");
105 if (!pAcroFormDict) return NULL; 105 if (!pAcroFormDict) return NULL;
106 106
(...skipping 29 matching lines...) Expand all
136 { 136 {
137 CPDF_Object* pObj = NULL; 137 CPDF_Object* pObj = NULL;
138 CFX_ByteString csKey; 138 CFX_ByteString csKey;
139 pObj = pFonts->GetNextElement(pos, csKey); 139 pObj = pFonts->GetNextElement(pos, csKey);
140 if (pObj == NULL) continue; 140 if (pObj == NULL) continue;
141 141
142 CPDF_Object* pDirect = pObj->GetDirect(); 142 CPDF_Object* pDirect = pObj->GetDirect();
143 if (pDirect == NULL || pDirect->GetType() != PDFOBJ_DICTIONARY) continue; 143 if (pDirect == NULL || pDirect->GetType() != PDFOBJ_DICTIONARY) continue;
144 144
145 CPDF_Dictionary* pElement = (CPDF_Dictionary*)pDirect; 145 CPDF_Dictionary* pElement = (CPDF_Dictionary*)pDirect;
146 » » if (pElement->GetString("Type") != "Font") continue; 146 » » if (pElement->GetStringAt("Type") != "Font")
147 continue;
147 148
148 CPDF_Font* pFont = pDocument->LoadFont(pElement); 149 CPDF_Font* pFont = pDocument->LoadFont(pElement);
149 if (pFont == NULL) continue; 150 if (pFont == NULL) continue;
150 const CFX_SubstFont* pSubst = pFont->GetSubstFont(); 151 const CFX_SubstFont* pSubst = pFont->GetSubstFont();
151 if (pSubst == NULL) continue; 152 if (pSubst == NULL) continue;
152 if (pSubst->m_Charset == nCharset) 153 if (pSubst->m_Charset == nCharset)
153 { 154 {
154 sFontAlias = csKey; 155 sFontAlias = csKey;
155 pFind = pFont; 156 pFind = pFont;
156 } 157 }
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
223 } 224 }
224 } 225 }
225 226
226 CPDF_Font* CBA_FontMap::GetAnnotDefaultFont(CFX_ByteString &sAlias) 227 CPDF_Font* CBA_FontMap::GetAnnotDefaultFont(CFX_ByteString &sAlias)
227 { 228 {
228 ASSERT(m_pAnnotDict != NULL); 229 ASSERT(m_pAnnotDict != NULL);
229 ASSERT(m_pDocument != NULL); 230 ASSERT(m_pDocument != NULL);
230 231
231 CPDF_Dictionary* pAcroFormDict = NULL; 232 CPDF_Dictionary* pAcroFormDict = NULL;
232 233
233 » FX_BOOL bWidget = (m_pAnnotDict->GetString("Subtype") == "Widget"); 234 » FX_BOOL bWidget = (m_pAnnotDict->GetStringAt("Subtype") == "Widget");
234 235
235 if (bWidget) 236 if (bWidget)
236 { 237 {
237 if (CPDF_Dictionary * pRootDict = m_pDocument->GetRoot()) 238 if (CPDF_Dictionary * pRootDict = m_pDocument->GetRoot())
238 pAcroFormDict = pRootDict->GetDict("AcroForm"); 239 pAcroFormDict = pRootDict->GetDict("AcroForm");
239 } 240 }
240 241
241 CFX_ByteString sDA; 242 CFX_ByteString sDA;
242 CPDF_Object* pObj; 243 CPDF_Object* pObj;
243 if ((pObj = FPDF_GetFieldAttr(m_pAnnotDict, "DA"))) 244 if ((pObj = FPDF_GetFieldAttr(m_pAnnotDict, "DA")))
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
290 } 291 }
291 292
292 void CBA_FontMap::SetAPType(const CFX_ByteString& sAPType) 293 void CBA_FontMap::SetAPType(const CFX_ByteString& sAPType)
293 { 294 {
294 m_sAPType = sAPType; 295 m_sAPType = sAPType;
295 296
296 Reset(); 297 Reset();
297 Initial(); 298 Initial();
298 } 299 }
299 300
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698