My Project
fs_pdfdoc.h
Go to the documentation of this file.
1 
15 #ifndef FS_PDFDOC_H_
16 #define FS_PDFDOC_H_
17 
18 #include "common/fs_common.h"
19 #include "common/file/fs_file.h"
20 #include "pdf/fs_bookmark.h"
21 #include "pdf/fs_pdfpage.h"
22 #include "pdf/fs_readingbookmark.h"
24 
30 namespace foxit {
31 namespace fdf {
32 class FDFDoc;
33 } // namespace fdf
34 namespace pdf {
35 // forward declaration
36 namespace actions {
37 class Action;
38 } // namespace actions
39 namespace interform {
40 class Form;
41 } // namespace interform;
42 class ReadingBookmark;
43 class SecurityHandler;
44 class Signature;
45 class StdEncryptData;
46 class CertificateEncryptData;
47 class DRMEncryptData;
48 class CustomEncryptData;
49 class RMSEncryptData;
50 
52 class WrapperData FS_FINAL : public Object {
53  public:
56  : version(0) {}
57 
67  WrapperData(int version, const wchar_t* type, const wchar_t* app_id, const wchar_t* uri, const wchar_t* description)
68  : version(version)
69  , type(type)
70  , app_id(app_id)
71  , uri(uri)
73 
79  WrapperData(const WrapperData& wrapper_data)
80  : version(wrapper_data.version)
81  , type(wrapper_data.type)
82  , app_id(wrapper_data.app_id)
83  , uri(wrapper_data.uri)
84  , description(wrapper_data.description) {}
85 
93  WrapperData& operator = (const WrapperData& wrapper_data) {
94  version = wrapper_data.version;
95  type = wrapper_data.type;
96  app_id = wrapper_data.app_id;
97  uri = wrapper_data.uri;
98  description = wrapper_data.description;
99  return *this;
100  }
101 
113  void Set(int version, const wchar_t* type, const wchar_t* app_id, const wchar_t* uri, const wchar_t* description) {
114  this->version = version;
115  this->type = type;
116  this->app_id = app_id;
117  this->uri = uri;
118  this->description = description;
119  }
120 
122  int version;
131 };
132 
134 class PayLoadData FS_FINAL {
135  public:
138  : version(0.0f)
139  , file_size (0){}
140 
150  PayLoadData(float version, const wchar_t* crypto_filter, const wchar_t* file_name, foxit::int64 file_size, const wchar_t* description)
151  : version(version)
156  {}
157 
163  PayLoadData(const PayLoadData& payload_data)
164  : version(payload_data.version)
165  , crypto_filter(payload_data.crypto_filter)
166  , description(payload_data.description)
167  , file_name(payload_data.file_name)
168  , file_size(payload_data.file_size){}
169 
177  PayLoadData& operator=(const PayLoadData& payload_data) {
178  version = payload_data.version;
179  crypto_filter = payload_data.crypto_filter;
180  description = payload_data.description;
181  file_name = payload_data.file_name;
182  file_size = payload_data.file_size;
183  return *this;
184  }
185 
195  void Set(float version, const wchar_t* crypto_filter, const wchar_t* file_name, int64 file_size, const wchar_t* description) {
196  this->version = version;
197  this->crypto_filter = crypto_filter;
198  this->file_name = file_name;
199  this->file_size = file_size;
200  this->description = description;
201  }
202 
204  float version;
213 };
214 
219 class PageBasicInfo FS_FINAL : public Object {
220  public:
230  : width(width)
231  , height(height)
232  , rotation(rotation) {}
233 
236  : width(0)
237  , height(0)
238  , rotation(CommonDefines::e_RotationUnknown) {}
244  PageBasicInfo(const PageBasicInfo& page_info)
245  : width(page_info.width)
246  , height(page_info.height)
247  , rotation(page_info.rotation) {}
256  width = page_info.width;
257  height = page_info.height;
258  rotation = page_info.rotation;
259  return *this;
260  }
271  void Set(float width, float height, common::Rotation rotation) {
272  this->width = width;
273  this->height = height;
274  this->rotation = rotation;
275  }
276 
278  float width;
280  float height;
286 };
287 
338 class PDFDoc FS_FINAL : public Base {
339  public:
345  typedef enum _PasswordType {
354  } PasswordType;
355 
361  typedef enum _EncryptType {
378  } EncryptType;
379 
385  typedef enum _UserPermissions {
391  e_PermPrint = 0x0004,
398  e_PermModify = 0x0008,
404  e_PermExtract = 0x0010,
410  e_PermAnnotForm = 0x0020,
416  e_PermFillForm = 0x0100,
429  e_PermAssemble = 0x0400,
436  } UserPermissions;
437 
442  typedef enum _SaveFlags {
470  } SaveFlags;
471 
477  typedef enum _ImportPageFlags {
488  } ImportPageFlags;
489 
495  typedef enum _DisplayMode {
511  } DisplayMode;
512 
519  typedef enum _DataType {
521  e_Forms = 0x0001,
523  e_Annots = 0x0002,
525  e_NoLinks = 0x0004
526  } DataType;
527 
533  typedef enum _WrapperType {
540  } WrapperType;
541 
542 
549  PDFDoc();
550 
559  explicit PDFDoc(const char* path);
560 
569  explicit PDFDoc(const wchar_t* path);
570 
581  explicit PDFDoc(const void* buffer, size_t size);
582 
597  explicit PDFDoc(common::file::ReaderCallback* file_read, bool is_async = false);
609  explicit PDFDoc(std::ifstream* input_file_stream);
610 
611  // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
612  explicit PDFDoc(FS_HANDLE handle);
614  ~PDFDoc();
615 
621  PDFDoc(const PDFDoc& other);
622 
630  PDFDoc& operator = (const PDFDoc& other);
638  bool operator == (const PDFDoc& other) const;
639 
647  bool operator != (const PDFDoc& other) const;
648 
656  bool IsEmpty() const;
657 
664 
684  bool IsLinearized() const;
685 
692  bool IsTaggedPDF() const;
693 
715  ErrorCode Load(const String& password = "");
716 
739  ErrorCode LoadW(const WString& password = WString());
740 
772  common::Progressive StartLoad(const String& password = "", bool is_cache_stream = true,
773  common::PauseCallback* pause = NULL);
774 
806  common::Progressive StartLoadW(const WString& password = WString(), bool is_cache_stream = true,
807  common::PauseCallback* pause = NULL);
808 
818  int GetFirstAvailPageIndex() const;
819 
830  bool IsXFA() const;
831 
837  bool IsCPDF() const;
838 
844  bool IsCDRM() const;
845 
851  String GetDocURI();
859 
866  bool IsEncrypted() const;
867 
873  void ClearRenderCache();
874 
889 
897 
909  PasswordType CheckPassword(const String& password);
910 
922  PasswordType CheckPassword(const foxit::WString& password);
923 
933  String GetUserPassword(const String& owner_password);
934 
943 
952 
961 
970 
983 
1010  bool SaveAs(const char* file_path, uint32 save_flags = PDFDoc::e_SaveFlagNormal);
1011 
1038  bool SaveAs(const wchar_t* file_path, uint32 save_flags = PDFDoc::e_SaveFlagNormal);
1039 
1073  common::Progressive StartSaveAs(const char* file_path,
1074  uint32 save_flags = PDFDoc::e_SaveFlagNormal,
1075  common::PauseCallback* pause = NULL);
1076 
1110  common::Progressive StartSaveAs(const wchar_t* file_path,
1111  uint32 save_flags = PDFDoc::e_SaveFlagNormal,
1112  common::PauseCallback* pause = NULL);
1113 
1150 
1159 
1169 
1177  bool RemoveBookmark(const Bookmark& bookmark);
1178 
1184  int GetPageCount() const;
1185 
1199  PDFPage GetPage(int index);
1200 
1209  DisplayMode GetDisplayMode() const;
1210 
1221  void SetDisplayMode(DisplayMode display_mode);
1222 
1229 
1236 
1245 
1252 
1259 
1268 
1286 
1294  void DeleteIndirectObject(uint32 object_number);
1295 
1302  uint32 GetUserPermissions() const;
1303 
1310  bool IsWrapper() const;
1311 
1318  WrapperType GetWrapperType() const;
1319 
1326  WrapperData GetWrapperData() const;
1327 
1334  int64 GetWrapperOffset() const;
1335 
1343 
1361 
1387  bool SaveAsWrapperFile(const wchar_t* file_path, const WrapperData* wrapper_data = NULL,
1388  uint32 user_permissions = 0xFFFFFFFC, const char* owner_password = "");
1389 
1417  common::Progressive StartSaveAsPayloadFile(const wchar_t* file_path, const wchar_t* payload_file_path,
1418  const wchar_t* crypto_filter, const wchar_t* description, float version,
1419  uint32 save_flags = PDFDoc::e_SaveFlagNormal,
1420  common::PauseCallback* pause = NULL);
1432  bool HasForm() const;
1433 
1440 
1450 
1464  ReadingBookmark InsertReadingBookmark(int reading_bookmark_index, const WString& title, int dest_page_index);
1465 
1473  bool RemoveReadingBookmark(const ReadingBookmark& reading_bookmark);
1474 
1480  int GetSignatureCount();
1481 
1490  Signature GetSignature(int index);
1491 
1499  void RemoveSignature(const Signature& signature);
1500 
1513  PDFPage InsertPage(int index, float width, float height);
1527 
1536  bool RemovePage(int index);
1547  bool RemovePage(const foxit::pdf::PDFPage& page);
1548 
1564  bool MovePageTo(const PDFPage& page, int dest_index);
1565 
1586  bool MovePagesTo(const common::Range& page_range, int dest_index);
1587 
1638  const wchar_t* src_file_path, const String& password,
1639  uint32 flags = PDFDoc::e_ImportFlagNormal, const char* layer_name = "",
1640  const common::Range& page_range = common::Range(),
1641  common::PauseCallback* pause = NULL);
1692  const wchar_t* src_file_path, const WString& password,
1693  uint32 flags = PDFDoc::e_ImportFlagNormal, const char* layer_name = "",
1694  const common::Range& page_range = common::Range(),
1695  common::PauseCallback* pause = NULL);
1743  common::Progressive StartImportPages(int dest_index, const PDFDoc& src_doc,
1744  uint32 flags = PDFDoc::e_ImportFlagNormal, const char* layer_name = "",
1745  const common::Range& page_range = common::Range(),
1746  common::PauseCallback* pause = NULL);
1747 
1764  bool ImportFromFDF(const fdf::FDFDoc& fdf_doc, int types = pdf::PDFDoc::e_Forms | pdf::PDFDoc::e_Annots, const common::Range& page_range = common::Range());
1765 
1781  bool ExportToFDF(const fdf::FDFDoc& fdf_doc, int types = pdf::PDFDoc::e_Forms | pdf::PDFDoc::e_Annots, const common::Range& page_range = common::Range());
1782 
1791  bool ExportAnnotToFDF(const annots::Annot& pdf_annot,const fdf::FDFDoc& fdf_doc);
1792 
1798  String GetHeader() const;
1799 
1805  int GetFileVersion();
1806 
1820  void SetFileVersion(int version);
1821 
1834  bool SetSecurityHandler(const SecurityHandler& handler);
1835 
1846 
1856  bool RemoveSecurity();
1857 
1865  int GetFontCount();
1866 
1875  common::Font GetFont(int index);
1876 
1883 
1895  bool SetOpenAction(actions::Action& action);
1896 
1902  bool RemoveOpenAction();
1903 
1909  bool DoJSOpenAction();
1910 
1916  bool IsPortfolio();
1917 
1932  PageBasicInfo GetPageBasicInfo(int index);
1933 };
1934 } // namespace pdf
1935 } // namespace foxit
1936 #endif // FS_PDFDOC_H_
1937 
FX_INT64 int64
Signed 64-bit integer.
Definition: fs_basictypes.h:192
When document is opened, full-screen mode, with no menu bar, window controls, or any other windows ar...
Definition: fs_pdfdoc.h:506
int GetFileVersion()
Get PDF file version stored in PDF header section.
bool ImportFromFDF(const fdf::FDFDoc &fdf_doc, int types=pdf::PDFDoc::e_Forms|pdf::PDFDoc::e_Annots, const common::Range &page_range=common::Range())
Import form fields and annotations from a FDF/XFDF document.
int GetReadingBookmarkCount()
Get the count of reading bookmarks.
PasswordType GetPasswordType() const
Get the type of current used password.
file writing interface.
Definition: fx_stream.h:449
void SetDisplayMode(DisplayMode display_mode)
Set the display mode.
bool RemoveReadingBookmark(const ReadingBookmark &reading_bookmark)
Remove a reading bookmark from current PDF document.
bool IsTaggedPDF() const
Check if current PDF document is a Tagged PDF file.
objects::PDFDictionary * GetEncryptDict() const
Get the encrypt dictionary.
SaveFlags
Enumeration for PDF document saving flags.
Definition: fs_pdfdoc.h:442
bool RemoveOpenAction()
Remove the action to be performed when the document is opened.
void * FS_HANDLE
Handle type.
Definition: fs_basictypes.h:216
objects::PDFDictionary * GetCatalog() const
Get the catalog dictionary.
bool operator==(const PDFDoc &other) const
Equal operator.
WrapperData()
Constructor.
Definition: fs_pdfdoc.h:55
WString description
Description for wrapper file to show applications or confront users prompt information.
Definition: fs_pdfdoc.h:130
int64 GetWrapperOffset() const
Get wrapper offset if current document's wrapper type is PDFDoc::e_WrapperFoxit.
A user password is used in PDF document.
Definition: fs_pdfdoc.h:351
UserPermissions
Enumeration for user access permissions in a PDF document.
Definition: fs_pdfdoc.h:385
Definition: fs_action.h:417
PDF 2.0 wrapper document.
Definition: fs_pdfdoc.h:539
Definition: fs_annot.h:749
bool DoJSOpenAction()
Perform JavaScript actions when the document is opened.
uint32 GetUserPermissions() const
Get user access permissions.
bool MovePageTo(const PDFPage &page, int dest_index)
Move a specified page to a new index position.
String GetHeader() const
Get PDF header identifying the version of the PDF specification to which the file conforms.
Definition: fs_pdfdoc.h:134
Definition: fs_pdfdoc.h:52
Size
Enumeration for page size type.
Definition: fs_pdfpage.h:385
CFX_Object Object
Object type.
Definition: fs_basictypes.h:219
WString file_name
The payload file name.
Definition: fs_pdfdoc.h:208
SecurityHandler GetSecurityHandler()
Get current PDF security handler of current document.
Definition: fs_common.h:385
Definition: fs_security.h:332
int version
Wrapper version.
Definition: fs_pdfdoc.h:122
PayLoadData(float version, const wchar_t *crypto_filter, const wchar_t *file_name, foxit::int64 file_size, const wchar_t *description)
Constructor, with parameters.
Definition: fs_pdfdoc.h:150
bool ExportAnnotToFDF(const annots::Annot &pdf_annot, const fdf::FDFDoc &fdf_doc)
Export specified annotation to a FDF/XFDF document.
bool IsLinearized() const
Check if current PDF document is a linearized file.
bool ExportToFDF(const fdf::FDFDoc &fdf_doc, int types=pdf::PDFDoc::e_Forms|pdf::PDFDoc::e_Annots, const common::Range &page_range=common::Range())
Export form fields and annotations to a FDF/XFDF document.
WrapperType
Enumeration for wrapper type.
Definition: fs_pdfdoc.h:533
common::Progressive StartLoadW(const WString &password=WString(), bool is_cache_stream=true, common::PauseCallback *pause=0)
Start to loading current document content by using a specified password.
bool RemoveSecurity()
Remove the security handler from current document, so that the later saved document will be unencrypt...
PDFDoc()
Constructor.
Header file for common definitions and classes.
bool SaveAsWrapperFile(const wchar_t *file_path, const WrapperData *wrapper_data=0, uint32 user_permissions=0xFFFFFFFC, const char *owner_password="")
Save current PDF document as a wrapper file.
DisplayMode
Enumeration for display mode which specifies how the document should be displayed when opened.
Definition: fs_pdfdoc.h:495
When document is opened, thumbnail images are visible.
Definition: fs_pdfdoc.h:501
No encryption pattern.
Definition: fs_pdfdoc.h:365
Save document without original data or unchanged objects.
Definition: fs_pdfdoc.h:458
bool RemoveBookmark(const Bookmark &bookmark)
Remove a specified bookmark.
file reading interface.
Definition: fx_stream.h:555
objects::PDFObject * GetIndirectObject(uint32 object_number)
Get an indirect object by indirect object number.
Header file for file operation related definitions and functions.
StdEncryptData GetStdEncryptData() const
Get encrypt data of standard encryption (known as password encryption).
Definition: fs_security.h:937
objects::PDFDictionary * GetInfo() const
Get the information dictionary.
void SetFileVersion(int version)
Set the PDF file version which will be stored in PDF header section of the saved PDF file.
bool operator !=(const PDFDoc &other) const
Not equal operator.
WString description
Description for payload file to show applications or confront users prompt information.
Definition: fs_pdfdoc.h:212
String GetUserPassword(const String &owner_password)
Get the user password based on owner password.
WrapperData GetWrapperData() const
Get wrapper data if current document's wrapper type is PDFDoc::e_WrapperFoxit.
ErrorCode
Enumeration for error code.
Definition: fs_basictypes.h:236
Encryption type: Foxit DRM encryption.
Definition: fs_pdfdoc.h:371
Import pages normally.
Definition: fs_pdfdoc.h:479
int GetSignatureCount()
Get the count of signature.
Definition: fs_pdfobject.h:55
common::Font GetFont(int index)
Get a font by index.
void ClearRenderCache()
Clear the cache used during rendering, to reduce the memory usage.
Encryption type: password, which is the standard encryption.
Definition: fs_pdfdoc.h:367
bool IsPortfolio()
Check whether current PDF document is a portfolio file or not.
bool RemovePage(int index)
Remove a PDF page by page index.
ReadingBookmark GetReadingBookmark(int index)
Get a reading bookmark by index.
Assemble PDF document. (Bit 11 in permission value)
Definition: fs_pdfdoc.h:429
DisplayMode GetDisplayMode() const
Get the display mode.
When document is opened, optional content group panels are visible.
Definition: fs_pdfdoc.h:508
PDFPage GetPage(int index)
Get a PDF page by index.
uint64 GetFileSize()
Get file size.
When document is opened, attachment panels are visible.
Definition: fs_pdfdoc.h:510
DataType
Enumeration for data type used to decide which object(s) will be imported from or exported to FDF/XFD...
Definition: fs_pdfdoc.h:519
Form fields are to imported from or exported to FDF/XFDF document.
Definition: fs_pdfdoc.h:521
Definition: fs_security.h:797
PDFPage InsertPage(int index, float width, float height)
Insert a new blank PDF page to document, by index.
Annotations (except link annotations) are to imported from or exported to FDF/XFDF document.
Definition: fs_pdfdoc.h:525
RMSEncryptData GetRMSEncryptData() const
Get encrypt data of RMS encryption.
Encryption type: Foxit connected PDF DRM encryption.
Definition: fs_pdfdoc.h:377
BYTE STRING CLASS.
Definition: fx_string.h:317
actions::Action GetOpenAction()
Get the action to be performed when the document is opened.
PageBasicInfo(float width, float height, common::Rotation rotation)
Constructor, with parameters.
Definition: fs_pdfdoc.h:229
When document is opened, neither document outlines nor thumbnail images are visible.
Definition: fs_pdfdoc.h:497
Encryption type: Microsoft RMS encryption.
Definition: fs_pdfdoc.h:375
bool MovePagesTo(const common::Range &page_range, int dest_index)
Move one or more pages (specified by index) to a new index position.
PageBasicInfo()
Constructor.
Definition: fs_pdfdoc.h:235
Unknown encryption type.
Definition: fs_pdfdoc.h:363
WString type
Wrapper type to indicate a type of the current wrapper file.
Definition: fs_pdfdoc.h:124
Definition: fs_signature.h:84
int GetFirstAvailPageIndex() const
Get the page index of the fist available page.
Definition: fs_security.h:133
WString uri
The URI for consumers to get more information.
Definition: fs_pdfdoc.h:128
Rotation
Enumeration for rotation.
Definition: fs_common.h:221
Unknown rotation.
Definition: fs_common.h:231
When document is opened, document outlines (bookmarks) are visible.
Definition: fs_pdfdoc.h:499
common::Progressive StartImportPages(int dest_index, const PDFDoc &src_doc, uint32 flags=PDFDoc::e_ImportFlagNormal, const char *layer_name="", const common::Range &page_range=common::Range(), common::PauseCallback *pause=0)
Start to import pages from another PDF document (via PDF document object).
common::Progressive StartSaveAs(const char *file_path, uint32 save_flags=PDFDoc::e_SaveFlagNormal, common::PauseCallback *pause=0)
Start to save current PDF document as another PDF file.
common::Progressive StartLoad(const String &password="", bool is_cache_stream=true, common::PauseCallback *pause=0)
Start to loading current document content by using a specified password.
PDFDoc & operator=(const PDFDoc &other)
Assign operator.
Header file for PDF object related definitions and classes.
Definition: fs_pdfdoc.h:219
int GetPageCount() const
Get the count of pages.
Header file for PDF page related definitions and classes.
PayLoadData & operator=(const PayLoadData &payload_data)
Assign operator.
Definition: fs_pdfdoc.h:177
Fill PDF form. (Bit 9 in permission value)
Definition: fs_pdfdoc.h:416
bool SaveAs(const char *file_path, uint32 save_flags=PDFDoc::e_SaveFlagNormal)
Save current PDF document as another PDF file.
CFX_WideString WString
Wide string.
Definition: fs_basictypes.h:221
EncryptType
Enumeration for encryption type.
Definition: fs_pdfdoc.h:361
PageBasicInfo & operator=(const PageBasicInfo &page_info)
Assign operator.
Definition: fs_pdfdoc.h:255
bool IsCDRM() const
Check whether the loaded document is a ConnectedPDF DRM document or not.
WrapperData(int version, const wchar_t *type, const wchar_t *app_id, const wchar_t *uri, const wchar_t *description)
Constructor, with parameters.
Definition: fs_pdfdoc.h:67
Foxit namespace.
Definition: fs_connectedpdf.h:26
Definition: fs_security.h:56
PayLoadData()
Constructor.
Definition: fs_pdfdoc.h:137
uint32 AddIndirectObject(objects::PDFObject *pdf_object)
Add a PDF object to current PDF document, to be an indirect object.
Definition: fs_bookmark.h:58
PageBasicInfo GetPageBasicInfo(int index)
Get the basic information of a page specified by index.
String GetEndpoint()
Get the URL of ConnectedPDF Web services if current PDF is a connected PDF.
Save document incrementally.
Definition: fs_pdfdoc.h:451
Definition: fs_readingbookmark.h:43
Annotations are to imported from or exported to FDF/XFDF document.
Definition: fs_pdfdoc.h:523
Definition: fx_basic.h:3690
ErrorCode LoadW(const WString &password=WString())
Load current document content by using a specified password.
Encryption type: digital certificate encryption.
Definition: fs_pdfdoc.h:369
Definition: fs_pdfobject.h:763
int GetFontCount()
Count all the PDF fonts used in current PDF document.
bool HasForm() const
Check whether current PDF document has interactive form (also known as AcroForm).
void Set(float width, float height, common::Rotation rotation)
Set value.
Definition: fs_pdfdoc.h:271
Import pages with layers.
Definition: fs_pdfdoc.h:481
Operate text annotations and fill in interactive form fields. (Bit 6 in permission value)
Definition: fs_pdfdoc.h:410
common::Progressive StartImportPagesFromFilePath(int dest_index, const wchar_t *src_file_path, const String &password, uint32 flags=PDFDoc::e_ImportFlagNormal, const char *layer_name="", const common::Range &page_range=common::Range(), common::PauseCallback *pause=0)
Start to import pages from another PDF document (via file path).
void Set(float version, const wchar_t *crypto_filter, const wchar_t *file_name, int64 file_size, const wchar_t *description)
Set value.
Definition: fs_pdfdoc.h:195
void Set(int version, const wchar_t *type, const wchar_t *app_id, const wchar_t *uri, const wchar_t *description)
Set value.
Definition: fs_pdfdoc.h:113
ReadingBookmark InsertReadingBookmark(int reading_bookmark_index, const WString &title, int dest_page_index)
Insert a reading bookmark to current PDF document.
PasswordType CheckPassword(const String &password)
Check the type of a specified password.
objects::PDFDictionary * GetTrailer() const
Get the trailer dictionary.
ImportPageFlags
Enumeration for flags used for importing pages.
Definition: fs_pdfdoc.h:477
bool SetOpenAction(actions::Action &action)
Set the action to be performed when the document is opened.
#define NULL
The null-pointer value.
Definition: fx_system.h:773
common::Progressive StartGetPayloadFile(foxit::common::file::WriterCallback *payload_file, common::PauseCallback *pause=0)
Start to get payload file.
WrapperData & operator=(const WrapperData &wrapper_data)
Assign operator.
Definition: fs_pdfdoc.h:93
Save document normally, without using any special flag. This can only be used alone.
Definition: fs_pdfdoc.h:444
~PDFDoc()
Destructor.
Definition: fs_pdfdoc.h:338
WString crypto_filter
The name of the cryptographic filter used to encrypt the encrypted payload document.
Definition: fs_pdfdoc.h:206
WString app_id
Application identity to indicate applications to open this wrapper data.
Definition: fs_pdfdoc.h:126
Definition: fs_pdfpage.h:307
EncryptType GetEncryptionType() const
Get the encryption type.
Definition: fs_fdfdoc.h:51
void RemoveSignature(const Signature &signature)
Remove a signature.
float height
Page height.
Definition: fs_pdfdoc.h:280
Bookmark CreateRootBookmark()
Create new bookmark root node.
Import pages without cloning stream objects into memory.
Definition: fs_pdfdoc.h:487
bool SetSecurityHandler(const SecurityHandler &handler)
Set a PDF security handler for encryption, such as standard encryption(password), certificate encrypt...
Definition: fs_security.h:550
bool IsEncrypted() const
Check whether current document is an encrypted file or not.
float version
The version number of the cryptographic filter used to encrypt the encrypted payload referenced by th...
Definition: fs_pdfdoc.h:204
Print PDF document with higher qualities. (Bit 12 in permission value)
Definition: fs_pdfdoc.h:435
bool IsCPDF() const
Check whether the loaded document is a ConnectedPDF document or not.
WrapperData(const WrapperData &wrapper_data)
Constructor, with another wrapper data object.
Definition: fs_pdfdoc.h:79
int64 file_size
The payload file size.
Definition: fs_pdfdoc.h:210
Signature GetSignature(int index)
Get a signature by index.
bool IsWrapper() const
Check whether current document is a wrapper file or not.
Definition: fs_common.h:1188
Encryption type: customized encryption.
Definition: fs_pdfdoc.h:373
An owner password is used in PDF document.
Definition: fs_pdfdoc.h:353
String GetDocURI()
Get the URI of connected PDF if current PDF is a connected PDF.
PageBasicInfo(const PageBasicInfo &page_info)
Constructor, with another page basic information object.
Definition: fs_pdfdoc.h:244
Modify PDF contents. (Bit 4 in permission value)
Definition: fs_pdfdoc.h:398
bool IsXFA() const
Check whether current PDF document is an XFA document.
common::Rotation rotation
Page rotation. Please refer to values starting from common::e_Rotation0 and this should be one of the...
Definition: fs_pdfdoc.h:285
WrapperType GetWrapperType() const
Get Wrapper type.
CustomEncryptData GetCustomEncryptData() const
Get encrypt data of custom encryption.
CertificateEncryptData GetCertificateEncryptData() const
Get encrypt data of certificate encryption.
float width
Page width.
Definition: fs_pdfdoc.h:278
PayLoadData(const PayLoadData &payload_data)
Constructor, with another payload data object.
Definition: fs_pdfdoc.h:163
objects::PDFDictionary * GetPagesDict() const
Get the dictionary of "Pages".
WIDE STRING CLASS.
Definition: fx_string.h:1470
Header file for bookmark related definitions and classes.
Definition: fs_common.h:1033
Normal document.
Definition: fs_pdfdoc.h:535
DRMEncryptData GetDRMEncryptData() const
Get encrypt data of Foxit DRM encryption.
bool IsEmpty() const
Check whether current object is empty or not.
PayLoadData GetPayLoadData()
Get payload data if current document's wrapper type is PDFDoc::e_WrapperPDFV2.
Bookmark GetRootBookmark()
Get bookmark root node.
Header file for reading bookmark related definitions and classes.
void DeleteIndirectObject(uint32 object_number)
Delete an indirect object by indirect object number.
Foxit wrapper document.
Definition: fs_pdfdoc.h:537
FX_UINT32 uint32
32-bit unsigned integer.
Definition: fs_basictypes.h:198
Save document by using XRef stream.
Definition: fs_pdfdoc.h:463
Print PDF document with normal mode. (Bit 3 in permission value)
Definition: fs_pdfdoc.h:391
The password is invalid.
Definition: fs_pdfdoc.h:347
Extract PDF contents. (Bit 5 in permission value)
Definition: fs_pdfdoc.h:404
ErrorCode Load(const String &password="")
Load current document content by using a specified password.
No password is used in PDF document.
Definition: fs_pdfdoc.h:349
FX_UINT64 uint64
Unsigned 64-bit integer.
Definition: fs_basictypes.h:194
Definition: fs_basictypes.h:342
Page size: letter.
Definition: fs_pdfpage.h:387
Disabilities support. (Bit 10 in permission value)
Definition: fs_pdfdoc.h:422
Save document as a linearized file.
Definition: fs_pdfdoc.h:469
PasswordType
Enumeration for the type of current used password in a PDF document.
Definition: fs_pdfdoc.h:345
common::Progressive StartSaveAsPayloadFile(const wchar_t *file_path, const wchar_t *payload_file_path, const wchar_t *crypto_filter, const wchar_t *description, float version, uint32 save_flags=PDFDoc::e_SaveFlagNormal, common::PauseCallback *pause=0)
Start to save current PDF document as a wrapper document with a payload document (defined in PDF 2....

Foxit Software Corporation Logo
@2019 Foxit Software Incorporated. All rights reserved.