diff options
author | Miklos Vajna <vmiklos@vmiklos.hu> | 2017-04-03 16:02:39 +0200 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-04-03 14:39:52 +0000 |
commit | 1423319f52c5e80253d337ad02b19187c6d66ff1 (patch) | |
tree | d55a242b73938df48606811d0d698575acb9e3f7 | |
parent | adca63003f36da06caeecefbdaaa566131d9957c (diff) | |
download | pdfium-1423319f52c5e80253d337ad02b19187c6d66ff1.tar.xz |
Add public method FPDFPageObj_GetType to get type of a page object.
The possible return values were already part of the public header in the
form of a set of defines.
Change-Id: I040e0f330fdd7a3cd29f74fc6ee06d122afd2dd0
Reviewed-on: https://pdfium-review.googlesource.com/3570
Reviewed-by: Nicolás Peña <npm@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
-rw-r--r-- | fpdfsdk/fpdfeditpage.cpp | 8 | ||||
-rw-r--r-- | fpdfsdk/fpdfview_c_api_test.c | 1 | ||||
-rw-r--r-- | public/fpdf_edit.h | 9 |
3 files changed, 18 insertions, 0 deletions
diff --git a/fpdfsdk/fpdfeditpage.cpp b/fpdfsdk/fpdfeditpage.cpp index 7b55e4d99d..511b7f5b4b 100644 --- a/fpdfsdk/fpdfeditpage.cpp +++ b/fpdfsdk/fpdfeditpage.cpp @@ -246,6 +246,14 @@ FPDFPageObj_HasTransparency(FPDF_PAGEOBJECT pageObject) { return false; } +DLLEXPORT int STDCALL FPDFPageObj_GetType(FPDF_PAGEOBJECT pageObject) { + if (!pageObject) + return FPDF_PAGEOBJ_UNKNOWN; + + CPDF_PageObject* pPageObj = reinterpret_cast<CPDF_PageObject*>(pageObject); + return pPageObj->GetType(); +} + DLLEXPORT FPDF_BOOL STDCALL FPDFPage_GenerateContent(FPDF_PAGE page) { CPDF_Page* pPage = CPDFPageFromFPDFPage(page); if (!IsPageObject(pPage)) diff --git a/fpdfsdk/fpdfview_c_api_test.c b/fpdfsdk/fpdfview_c_api_test.c index b090319d86..fec91efeca 100644 --- a/fpdfsdk/fpdfview_c_api_test.c +++ b/fpdfsdk/fpdfview_c_api_test.c @@ -79,6 +79,7 @@ int CheckPDFiumCApi() { CHK(FPDFPage_HasTransparency); CHK(FPDFPage_GenerateContent); CHK(FPDFPageObj_HasTransparency); + CHK(FPDFPageObj_GetType); CHK(FPDFPageObj_Transform); CHK(FPDFPage_TransformAnnots); CHK(FPDFPageObj_NewImageObj); diff --git a/public/fpdf_edit.h b/public/fpdf_edit.h index 34a47a7c83..ce02a6406d 100644 --- a/public/fpdf_edit.h +++ b/public/fpdf_edit.h @@ -21,6 +21,7 @@ #define FPDF_GetAValue(argb) ((uint8_t)((argb) >> 24)) // The page object constants. +#define FPDF_PAGEOBJ_UNKNOWN 0 #define FPDF_PAGEOBJ_TEXT 1 #define FPDF_PAGEOBJ_PATH 2 #define FPDF_PAGEOBJ_IMAGE 3 @@ -135,6 +136,14 @@ DLLEXPORT FPDF_BOOL STDCALL FPDFPage_GenerateContent(FPDF_PAGE page); DLLEXPORT FPDF_BOOL STDCALL FPDFPageObj_HasTransparency(FPDF_PAGEOBJECT pageObject); +// Get type of |pageObject|. +// +// pageObject - handle to a page object. +// +// Returns one of the FPDF_PAGEOBJ_* values on success, FPDF_PAGEOBJ_UNKNOWN on +// error. +DLLEXPORT int STDCALL FPDFPageObj_GetType(FPDF_PAGEOBJECT pageObject); + // Transform |pageObject| by the given matrix. // // page_object - handle to a page object. |