summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2015-05-20 10:00:19 -0700
committerTom Sepez <tsepez@chromium.org>2015-05-20 10:00:19 -0700
commit3a251306b0fc80eadbd49a806b27c31e285c3223 (patch)
tree57e4d9142a52aef3d282118efac44c352c235c74
parentb190fc2214b2926873b342a39a85c27dc234ae1f (diff)
downloadpdfium-3a251306b0fc80eadbd49a806b27c31e285c3223.tar.xz
Tidy public fpdfview.h and fpdf_flatten.h.
Mostly cosmetic; fix a spelling error, make comment style consistent, remove unnecessary #ifdefs, remove unused globals. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1139993003
-rw-r--r--fpdfsdk/src/fpdf_flatten.cpp90
-rw-r--r--public/fpdf_flatten.h35
-rw-r--r--public/fpdfview.h34
3 files changed, 70 insertions, 89 deletions
diff --git a/fpdfsdk/src/fpdf_flatten.cpp b/fpdfsdk/src/fpdf_flatten.cpp
index 4fea6a973c..eeb9993efb 100644
--- a/fpdfsdk/src/fpdf_flatten.cpp
+++ b/fpdfsdk/src/fpdf_flatten.cpp
@@ -86,47 +86,44 @@ void ParserStream( CPDF_Dictionary * pPageDic, CPDF_Dictionary* pStream, CPDF_Re
int ParserAnnots( CPDF_Document* pSourceDoc, CPDF_Dictionary * pPageDic, CPDF_RectArray * pRectArray, CPDF_ObjectArray * pObjectArray, int nUsage)
{
- if (!pSourceDoc || !pPageDic) return FLATTEN_FAIL;
-
- GetContentsRect( pSourceDoc, pPageDic, pRectArray );
- CPDF_Array* pAnnots = pPageDic->GetArray("Annots");
- if (pAnnots)
- {
- FX_DWORD dwSize = pAnnots->GetCount();
-
- for (int i = 0; i < (int)dwSize; i++)
- {
- CPDF_Object* pObj = pAnnots->GetElementValue(i);
-
- if (!pObj)continue;
-
- if (pObj->GetType() == PDFOBJ_DICTIONARY)
- {
- CPDF_Dictionary* pAnnotDic = (CPDF_Dictionary*)pObj;
- CFX_ByteString sSubtype = pAnnotDic->GetString("Subtype");
- if (sSubtype == "Popup")continue;
-
- int nAnnotFlag = pAnnotDic->GetInteger("F");
-
- if(nAnnotFlag & ANNOTFLAG_HIDDEN)
- continue;
- if(nUsage == FLAT_NORMALDISPLAY)
- {
- if(nAnnotFlag & ANNOTFLAG_INVISIBLE)
- continue;
- ParserStream( pPageDic, pAnnotDic, pRectArray, pObjectArray );
- }
- else
- {
- if(nAnnotFlag & ANNOTFLAG_PRINT)
- ParserStream( pPageDic, pAnnotDic, pRectArray, pObjectArray );
- }
- }
- }
- return FLATTEN_SUCCESS;
- }else{
- return FLATTEN_NOTINGTODO;
- }
+ if (!pSourceDoc || !pPageDic)
+ return FLATTEN_FAIL;
+
+ GetContentsRect( pSourceDoc, pPageDic, pRectArray );
+ CPDF_Array* pAnnots = pPageDic->GetArray("Annots");
+ if (!pAnnots)
+ return FLATTEN_NOTHINGTODO;
+
+ FX_DWORD dwSize = pAnnots->GetCount();
+ for (int i = 0; i < (int)dwSize; i++)
+ {
+ CPDF_Object* pObj = pAnnots->GetElementValue(i);
+ if (!pObj || pObj->GetType() != PDFOBJ_DICTIONARY)
+ continue;
+
+ CPDF_Dictionary* pAnnotDic = (CPDF_Dictionary*)pObj;
+ CFX_ByteString sSubtype = pAnnotDic->GetString("Subtype");
+ if (sSubtype == "Popup")
+ continue;
+
+ int nAnnotFlag = pAnnotDic->GetInteger("F");
+ if (nAnnotFlag & ANNOTFLAG_HIDDEN)
+ continue;
+
+ if(nUsage == FLAT_NORMALDISPLAY)
+ {
+ if (nAnnotFlag & ANNOTFLAG_INVISIBLE)
+ continue;
+
+ ParserStream( pPageDic, pAnnotDic, pRectArray, pObjectArray );
+ }
+ else
+ {
+ if (nAnnotFlag & ANNOTFLAG_PRINT)
+ ParserStream( pPageDic, pAnnotDic, pRectArray, pObjectArray );
+ }
+ }
+ return FLATTEN_SUCCESS;
}
@@ -345,14 +342,9 @@ DLLEXPORT int STDCALL FPDFPage_Flatten( FPDF_PAGE page, int nFlag)
int iRet = FLATTEN_FAIL;
iRet = ParserAnnots( pDocument, pPageDict, &RectArray, &ObjectArray, nFlag);
- if (iRet == FLATTEN_NOTINGTODO)
- {
- return FLATTEN_NOTINGTODO;
- }else if (iRet == FLATTEN_FAIL)
- {
- return FLATTEN_FAIL;
- }
-
+ if (iRet == FLATTEN_NOTHINGTODO || iRet == FLATTEN_FAIL)
+ return iRet;
+
CPDF_Rect rcOriginalCB;
CPDF_Rect rcMerger = CalculateRect( &RectArray );
CPDF_Rect rcOriginalMB = pPageDict->GetRect("MediaBox");
diff --git a/public/fpdf_flatten.h b/public/fpdf_flatten.h
index 0c8322e697..f06a7cf17a 100644
--- a/public/fpdf_flatten.h
+++ b/public/fpdf_flatten.h
@@ -9,31 +9,30 @@
#include "fpdfview.h"
+// Result codes.
#define FLATTEN_FAIL 0 // Flatten operation failed.
#define FLATTEN_SUCCESS 1 // Flatten operation succeed.
-#define FLATTEN_NOTINGTODO 2 // There is nothing can be flatten.
-
-#ifdef __cplusplus
-extern "C" {
-#endif
+#define FLATTEN_NOTHINGTODO 2 // There is nothing to be flattened.
+// Flags.
#define FLAT_NORMALDISPLAY 0
#define FLAT_PRINT 1
- //Function: FPDFPage_Flatten
- // Flat a pdf page,annotations or form fields will become part of the page contents.
- //Parameters:
-
- // page - Handle to the page. Returned by FPDF_LoadPage function.
- // nFlag - the flag for the use of flatten result. Zero for normal display, 1 for print.
- //Return value:
- // The result flag of the function, See flags above ( FLATTEN_FAIL, FLATTEN_SUCCESS, FLATTEN_NOTINGTODO ).
- //
- // Comments: Current version all fails return zero. If necessary we will assign different value
- // to indicate different fail reason.
- //
- DLLEXPORT int STDCALL FPDFPage_Flatten( FPDF_PAGE page, int nFlag);
+#ifdef __cplusplus
+extern "C" {
+#endif
+// Function: FPDFPage_Flatten
+// Make annotations and form fields become part of the page contents itself.
+// Parameters:
+// page - Handle to the page, as returned by FPDF_LoadPage().
+// nFlag - Intended use of the flattened result: 0 for normal display, 1 for printing.
+// Return value:
+// Either FLATTEN_FAIL, FLATTEN_SUCCESS, or FLATTEN_NOTHINGTODO (see above).
+// Comments:
+// Currently, all failures return FLATTEN_FAIL, with no indication for the reason
+// for the failure.
+DLLEXPORT int STDCALL FPDFPage_Flatten(FPDF_PAGE page, int nFlag);
#ifdef __cplusplus
}
diff --git a/public/fpdfview.h b/public/fpdfview.h
index 91787dfa23..eab37394e6 100644
--- a/public/fpdfview.h
+++ b/public/fpdfview.h
@@ -71,8 +71,6 @@ typedef const unsigned short* FPDF_STRING;
typedef const char* FPDF_STRING;
#endif
-#ifndef _FS_DEF_MATRIX_
-#define _FS_DEF_MATRIX_
/** @brief Matrix for transformation. */
typedef struct _FS_MATRIX_
{
@@ -83,10 +81,7 @@ typedef struct _FS_MATRIX_
float e; /**< @brief Coefficient e.*/
float f; /**< @brief Coefficient f.*/
} FS_MATRIX;
-#endif
-#ifndef _FS_DEF_RECTF_
-#define _FS_DEF_RECTF_
/** @brief Rectangle area(float) in device or page coordination system. */
typedef struct _FS_RECTF_
{
@@ -103,7 +98,6 @@ typedef struct _FS_RECTF_
}* FS_LPRECTF, FS_RECTF;
/** @brief Const Pointer to ::FS_RECTF structure.*/
typedef const FS_RECTF* FS_LPCRECTF;
-#endif
#if defined(_WIN32) && defined(FPDFSDK_EXPORTS)
// On Windows system, functions are exported in a DLL
@@ -114,9 +108,6 @@ typedef const FS_RECTF* FS_LPCRECTF;
#define STDCALL
#endif
-extern const char g_ExpireDate[];
-extern const char g_ModuleCodes[];
-
// Exported Functions
#ifdef __cplusplus
extern "C" {
@@ -130,10 +121,8 @@ extern "C" {
// None.
// Comments:
// You have to call this function before you can call any PDF processing functions.
-
DLLEXPORT void STDCALL FPDF_InitLibrary();
-
// Function: FPDF_DestroyLibary
// Release all resources allocated by the FPDFSDK library.
// Parameters:
@@ -157,16 +146,18 @@ DLLEXPORT void STDCALL FPDF_DestroyLibrary();
// None.
DLLEXPORT void STDCALL FPDF_SetSandBoxPolicy(FPDF_DWORD policy, FPDF_BOOL enable);
-/**
-* Open and load a PDF document.
-* @param[in] file_path - Path to the PDF file (including extension).
-* @param[in] password - A string used as the password for PDF file.
-* If no password needed, empty or NULL can be used.
-* @note Loaded document can be closed by FPDF_CloseDocument.
-* If this function fails, you can use FPDF_GetLastError() to retrieve
-* the reason why it fails.
-* @retval A handle to the loaded document. If failed, NULL is returned.
-*/
+// Function: FPDF_LoadDocument
+// Open and load a PDF document.
+// Parameters:
+// file_path [in] - Path to the PDF file (including extension).
+// password [in] - A string used as the password for PDF file.
+// If no password needed, empty or NULL can be used.
+// Return value:
+// A handle to the loaded document, or NULL on failure.
+// Comments:
+// Loaded document can be closed by FPDF_CloseDocument().
+// If this function fails, you can use FPDF_GetLastError() to retrieve
+// the reason why it failed.
DLLEXPORT FPDF_DOCUMENT STDCALL FPDF_LoadDocument(FPDF_STRING file_path,
FPDF_BYTESTRING password);
@@ -323,7 +314,6 @@ DLLEXPORT double STDCALL FPDF_GetPageHeight(FPDF_PAGE page);
//
DLLEXPORT int STDCALL FPDF_GetPageSizeByIndex(FPDF_DOCUMENT document, int page_index, double* width, double* height);
-
// Page rendering flags. They can be combined with bit OR.
#define FPDF_ANNOT 0x01 // Set if annotations are to be rendered.
#define FPDF_LCD_TEXT 0x02 // Set if using text rendering optimized for LCD display.