Merge to XFA: Tidy public/ directory.
[pdfium.git] / public / fpdf_flatten.h
1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7 #ifndef PUBLIC_FPDF_FLATTEN_H_
8 #define PUBLIC_FPDF_FLATTEN_H_
9
10 #include "fpdfview.h"
11
12 #define FLATTEN_FAIL            0   // Flatten operation failed.
13 #define FLATTEN_SUCCESS         1   // Flatten operation succeed.
14 #define FLATTEN_NOTINGTODO      2   // There is nothing can be flatten.
15
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19
20 #define FLAT_NORMALDISPLAY     0
21 #define FLAT_PRINT             1
22     //Function: FPDFPage_Flatten
23
24     //          Flat a pdf page,annotations or form fields will become part of the page contents.
25     //Parameters:
26
27     //          page  - Handle to the page. Returned by FPDF_LoadPage function.
28     //          nFlag - the flag for the use of flatten result. Zero for normal display, 1 for print.
29     //Return value:
30     //          The result flag of the function, See flags above ( FLATTEN_FAIL, FLATTEN_SUCCESS, FLATTEN_NOTINGTODO ).
31     //
32     //Comments: Current version all fails return zero. If necessary we will assign different value
33     //          to indicate different fail reason.
34     //
35     //Notes:
36     //          The method can not support to flatten the page which the document consists of dynamic XFA fields.
37     //
38     DLLEXPORT int STDCALL FPDFPage_Flatten( FPDF_PAGE page, int nFlag);
39
40
41 #ifdef __cplusplus
42 }
43 #endif
44
45 #endif  // PUBLIC_FPDF_FLATTEN_H_