diff options
Diffstat (limited to 'public/fpdf_save.h')
-rw-r--r-- | public/fpdf_save.h | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/public/fpdf_save.h b/public/fpdf_save.h new file mode 100644 index 0000000000..0909d5a447 --- /dev/null +++ b/public/fpdf_save.h @@ -0,0 +1,82 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef _FPDFSAVE_H_ +#define _FPDFSAVE_H_ + +#include "fpdfview.h" + +#ifdef __cplusplus +extern "C" { +#endif + + +// Structure for custom file write +struct FPDF_FILEWRITE{ + + // + //Version number of the interface. Currently must be 1. + // + int version; + + // + // Method: WriteBlock + // Output a block of data in your custom way. + // Interface Version: + // 1 + // Implementation Required: + // Yes + // Comments: + // Called by function FPDF_SaveDocument + // Parameters: + // pThis - Pointer to the structure itself + // pData - Pointer to a buffer to output + // size - The size of the buffer. + // Return value: + // Should be non-zero if successful, zero for error. + // + int (*WriteBlock)( FPDF_FILEWRITE* pThis, const void* pData, unsigned long size); + +}; + + +/** @brief Incremental. */ +#define FPDF_INCREMENTAL 1 +/** @brief No Incremental. */ +#define FPDF_NO_INCREMENTAL 2 +/** @brief Remove security. */ +#define FPDF_REMOVE_SECURITY 3 + +// Function: FPDF_SaveAsCopy +// Saves the copy of specified document in custom way. +// Parameters: +// document - Handle to document. Returned by FPDF_LoadDocument and FPDF_CreateNewDocument. +// pFileWrite - A pointer to a custom file write structure. +// flags - The creating flags. +// Return value: +// TRUE for succeed, FALSE for failed. +// +DLLEXPORT FPDF_BOOL STDCALL FPDF_SaveAsCopy( FPDF_DOCUMENT document,FPDF_FILEWRITE * pFileWrite, + FPDF_DWORD flags ); + +// Function: FPDF_SaveWithVersion +// Same as function ::FPDF_SaveAsCopy, except the file version of the saved document could be specified by user. +// Parameters: +// document - Handle to document. +// pFileWrite - A pointer to a custom file write structure. +// flags - The creating flags. +// fileVersion - The PDF file version. File version: 14 for 1.4, 15 for 1.5, ... +// Return value: +// TRUE if succeed, FALSE if failed. +// +DLLEXPORT FPDF_BOOL STDCALL FPDF_SaveWithVersion(FPDF_DOCUMENT document,FPDF_FILEWRITE * pFileWrite, + FPDF_DWORD flags, int fileVersion); + +#ifdef __cplusplus +}; +#endif + +#endif //_FPDFSAVE_H_ |