Index: core/src/fpdfdoc/doc_tagged.cpp |
diff --git a/core/src/fpdfdoc/doc_tagged.cpp b/core/src/fpdfdoc/doc_tagged.cpp |
index 3510eb6c8eadda16a3996f1d4c3d6cdbeec50018..bf623eb703822ccc43a3ab40456cabb3ef238c1b 100644 |
--- a/core/src/fpdfdoc/doc_tagged.cpp |
+++ b/core/src/fpdfdoc/doc_tagged.cpp |
@@ -12,8 +12,8 @@ |
const int nMaxRecursion = 32; |
static FX_BOOL IsTagged(const CPDF_Document* pDoc) { |
CPDF_Dictionary* pCatalog = pDoc->GetRoot(); |
- CPDF_Dictionary* pMarkInfo = pCatalog->GetDict("MarkInfo"); |
- return pMarkInfo != NULL && pMarkInfo->GetInteger("Marked"); |
+ CPDF_Dictionary* pMarkInfo = pCatalog->GetDictBy("MarkInfo"); |
+ return pMarkInfo != NULL && pMarkInfo->GetIntegerBy("Marked"); |
} |
CPDF_StructTree* CPDF_StructTree::LoadPage(const CPDF_Document* pDoc, |
const CPDF_Dictionary* pPageDict) { |
@@ -34,11 +34,11 @@ CPDF_StructTree* CPDF_StructTree::LoadDoc(const CPDF_Document* pDoc) { |
} |
CPDF_StructTreeImpl::CPDF_StructTreeImpl(const CPDF_Document* pDoc) { |
CPDF_Dictionary* pCatalog = pDoc->GetRoot(); |
- m_pTreeRoot = pCatalog->GetDict("StructTreeRoot"); |
+ m_pTreeRoot = pCatalog->GetDictBy("StructTreeRoot"); |
if (!m_pTreeRoot) { |
return; |
} |
- m_pRoleMap = m_pTreeRoot->GetDict("RoleMap"); |
+ m_pRoleMap = m_pTreeRoot->GetDictBy("RoleMap"); |
} |
CPDF_StructTreeImpl::~CPDF_StructTreeImpl() { |
for (int i = 0; i < m_Kids.GetSize(); i++) |
@@ -65,7 +65,7 @@ void CPDF_StructTreeImpl::LoadDocTree() { |
return; |
for (FX_DWORD i = 0; i < pArray->GetCount(); i++) { |
- CPDF_Dictionary* pKid = pArray->GetDict(i); |
+ CPDF_Dictionary* pKid = pArray->GetDictAt(i); |
CPDF_StructElementImpl* pStructElementImpl = |
new CPDF_StructElementImpl(this, nullptr, pKid); |
m_Kids.Add(pStructElementImpl); |
@@ -94,19 +94,19 @@ void CPDF_StructTreeImpl::LoadPageTree(const CPDF_Dictionary* pPageDict) { |
m_Kids[i] = NULL; |
} |
std::map<CPDF_Dictionary*, CPDF_StructElementImpl*> element_map; |
- CPDF_Dictionary* pParentTree = m_pTreeRoot->GetDict("ParentTree"); |
+ CPDF_Dictionary* pParentTree = m_pTreeRoot->GetDictBy("ParentTree"); |
if (!pParentTree) { |
return; |
} |
CPDF_NumberTree parent_tree(pParentTree); |
- int parents_id = pPageDict->GetInteger("StructParents", -1); |
+ int parents_id = pPageDict->GetIntegerBy("StructParents", -1); |
if (parents_id >= 0) { |
CPDF_Array* pParentArray = ToArray(parent_tree.LookupValue(parents_id)); |
if (!pParentArray) |
return; |
for (i = 0; i < pParentArray->GetCount(); i++) { |
- CPDF_Dictionary* pParent = pParentArray->GetDict(i); |
+ CPDF_Dictionary* pParent = pParentArray->GetDictAt(i); |
if (!pParent) { |
continue; |
} |
@@ -128,8 +128,8 @@ CPDF_StructElementImpl* CPDF_StructTreeImpl::AddPageNode( |
CPDF_StructElementImpl* pElement = |
new CPDF_StructElementImpl(this, NULL, pDict); |
map[pDict] = pElement; |
- CPDF_Dictionary* pParent = pDict->GetDict("P"); |
- if (!pParent || pParent->GetString("Type") == "StructTreeRoot") { |
+ CPDF_Dictionary* pParent = pDict->GetDictBy("P"); |
+ if (!pParent || pParent->GetStringBy("Type") == "StructTreeRoot") { |
if (!AddTopLevelNode(pDict, pElement)) { |
pElement->Release(); |
map.erase(pDict); |
@@ -197,9 +197,9 @@ CPDF_StructElementImpl::CPDF_StructElementImpl(CPDF_StructTreeImpl* pTree, |
: m_RefCount(0) { |
m_pTree = pTree; |
m_pDict = pDict; |
- m_Type = pDict->GetString("S"); |
+ m_Type = pDict->GetStringBy("S"); |
if (pTree->m_pRoleMap) { |
- CFX_ByteString mapped = pTree->m_pRoleMap->GetString(m_Type); |
+ CFX_ByteString mapped = pTree->m_pRoleMap->GetStringBy(m_Type); |
if (!mapped.IsEmpty()) { |
m_Type = mapped; |
} |
@@ -269,7 +269,7 @@ void CPDF_StructElementImpl::LoadKid(FX_DWORD PageObjNum, |
if (CPDF_Reference* pRef = ToReference(pKidDict->GetElement("Pg"))) |
PageObjNum = pRef->GetRefObjNum(); |
- CFX_ByteString type = pKidDict->GetString("Type"); |
+ CFX_ByteString type = pKidDict->GetStringBy("Type"); |
if (type == "MCR") { |
if (m_pTree->m_pPage && m_pTree->m_pPage->GetObjNum() != PageObjNum) { |
return; |
@@ -281,7 +281,7 @@ void CPDF_StructElementImpl::LoadKid(FX_DWORD PageObjNum, |
pKid->m_StreamContent.m_RefObjNum = 0; |
} |
pKid->m_StreamContent.m_PageObjNum = PageObjNum; |
- pKid->m_StreamContent.m_ContentId = pKidDict->GetInteger("MCID"); |
+ pKid->m_StreamContent.m_ContentId = pKidDict->GetIntegerBy("MCID"); |
} else if (type == "OBJR") { |
if (m_pTree->m_pPage && m_pTree->m_pPage->GetObjNum() != PageObjNum) { |
return; |
@@ -325,7 +325,7 @@ static CPDF_Dictionary* FindAttrDict(CPDF_Object* pAttrs, |
return pDict; |
} |
} |
- if (pDict && pDict->GetString("O") == owner) |
+ if (pDict && pDict->GetStringBy("O") == owner) |
return pDict; |
return nullptr; |
} |
@@ -360,22 +360,22 @@ CPDF_Object* CPDF_StructElementImpl::GetAttr(const CFX_ByteStringC& owner, |
if (!pC) |
return nullptr; |
- CPDF_Dictionary* pClassMap = m_pTree->m_pTreeRoot->GetDict("ClassMap"); |
+ CPDF_Dictionary* pClassMap = m_pTree->m_pTreeRoot->GetDictBy("ClassMap"); |
if (!pClassMap) |
return nullptr; |
if (CPDF_Array* pArray = pC->AsArray()) { |
for (FX_DWORD i = 0; i < pArray->GetCount(); i++) { |
- CFX_ByteString class_name = pArray->GetString(i); |
- CPDF_Dictionary* pClassDict = pClassMap->GetDict(class_name); |
- if (pClassDict && pClassDict->GetString("O") == owner) |
+ CFX_ByteString class_name = pArray->GetStringAt(i); |
+ CPDF_Dictionary* pClassDict = pClassMap->GetDictBy(class_name); |
+ if (pClassDict && pClassDict->GetStringBy("O") == owner) |
return pClassDict->GetElementValue(name); |
} |
return nullptr; |
} |
CFX_ByteString class_name = pC->GetString(); |
- CPDF_Dictionary* pClassDict = pClassMap->GetDict(class_name); |
- if (pClassDict && pClassDict->GetString("O") == owner) |
+ CPDF_Dictionary* pClassDict = pClassMap->GetDictBy(class_name); |
+ if (pClassDict && pClassDict->GetStringBy("O") == owner) |
return pClassDict->GetElementValue(name); |
return nullptr; |
} |
@@ -412,9 +412,9 @@ FX_ARGB CPDF_StructElementImpl::GetColor(const CFX_ByteStringC& owner, |
CPDF_Array* pArray = ToArray(GetAttr(owner, name, bInheritable, subindex)); |
if (!pArray) |
return default_value; |
- return 0xff000000 | ((int)(pArray->GetNumber(0) * 255) << 16) | |
- ((int)(pArray->GetNumber(1) * 255) << 8) | |
- (int)(pArray->GetNumber(2) * 255); |
+ return 0xff000000 | ((int)(pArray->GetNumberAt(0) * 255) << 16) | |
+ ((int)(pArray->GetNumberAt(1) * 255) << 8) | |
+ (int)(pArray->GetNumberAt(2) * 255); |
} |
FX_FLOAT CPDF_StructElementImpl::GetNumber(const CFX_ByteStringC& owner, |
const CFX_ByteStringC& name, |