From db0be96179f0cd5f1787564cbccf86320a4d54ae Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Fri, 16 Oct 2015 14:00:21 -0700 Subject: Merge to XFA: Introduce CPDFPageFromFPFDPage() Original Review URL: https://codereview.chromium.org/1406543004 . (cherry picked from commit 943ea142b6a7e6edc91fe3c307013129e6eb0ef3) R=thestig@chromium.org Review URL: https://codereview.chromium.org/1411623002 . --- fpdfsdk/src/fpdfview.cpp | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) (limited to 'fpdfsdk/src/fpdfview.cpp') diff --git a/fpdfsdk/src/fpdfview.cpp b/fpdfsdk/src/fpdfview.cpp index 5d9bf4b252..6254eb2b67 100644 --- a/fpdfsdk/src/fpdfview.cpp +++ b/fpdfsdk/src/fpdfview.cpp @@ -26,6 +26,10 @@ CPDF_Document* CPDFDocumentFromFPDFDocument(FPDF_DOCUMENT doc) { return doc ? static_cast(doc)->GetPDFDoc() : nullptr; } +CPDF_Page* CPDFPageFromFPDFPage(FPDF_PAGE page) { + return page ? static_cast(page)->GetPDFPage() : nullptr; +} + CFPDF_FileStream::CFPDF_FileStream(FPDF_FILEHANDLER* pFS) { m_pFS = pFS; m_nCurPos = 0; @@ -436,13 +440,11 @@ DLLEXPORT double STDCALL FPDF_GetPageWidth(FPDF_PAGE page) { if (!page) return 0.0; return ((CPDFXFA_Page*)page)->GetPageWidth(); - // return ((CPDF_Page*)page)->GetPageWidth(); } DLLEXPORT double STDCALL FPDF_GetPageHeight(FPDF_PAGE page) { if (!page) return 0.0; - // return ((CPDF_Page*)page)->GetPageHeight(); return ((CPDFXFA_Page*)page)->GetPageHeight(); } @@ -463,9 +465,7 @@ DLLEXPORT void STDCALL FPDF_RenderPage(HDC dc, int size_y, int rotate, int flags) { - if (page == NULL) - return; - CPDF_Page* pPage = ((CPDFXFA_Page*)page)->GetPDFPage(); + CPDF_Page* pPage = CPDFPageFromFPDFPage(page); if (!pPage) return; @@ -625,12 +625,11 @@ DLLEXPORT void STDCALL FPDF_RenderPageBitmap(FPDF_BITMAP bitmap, int size_y, int rotate, int flags) { - if (bitmap == NULL || page == NULL) + if (!bitmap) return; - CPDF_Page* pPage = ((CPDFXFA_Page*)page)->GetPDFPage(); + CPDF_Page* pPage = CPDFPageFromFPDFPage(page); if (!pPage) return; - CRenderContext* pContext = new CRenderContext; pPage->SetPrivateData((void*)1, pContext, DropContext); #ifdef _SKIA_SUPPORT_ @@ -702,9 +701,11 @@ DLLEXPORT void STDCALL FPDF_PageToDevice(FPDF_PAGE page, double page_y, int* device_x, int* device_y) { - if (page == NULL || device_x == NULL || device_y == NULL) + if (!device_x || !device_y) return; CPDFXFA_Page* pPage = (CPDFXFA_Page*)page; + if (!pPage) + return; pPage->PageToDevice(start_x, start_y, size_x, size_y, rotate, page_x, page_y, device_x, device_y); } @@ -804,8 +805,8 @@ void FPDF_RenderPage_Retail(CRenderContext* pContext, int flags, FX_BOOL bNeedToRestore, IFSDK_PAUSE_Adapter* pause) { - CPDF_Page* pPage = ((CPDFXFA_Page*)page)->GetPDFPage(); - if (pPage == NULL) + CPDF_Page* pPage = CPDFPageFromFPDFPage(page); + if (!pPage) return; if (!pContext->m_pOptions) -- cgit v1.2.3