FX_BOOL CPDF_Document::IsContentUsedElsewhere(FX_DWORD objnum, CPDF_Dictionary* pThisPageDict) { for (int i = 0; i < m_PageList.GetSize(); i++) { CPDF_Dictionary* pPageDict = GetPage(i); if (pPageDict == pThisPageDict) { continue; } CPDF_Object* pContents = pPageDict ? pPageDict->GetElement("Contents") : NULL; if (!pContents) { continue; } if (pContents->GetDirectType() == PDFOBJ_ARRAY) { CPDF_Array* pArray = pContents->GetDirect()->AsArray(); for (FX_DWORD j = 0; j < pArray->GetCount(); j++) { CPDF_Reference* pRef = ToReference(pArray->GetElement(j)); if (pRef && pRef->GetRefObjNum() == objnum) return TRUE; } } else if (pContents->GetObjNum() == objnum) { return TRUE; } } return FALSE; }