blob: af77c29343247b6712228fb73409a3d5e61d21b2 [file] [log] [blame]
Svet Ganove6986e12015-06-04 14:52:15 -07001// 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// Result codes.
Philip P. Moltmannac3d58c2016-03-04 15:19:21 -080013#define FLATTEN_FAIL 0 // Flatten operation failed.
14#define FLATTEN_SUCCESS 1 // Flatten operation succeed.
15#define FLATTEN_NOTHINGTODO 2 // There is nothing to be flattened.
Svet Ganove6986e12015-06-04 14:52:15 -070016
17// Flags.
Philip P. Moltmannac3d58c2016-03-04 15:19:21 -080018#define FLAT_NORMALDISPLAY 0
19#define FLAT_PRINT 1
Svet Ganove6986e12015-06-04 14:52:15 -070020
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25// Function: FPDFPage_Flatten
Philip P. Moltmannac3d58c2016-03-04 15:19:21 -080026// Make annotations and form fields become part of the page contents
27// itself.
Svet Ganove6986e12015-06-04 14:52:15 -070028// Parameters:
29// page - Handle to the page, as returned by FPDF_LoadPage().
Philip P. Moltmannac3d58c2016-03-04 15:19:21 -080030// nFlag - Intended use of the flattened result: 0 for normal display,
31// 1 for printing.
Svet Ganove6986e12015-06-04 14:52:15 -070032// Return value:
Philip P. Moltmannac3d58c2016-03-04 15:19:21 -080033// Either FLATTEN_FAIL, FLATTEN_SUCCESS, or FLATTEN_NOTHINGTODO (see
34// above).
Svet Ganove6986e12015-06-04 14:52:15 -070035// Comments:
Philip P. Moltmannac3d58c2016-03-04 15:19:21 -080036// Currently, all failures return FLATTEN_FAIL, with no indication for
37// the reason
Svet Ganove6986e12015-06-04 14:52:15 -070038// for the failure.
39DLLEXPORT int STDCALL FPDFPage_Flatten(FPDF_PAGE page, int nFlag);
40
41#ifdef __cplusplus
42}
43#endif
44
45#endif // PUBLIC_FPDF_FLATTEN_H_