diff options
Diffstat (limited to 'fpdfsdk/src/fpdf_ext.cpp')
-rw-r--r-- | fpdfsdk/src/fpdf_ext.cpp | 47 |
1 files changed, 25 insertions, 22 deletions
diff --git a/fpdfsdk/src/fpdf_ext.cpp b/fpdfsdk/src/fpdf_ext.cpp index c258b93c7d..2dd242b372 100644 --- a/fpdfsdk/src/fpdf_ext.cpp +++ b/fpdfsdk/src/fpdf_ext.cpp @@ -208,27 +208,30 @@ void CheckUnSupportError(CPDF_Document * pDoc, FX_DWORD err_code) DLLEXPORT int FPDFDoc_GetPageMode(FPDF_DOCUMENT document) { - if (!document) return PAGEMODE_UNKNOWN; + if (!document) + return PAGEMODE_UNKNOWN; + CPDF_Dictionary *pRoot = (((CPDFXFA_Document*)document)->GetPDFDoc())->GetRoot(); - if (!pRoot) - return PAGEMODE_UNKNOWN; - CPDF_Object* pName = pRoot->GetElement("PageMode"); - if (!pName) - return PAGEMODE_USENONE; - CFX_ByteString strPageMode = pName->GetString(); - - if (strPageMode.IsEmpty()||strPageMode.EqualNoCase(FX_BSTR("UseNone"))) - return PAGEMODE_USENONE; - else if (strPageMode.EqualNoCase(FX_BSTR("UseOutlines"))) - return PAGEMODE_USEOUTLINES; - else if (strPageMode.EqualNoCase(FX_BSTR("UseThumbs"))) - return PAGEMODE_USETHUMBS; - else if (strPageMode.EqualNoCase(FX_BSTR("FullScreen"))) - return PAGEMODE_FULLSCREEN; - else if (strPageMode.EqualNoCase(FX_BSTR("UseOC"))) - return PAGEMODE_USEOC; - else if (strPageMode.EqualNoCase(FX_BSTR("UseAttachments"))) - return PAGEMODE_USEATTACHMENTS; - - return PAGEMODE_UNKNOWN; + if (!pRoot) + return PAGEMODE_UNKNOWN; + + CPDF_Object* pName = pRoot->GetElement("PageMode"); + if (!pName) + return PAGEMODE_USENONE; + + CFX_ByteString strPageMode = pName->GetString(); + if (strPageMode.IsEmpty()||strPageMode.EqualNoCase("UseNone")) + return PAGEMODE_USENONE; + if (strPageMode.EqualNoCase("UseOutlines")) + return PAGEMODE_USEOUTLINES; + if (strPageMode.EqualNoCase("UseThumbs")) + return PAGEMODE_USETHUMBS; + if (strPageMode.EqualNoCase("FullScreen")) + return PAGEMODE_FULLSCREEN; + if (strPageMode.EqualNoCase("UseOC")) + return PAGEMODE_USEOC; + if (strPageMode.EqualNoCase("UseAttachments")) + return PAGEMODE_USEATTACHMENTS; + + return PAGEMODE_UNKNOWN; } |