1e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// Copyright 2014 PDFium Authors. All rights reserved. 2e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// Use of this source code is governed by a BSD-style license that can be 3e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// found in the LICENSE file. 4e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 5e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 7e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov#ifndef PUBLIC_FPDF_EDIT_H_ 8e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov#define PUBLIC_FPDF_EDIT_H_ 9e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 10ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann#include <stdint.h> 11ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann 124d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// NOLINTNEXTLINE(build/include) 13e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov#include "fpdfview.h" 14e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 154d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann#define FPDF_ARGB(a, r, g, b) \ 164d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann ((uint32_t)(((uint32_t)(b)&0xff) | (((uint32_t)(g)&0xff) << 8) | \ 174d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann (((uint32_t)(r)&0xff) << 16) | (((uint32_t)(a)&0xff) << 24))) 18ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann#define FPDF_GetBValue(argb) ((uint8_t)(argb)) 19ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann#define FPDF_GetGValue(argb) ((uint8_t)(((uint16_t)(argb)) >> 8)) 20ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann#define FPDF_GetRValue(argb) ((uint8_t)((argb) >> 16)) 21ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann#define FPDF_GetAValue(argb) ((uint8_t)((argb) >> 24)) 22e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 23d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Refer to PDF Reference version 1.7 table 4.12 for all color space families. 24d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_UNKNOWN 0 25d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_DEVICEGRAY 1 26d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_DEVICERGB 2 27d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_DEVICECMYK 3 28d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_CALGRAY 4 29d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_CALRGB 5 30d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_LAB 6 31d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_ICCBASED 7 32d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_SEPARATION 8 33d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_DEVICEN 9 34d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_INDEXED 10 35d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_COLORSPACE_PATTERN 11 36d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 374d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// The page object constants. 38d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_PAGEOBJ_UNKNOWN 0 394d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann#define FPDF_PAGEOBJ_TEXT 1 404d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann#define FPDF_PAGEOBJ_PATH 2 414d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann#define FPDF_PAGEOBJ_IMAGE 3 424d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann#define FPDF_PAGEOBJ_SHADING 4 434d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann#define FPDF_PAGEOBJ_FORM 5 444d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann 45d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// The path segment constants. 46d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_SEGMENT_UNKNOWN -1 47d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_SEGMENT_LINETO 0 48d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_SEGMENT_BEZIERTO 1 49d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_SEGMENT_MOVETO 2 50d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 5133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann#define FPDF_FILLMODE_ALTERNATE 1 5233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann#define FPDF_FILLMODE_WINDING 2 5333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 54d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_FONT_TYPE1 1 55d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_FONT_TRUETYPE 2 56d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 57d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_LINECAP_BUTT 0 58d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_LINECAP_ROUND 1 59d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_LINECAP_PROJECTING_SQUARE 2 60d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 61d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_LINEJOIN_MITER 0 62d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_LINEJOIN_ROUND 1 63d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_LINEJOIN_BEVEL 2 64d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 65d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_PRINTMODE_EMF 0 66d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_PRINTMODE_TEXTONLY 1 67d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_PRINTMODE_POSTSCRIPT2 2 68d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann#define FPDF_PRINTMODE_POSTSCRIPT3 3 69d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 70d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmanntypedef struct FPDF_IMAGEOBJ_METADATA { 71d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann // The image width in pixels. 72d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int width; 73d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann // The image height in pixels. 74d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int height; 75d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann // The image's horizontal pixel-per-inch. 76d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float horizontal_dpi; 77d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann // The image's vertical pixel-per-inch. 78d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float vertical_dpi; 79d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann // The number of bits used to represent each pixel. 80d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int bits_per_pixel; 81d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann // The image's colorspace. See above for the list of FPDF_COLORSPACE_*. 82d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann int colorspace; 83d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann // The image's marked content ID. Useful for pairing with associated alt-text. 84d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann // A value of -1 indicates no ID. 85d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann int marked_content_id; 86d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann} FPDF_IMAGEOBJ_METADATA; 87d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 88e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov#ifdef __cplusplus 89e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganovextern "C" { 904d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann#endif // __cplusplus 91e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 924d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Create a new PDF document. 93e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// 944d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns a handle to a new document, or NULL on failure. 95d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_DOCUMENT FPDF_CALLCONV FPDF_CreateNewDocument(); 96e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 974d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Create a new PDF page. 98e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// 994d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// document - handle to document. 1004d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page_index - suggested index of the page to create. If it is larger than 1014d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// document's current last index(L), the created page index is 1024d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// the next available index -- L+1. 1034d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// width - the page width. 1044d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// height - the page height. 105e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// 1064d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns the handle to the new page. 1074d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1084d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// The page should be closed with CPDF_ClosePage() when finished as 1094d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// with any other page in the document. 110d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_PAGE FPDF_CALLCONV FPDFPage_New(FPDF_DOCUMENT document, 111d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann int page_index, 112d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double width, 113d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double height); 114e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 1154d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Delete the page at |page_index|. 1164d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1174d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// document - handle to document. 1184d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page_index - the index of the page to delete. 119d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT void FPDF_CALLCONV FPDFPage_Delete(FPDF_DOCUMENT document, 120d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann int page_index); 121e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 1224d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Get the rotation of |page|. 1234d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1244d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page - handle to a page 1254d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1264d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns one of the following indicating the page rotation: 1274d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 0 - No rotation. 1284d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1 - Rotated 90 degrees clockwise. 1294d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 2 - Rotated 180 degrees clockwise. 1304d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 3 - Rotated 270 degrees clockwise. 131d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT int FPDF_CALLCONV FPDFPage_GetRotation(FPDF_PAGE page); 132e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 1334d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Set rotation for |page|. 134e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// 1354d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page - handle to a page. 1364d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// rotate - the rotation value, one of: 1374d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 0 - No rotation. 1384d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1 - Rotated 90 degrees clockwise. 1394d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 2 - Rotated 180 degrees clockwise. 1404d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 3 - Rotated 270 degrees clockwise. 141d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT void FPDF_CALLCONV FPDFPage_SetRotation(FPDF_PAGE page, int rotate); 142e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 1434d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Insert |page_obj| into |page|. 1444d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1454d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page - handle to a page 1464d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page_obj - handle to a page object. The |page_obj| will be automatically 1474d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// freed. 148d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT void FPDF_CALLCONV FPDFPage_InsertObject(FPDF_PAGE page, 149d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann FPDF_PAGEOBJECT page_obj); 150d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 151d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get number of page objects inside |page|. 152d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 153d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// page - handle to a page. 154d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 155d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns the number of objects in |page|. 156d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 157d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// DEPRECATED. Please use FPDFPage_CountObjects. 158d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT int FPDF_CALLCONV FPDFPage_CountObject(FPDF_PAGE page); 159e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 1604d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Get number of page objects inside |page|. 1614d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1624d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page - handle to a page. 1634d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1644d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns the number of objects in |page|. 165d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT int FPDF_CALLCONV FPDFPage_CountObjects(FPDF_PAGE page); 166e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 1674d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Get object in |page| at |index|. 1684d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1694d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page - handle to a page. 1704d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// index - the index of a page object. 1714d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1724d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns the handle to the page object, or NULL on failed. 173d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_PAGEOBJECT FPDF_CALLCONV FPDFPage_GetObject(FPDF_PAGE page, 174d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann int index); 175e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 1764d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Checks if |page| contains transparency. 1774d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1784d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page - handle to a page. 1794d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1804d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns TRUE if |page| contains transparency. 181d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV FPDFPage_HasTransparency(FPDF_PAGE page); 182e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 1834d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Generate the content of |page|. 1844d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1854d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page - handle to a page. 1864d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1874d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns TRUE on success. 1884d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 1894d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Before you save the page to a file, or reload the page, you must call 1904d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// |FPDFPage_GenerateContent| or any changes to |page| will be lost. 191d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV FPDFPage_GenerateContent(FPDF_PAGE page); 192d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 193d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Destroy |page_obj| by releasing its resources. |page_obj| must have been 194d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// created by FPDFPageObj_CreateNew{Path|Rect}() or 195d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// FPDFPageObj_New{Text|Image}Obj(). This function must be called on 196d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// newly-created objects if they are not added to a page through 197d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// FPDFPage_InsertObject() or to an annotation through FPDFAnnot_AppendObject(). 198d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 199d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// page_obj - handle to a page object. 200d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT void FPDF_CALLCONV FPDFPageObj_Destroy(FPDF_PAGEOBJECT page_obj); 201e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 202d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Checks if |page_object| contains transparency. 203e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// 204d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// page_object - handle to a page object. 205e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// 2064d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns TRUE if |pageObject| contains transparency. 207d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 208d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPageObj_HasTransparency(FPDF_PAGEOBJECT page_object); 209d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 210d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get type of |page_object|. 211d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 212d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// page_object - handle to a page object. 213d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 214d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns one of the FPDF_PAGEOBJ_* values on success, FPDF_PAGEOBJ_UNKNOWN on 215d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// error. 216d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT int FPDF_CALLCONV FPDFPageObj_GetType(FPDF_PAGEOBJECT page_object); 217e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 218d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Transform |page_object| by the given matrix. 2194d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 2204d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page_object - handle to a page object. 2214d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// a - matrix value. 2224d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// b - matrix value. 2234d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// c - matrix value. 2244d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// d - matrix value. 2254d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// e - matrix value. 2264d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// f - matrix value. 2274d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 2284d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// The matrix is composed as: 2294d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// |a c e| 2304d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// |b d f| 2314d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// and can be used to scale, rotate, shear and translate the |page_object|. 232d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT void FPDF_CALLCONV 233d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPageObj_Transform(FPDF_PAGEOBJECT page_object, 234d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double a, 235d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double b, 236d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double c, 237d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double d, 238d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double e, 239d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double f); 240e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 2414d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Transform all annotations in |page|. 2424d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 2434d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// page - handle to a page. 2444d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// a - matrix value. 2454d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// b - matrix value. 2464d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// c - matrix value. 2474d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// d - matrix value. 2484d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// e - matrix value. 2494d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// f - matrix value. 2504d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 2514d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// The matrix is composed as: 2524d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// |a c e| 2534d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// |b d f| 2544d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// and can be used to scale, rotate, shear and translate the |page| annotations. 255d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT void FPDF_CALLCONV FPDFPage_TransformAnnots(FPDF_PAGE page, 256d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double a, 257d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double b, 258d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double c, 259d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double d, 260d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double e, 261d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double f); 262e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 2634d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Create a new image object. 264e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// 2654d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// document - handle to a document. 266e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// 2674d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns a handle to a new image object. 268d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_PAGEOBJECT FPDF_CALLCONV 269d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPageObj_NewImageObj(FPDF_DOCUMENT document); 270e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 2714d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Load an image from a JPEG image file and then set it into |image_object|. 2724d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 2734d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// pages - pointer to the start of all loaded pages, may be NULL. 2744d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// nCount - number of |pages|, may be 0. 2754d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// image_object - handle to an image object. 2764d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// fileAccess - file access handler which specifies the JPEG image file. 2774d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 2784d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns TRUE on success. 2794d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 2804d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// The image object might already have an associated image, which is shared and 2814d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// cached by the loaded pages. In that case, we need to clear the cached image 2824d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// for all the loaded pages. Pass |pages| and page count (|nCount|) to this API 2834d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// to clear the image cache. If the image is not previously shared, or NULL is a 2844d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// valid |pages| value. 285d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 286ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. MoltmannFPDFImageObj_LoadJpegFile(FPDF_PAGE* pages, 287ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int nCount, 288ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FPDF_PAGEOBJECT image_object, 289ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann FPDF_FILEACCESS* fileAccess); 290e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 2914d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Load an image from a JPEG image file and then set it into |image_object|. 2924d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 2934d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// pages - pointer to the start of all loaded pages, may be NULL. 2944d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// nCount - number of |pages|, may be 0. 2954d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// image_object - handle to an image object. 2964d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// fileAccess - file access handler which specifies the JPEG image file. 2974d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 2984d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns TRUE on success. 2994d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 3004d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// The image object might already have an associated image, which is shared and 3014d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// cached by the loaded pages. In that case, we need to clear the cached image 3024d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// for all the loaded pages. Pass |pages| and page count (|nCount|) to this API 3034d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// to clear the image cache. If the image is not previously shared, or NULL is a 3044d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// valid |pages| value. This function loads the JPEG image inline, so the image 3054d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// content is copied to the file. This allows |fileAccess| and its associated 3064d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// data to be deleted after this function returns. 307d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 3084d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. MoltmannFPDFImageObj_LoadJpegFileInline(FPDF_PAGE* pages, 3094d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann int nCount, 3104d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann FPDF_PAGEOBJECT image_object, 3114d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann FPDF_FILEACCESS* fileAccess); 3124d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann 3134d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Set the transform matrix of |image_object|. 3144d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 3154d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// image_object - handle to an image object. 3164d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// a - matrix value. 3174d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// b - matrix value. 3184d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// c - matrix value. 3194d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// d - matrix value. 3204d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// e - matrix value. 3214d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// f - matrix value. 3224d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 3234d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// The matrix is composed as: 3244d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// |a c e| 3254d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// |b d f| 3264d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// and can be used to scale, rotate, shear and translate the |page| annotations. 3274d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 3284d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns TRUE on success. 329d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 330d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFImageObj_SetMatrix(FPDF_PAGEOBJECT image_object, 331d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double a, 332d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double b, 333d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double c, 334d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double d, 335d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double e, 336d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann double f); 337e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 3384d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Set |bitmap| to |image_object|. 3394d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 3404d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// pages - pointer to the start of all loaded pages, may be NULL. 3414d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// nCount - number of |pages|, may be 0. 3424d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// image_object - handle to an image object. 3434d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// bitmap - handle of the bitmap. 3444d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// 3454d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann// Returns TRUE on success. 346d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 347d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFImageObj_SetBitmap(FPDF_PAGE* pages, 348d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann int nCount, 349d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann FPDF_PAGEOBJECT image_object, 350d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann FPDF_BITMAP bitmap); 351d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 352d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get a bitmap rasterisation of |image_object|. The returned bitmap will be 353d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// owned by the caller, and FPDFBitmap_Destroy() must be called on the returned 354d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// bitmap when it is no longer needed. 355d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 356d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// image_object - handle to an image object. 357d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 358d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns the bitmap. 359d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BITMAP FPDF_CALLCONV 360d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFImageObj_GetBitmap(FPDF_PAGEOBJECT image_object); 361d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 362d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get the decoded image data of |image_object|. The decoded data is the 363d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// uncompressed image data, i.e. the raw image data after having all filters 364d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// applied. |buffer| is only modified if |buflen| is longer than the length of 365d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// the decoded image data. 366d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 367d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// image_object - handle to an image object. 368d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// buffer - buffer for holding the decoded image data in raw bytes. 369d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// buflen - length of the buffer. 370d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 371d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns the length of the decoded image data. 372d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT unsigned long FPDF_CALLCONV 373d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFImageObj_GetImageDataDecoded(FPDF_PAGEOBJECT image_object, 374d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann void* buffer, 375d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned long buflen); 376d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 377d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get the raw image data of |image_object|. The raw data is the image data as 378d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// stored in the PDF without applying any filters. |buffer| is only modified if 379d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// |buflen| is longer than the length of the raw image data. 380d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 381d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// image_object - handle to an image object. 382d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// buffer - buffer for holding the raw image data in raw bytes. 383d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// buflen - length of the buffer. 384d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 385d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns the length of the raw image data. 386d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT unsigned long FPDF_CALLCONV 387d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFImageObj_GetImageDataRaw(FPDF_PAGEOBJECT image_object, 388d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann void* buffer, 389d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned long buflen); 390d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 391d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get the number of filters (i.e. decoders) of the image in |image_object|. 392d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 393d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// image_object - handle to an image object. 394d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 395d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns the number of |image_object|'s filters. 396d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT int FPDF_CALLCONV 397d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFImageObj_GetImageFilterCount(FPDF_PAGEOBJECT image_object); 398d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 399d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get the filter at |index| of |image_object|'s list of filters. Note that the 400d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// filters need to be applied in order, i.e. the first filter should be applied 401d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// first, then the second, etc. |buffer| is only modified if |buflen| is longer 402d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// than the length of the filter string. 403d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 404d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// image_object - handle to an image object. 405d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// index - the index of the filter requested. 406d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// buffer - buffer for holding filter string, encoded in UTF-8. 407d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// buflen - length of the buffer. 408d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 409d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns the length of the filter string. 410d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT unsigned long FPDF_CALLCONV 411d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFImageObj_GetImageFilter(FPDF_PAGEOBJECT image_object, 412d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann int index, 413d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann void* buffer, 414d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned long buflen); 415d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 416d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get the image metadata of |image_object|, including dimension, DPI, bits per 417d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// pixel, and colorspace. If the |image_object| is not an image object or if it 418d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// does not have an image, then the return value will be false. Otherwise, 419d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// failure to retrieve any specific parameter would result in its value being 0. 420d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 421d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// image_object - handle to an image object. 422d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// page - handle to the page that |image_object| is on. Required for 423d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// retrieving the image's bits per pixel and colorspace. 424d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// metadata - receives the image metadata; must not be NULL. 425d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 426d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns true if successful. 427d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 428d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFImageObj_GetImageMetadata(FPDF_PAGEOBJECT image_object, 429d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann FPDF_PAGE page, 430d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann FPDF_IMAGEOBJ_METADATA* metadata); 431e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 43233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Create a new path object at an initial position. 43333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 43433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// x - initial horizontal position. 43533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// y - initial vertical position. 43633357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 43733357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns a handle to a new path object. 438d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_PAGEOBJECT FPDF_CALLCONV FPDFPageObj_CreateNewPath(float x, 439d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float y); 44033357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 44133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Create a closed path consisting of a rectangle. 44233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 44333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// x - horizontal position for the left boundary of the rectangle. 44433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// y - vertical position for the bottom boundary of the rectangle. 44533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// w - width of the rectangle. 44633357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// h - height of the rectangle. 44733357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 44833357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns a handle to the new path object. 449d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_PAGEOBJECT FPDF_CALLCONV FPDFPageObj_CreateNewRect(float x, 450d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float y, 451d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float w, 452d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float h); 453d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 454d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get the bounding box of |page_object|. 455d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 456d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// page_object - handle to a page object. 457d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// left - pointer where the left coordinate will be stored 458d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// bottom - pointer where the bottom coordinate will be stored 459d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// right - pointer where the right coordinate will be stored 460d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// top - pointer where the top coordinate will be stored 461d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 462d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns TRUE on success. 463d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 464d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPageObj_GetBounds(FPDF_PAGEOBJECT page_object, 465d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float* left, 466d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float* bottom, 467d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float* right, 468d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float* top); 469d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 470d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Set the blend mode of |page_object|. 471d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 472d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// page_object - handle to a page object. 473d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// blend_mode - string containing the blend mode. 474d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 475d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Blend mode can be one of following: Color, ColorBurn, ColorDodge, Darken, 476d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Difference, Exclusion, HardLight, Hue, Lighten, Luminosity, Multiply, Normal, 477d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Overlay, Saturation, Screen, SoftLight 478d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT void FPDF_CALLCONV 479d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPageObj_SetBlendMode(FPDF_PAGEOBJECT page_object, 480d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann FPDF_BYTESTRING blend_mode); 48133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 48233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Set the stroke RGBA of a path. Range of values: 0 - 255. 48333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 48433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// path - the handle to the path object. 48533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// R - the red component for the path stroke color. 48633357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// G - the green component for the path stroke color. 48733357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// B - the blue component for the path stroke color. 48833357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// A - the stroke alpha for the path. 48933357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 49033357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns TRUE on success. 491d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 492d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPath_SetStrokeColor(FPDF_PAGEOBJECT path, 493d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int R, 494d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int G, 495d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int B, 496d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int A); 497d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 498d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get the stroke RGBA of a path. Range of values: 0 - 255. 499d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 500d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// path - the handle to the path object. 501d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// R - the red component of the path stroke color. 502d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// G - the green component of the path stroke color. 503d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// B - the blue component of the path stroke color. 504d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// A - the stroke alpha of the path. 505d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 506d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns TRUE on success. 507d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 508d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPath_GetStrokeColor(FPDF_PAGEOBJECT path, 509d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int* R, 510d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int* G, 511d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int* B, 512d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int* A); 51333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 51433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Set the stroke width of a path. 51533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 51633357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// path - the handle to the path object. 51733357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// width - the width of the stroke. 51833357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 51933357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns TRUE on success 520d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 521d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPath_SetStrokeWidth(FPDF_PAGEOBJECT path, float width); 522d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 523d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Set the line join of |page_object|. 524d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 525d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// page_object - handle to a page object. 526d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// line_join - line join 527d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 528d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Line join can be one of following: FPDF_LINEJOIN_MITER, FPDF_LINEJOIN_ROUND, 529d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// FPDF_LINEJOIN_BEVEL 530d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT void FPDF_CALLCONV FPDFPath_SetLineJoin(FPDF_PAGEOBJECT page_object, 531d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann int line_join); 532d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 533d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Set the line cap of |page_object|. 534d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 535d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// page_object - handle to a page object. 536d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// line_cap - line cap 537d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 538d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Line cap can be one of following: FPDF_LINECAP_BUTT, FPDF_LINECAP_ROUND, 539d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// FPDF_LINECAP_PROJECTING_SQUARE 540d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT void FPDF_CALLCONV FPDFPath_SetLineCap(FPDF_PAGEOBJECT page_object, 541d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann int line_cap); 54233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 54333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Set the fill RGBA of a path. Range of values: 0 - 255. 54433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 54533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// path - the handle to the path object. 54633357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// R - the red component for the path fill color. 54733357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// G - the green component for the path fill color. 54833357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// B - the blue component for the path fill color. 54933357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// A - the fill alpha for the path. 55033357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 55133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns TRUE on success. 552d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV FPDFPath_SetFillColor(FPDF_PAGEOBJECT path, 553d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int R, 554d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int G, 555d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int B, 556d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int A); 557d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 558d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get the fill RGBA of a path. Range of values: 0 - 255. 559d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 560d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// path - the handle to the path object. 561d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// R - the red component of the path fill color. 562d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// G - the green component of the path fill color. 563d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// B - the blue component of the path fill color. 564d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// A - the fill alpha of the path. 565d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 566d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns TRUE on success. 567d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV FPDFPath_GetFillColor(FPDF_PAGEOBJECT path, 568d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int* R, 569d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int* G, 570d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int* B, 571d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int* A); 572d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 573d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Experimental API. 574d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get number of segments inside |path|. 575d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 576d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// path - handle to a path. 577d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 578d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// A segment is a command, created by e.g. FPDFPath_MoveTo(), 579d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// FPDFPath_LineTo() or FPDFPath_BezierTo(). 580d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 581d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns the number of objects in |path| or -1 on failure. 582d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT int FPDF_CALLCONV FPDFPath_CountSegments(FPDF_PAGEOBJECT path); 583d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 584d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Experimental API. 585d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get segment in |path| at |index|. 586d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 587d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// path - handle to a path. 588d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// index - the index of a segment. 589d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 590d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns the handle to the segment, or NULL on faiure. 591d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_PATHSEGMENT FPDF_CALLCONV 592d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPath_GetPathSegment(FPDF_PAGEOBJECT path, int index); 593d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 594d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Experimental API. 595d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get coordinates of |segment|. 596d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 597d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// segment - handle to a segment. 598d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// x - the horizontal position of the segment. 599d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// y - the vertical position of the segment. 600d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 601d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns TRUE on success, otherwise |x| and |y| is not set. 602d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 603d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPathSegment_GetPoint(FPDF_PATHSEGMENT segment, float* x, float* y); 604d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 605d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Experimental API. 606d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Get type of |segment|. 607d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 608d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// segment - handle to a segment. 609d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 610d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns one of the FPDF_SEGMENT_* values on success, 611d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// FPDF_SEGMENT_UNKNOWN on error. 612d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT int FPDF_CALLCONV FPDFPathSegment_GetType(FPDF_PATHSEGMENT segment); 613d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 614d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Experimental API. 615d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Gets if the |segment| closes the current subpath of a given path. 616d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 617d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// segment - handle to a segment. 618d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 619d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns close flag for non-NULL segment, FALSE otherwise. 620d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 621d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPathSegment_GetClose(FPDF_PATHSEGMENT segment); 62233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 62333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Move a path's current point. 62433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 62533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// path - the handle to the path object. 62633357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// x - the horizontal position of the new current point. 62733357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// y - the vertical position of the new current point. 62833357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 62933357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Note that no line will be created between the previous current point and the 63033357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// new one. 63133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 63233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns TRUE on success 633d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV FPDFPath_MoveTo(FPDF_PAGEOBJECT path, 634d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float x, 635d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float y); 63633357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 63733357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Add a line between the current point and a new point in the path. 63833357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 63933357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// path - the handle to the path object. 64033357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// x - the horizontal position of the new point. 64133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// y - the vertical position of the new point. 64233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 64333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// The path's current point is changed to (x, y). 64433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 64533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns TRUE on success 646d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV FPDFPath_LineTo(FPDF_PAGEOBJECT path, 647d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float x, 648d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float y); 64933357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 65033357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Add a cubic Bezier curve to the given path, starting at the current point. 65133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 65233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// path - the handle to the path object. 65333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// x1 - the horizontal position of the first Bezier control point. 65433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// y1 - the vertical position of the first Bezier control point. 65533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// x2 - the horizontal position of the second Bezier control point. 65633357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// y2 - the vertical position of the second Bezier control point. 65733357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// x3 - the horizontal position of the ending point of the Bezier curve. 65833357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// y3 - the vertical position of the ending point of the Bezier curve. 65933357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 66033357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns TRUE on success 661d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV FPDFPath_BezierTo(FPDF_PAGEOBJECT path, 662d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float x1, 663d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float y1, 664d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float x2, 665d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float y2, 666d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float x3, 667d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float y3); 66833357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 66933357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Close the current subpath of a given path. 67033357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 67133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// path - the handle to the path object. 67233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 67333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// This will add a line between the current point and the initial point of the 67433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// subpath, thus terminating the current subpath. 67533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 67633357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns TRUE on success 677d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV FPDFPath_Close(FPDF_PAGEOBJECT path); 67833357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 67933357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Set the drawing mode of a path. 68033357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 68133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// path - the handle to the path object. 68233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// fillmode - the filling mode to be set: 0 for no fill, 1 for alternate, 2 for 68333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// winding. 68433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// stroke - a boolean specifying if the path should be stroked or not. 68533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 68633357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns TRUE on success 687d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV FPDFPath_SetDrawMode(FPDF_PAGEOBJECT path, 688d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann int fillmode, 689d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann FPDF_BOOL stroke); 69033357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 69133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Create a new text object using one of the standard PDF fonts. 69233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 69333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// document - handle to the document. 69433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// font - string containing the font name, without spaces. 69533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// font_size - the font size for the new text object. 69633357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 69733357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns a handle to a new text object, or NULL on failure 698d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_PAGEOBJECT FPDF_CALLCONV 699d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPageObj_NewTextObj(FPDF_DOCUMENT document, 700d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann FPDF_BYTESTRING font, 701d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float font_size); 70233357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 70333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Set the text for a textobject. If it had text, it will be replaced. 70433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 70533357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// text_object - handle to the text object. 706d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// text - the UTF-16LE encoded string containing the text to be added. 70733357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 70833357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns TRUE on success 709d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 710d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFText_SetText(FPDF_PAGEOBJECT text_object, FPDF_WIDESTRING text); 71133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 712d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns a font object loaded from a stream of data. The font is loaded 713d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// into the document. 714d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 715d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// document - handle to the document. 716d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// data - the stream of data, which will be copied by the font object. 717d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// size - size of the stream, in bytes. 718d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// font_type - FPDF_FONT_TYPE1 or FPDF_FONT_TRUETYPE depending on the font 719d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// type. 720d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// cid - a boolean specifying if the font is a CID font or not. 72133357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 722d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// The loaded font can be closed using FPDF_Font_Close. 72333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// 72433357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann// Returns NULL on failure 725d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_FONT FPDF_CALLCONV FPDFText_LoadFont(FPDF_DOCUMENT document, 726d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann const uint8_t* data, 727d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann uint32_t size, 728d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann int font_type, 729d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann FPDF_BOOL cid); 730d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 731d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Set the fill RGBA of a text object. Range of values: 0 - 255. 732d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 733d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// text_object - handle to the text object. 734d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// R - the red component for the path fill color. 735d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// G - the green component for the path fill color. 736d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// B - the blue component for the path fill color. 737d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// A - the fill alpha for the path. 738d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 739d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns TRUE on success. 740d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_BOOL FPDF_CALLCONV 741d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFText_SetFillColor(FPDF_PAGEOBJECT text_object, 742d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int R, 743d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int G, 744d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int B, 745d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann unsigned int A); 746d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 747d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Close a loaded PDF font. 748d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 749d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// font - Handle to the loaded font. 750d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT void FPDF_CALLCONV FPDFFont_Close(FPDF_FONT font); 751d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann 752d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Create a new text object using a loaded font. 753d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 754d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// document - handle to the document. 755d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// font - handle to the font object. 756d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// font_size - the font size for the new text object. 757d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// 758d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann// Returns a handle to a new text object, or NULL on failure 759d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDF_EXPORT FPDF_PAGEOBJECT FPDF_CALLCONV 760d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. MoltmannFPDFPageObj_CreateTextObj(FPDF_DOCUMENT document, 761d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann FPDF_FONT font, 762d904c1ec7e8d1d86ed56f0dd252435d12cd345aePhilip P. Moltmann float font_size); 76333357cad1fd1321a2b38d2963e2585f27ce980a2Philip P. Moltmann 764e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov#ifdef __cplusplus 7654d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann} // extern "C" 7664d3acf4ec42bf6e838f9060103aff98fbf170794Philip P. Moltmann#endif // __cplusplus 767e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 768e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov#endif // PUBLIC_FPDF_EDIT_H_ 769