Foxit PDF SDK
fs_filespec.h
Go to the documentation of this file.
1 
15 #ifndef FS_FILESPEC_H_
16 #define FS_FILESPEC_H_
17 
18 #include "common/fs_common.h"
19 #include "common/file/fs_file.h"
27 namespace foxit {
31 namespace pdf {
32 class PDFDoc;
38 class FileSpec FS_FINAL : public Base {
39  public:
47  explicit FileSpec(const PDFDoc& document);
48 
62  explicit FileSpec(const PDFDoc& document, objects::PDFObject* pdf_object);
63 
69  FileSpec(const FileSpec& other);
77  FileSpec& operator = (const FileSpec& other);
78 
86  bool operator == (const FileSpec& other) const;
94  bool operator != (const FileSpec& other) const;
95 
97  ~FileSpec();
98 
106  bool IsEmpty() const;
107 
113  WString GetFileName() const;
114 
125  void SetFileName(const wchar_t* file_name);
126 
135 
147  void SetAssociteFileRelationship(AssociatedFiles::Relationship associfile_relationship);
148 
158  int64 GetFileSize() const;
159 
166 
177  bool Embed(const wchar_t* file_path);
191  bool Embed(foxit::pdf::objects::PDFObject* pdf_object);
192 
205 
212  bool IsEmbedded() const;
218  String GetDescription() const;
226  void SetDescription(const String& description);
246  void SetCreationDateTime(const DateTime& date_time);
266  void SetModifiedDateTime(const DateTime& date_time);
279  String GetChecksum() const;
292  void SetChecksum(const String& checksum);
293 
303  String GetSubtype() const;
304 
316  void SetSubtype(const String& subtype = "application/octet-stream");
317 
324 
332  bool ExportToFile(const wchar_t* path) const;
333 
342 
343  // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
344  explicit FileSpec(FS_HANDLE handle = NULL);
345 };
346 } // namespace pdf
347 } // namespace foxit
348 #endif // namespace foxit
349 
DateTime GetModifiedDateTime() const
Get modified date and time about when the embedded file was last modified.
common::file::ReaderCallback * GetFileData() const
Get the file data of embedded file.
void SetAssociteFileRelationship(AssociatedFiles::Relationship associfile_relationship)
(Only supported in PDF 2.0) Set the associated file relationship when current file specification is u...
AssociatedFiles::Relationship GetAssociteFileRelationship() const
(Only supported in PDF 2.0) Get the associated file relationship when current file specification is u...
Relationship
Enumeration for the relationship between PDF document and the associated file.
Definition: fs_pdfassociatefiles.h:60
Definition: fs_basictypes.h:426
Header file for file operation related definitions and functions.
File reading interface.
Definition: fx_stream.h:555
FileSpec(const PDFDoc &document)
Constructor.
WIDE STRING CLASS.
Definition: fx_string.h:1452
String GetSubtype() const
(Only support in PDF 2.0) Get the MIME type value for "Subtype" key for embedded file when current fi...
void SetSubtype(const String &subtype="application/octet-stream")
(Only support in PDF 2.0) Set the MIME type value for "Subtype" key for embedded file (Not affect loc...
Definition: fs_pdfdoc.h:352
bool IsEmpty() const
Check whether current object is empty or not.
objects::PDFDictionary * GetDict() const
Get the PDF dictionary of current file specification.
int64 GetFileSize() const
Get the size of embedded file.
String GetChecksum() const
Get the checksum for embedded file.
bool operator!=(const FileSpec &other) const
Not equal operator.
DateTime GetCreationDateTime() const
Get creation date and time about when the embedded file was created.
WString GetFileName() const
Get the file name.
bool IsEmbedded() const
Check whether current file specification object represents an embedded file or not.
File stream interface, reading & writing.
Definition: fx_stream.h:649
bool Embed(const wchar_t *file_path)
Embed the whole content of a file which is specified by file path.
bool operator==(const FileSpec &other) const
Equal operator.
FX_INT64 int64
Signed 64-bit integer.
Definition: fs_basictypes.h:192
bool ExportToFile(const wchar_t *path) const
Export the file data that represented in current file specification directly into a file.
void * FS_HANDLE
Handle type.
Definition: fs_basictypes.h:216
Header file for common definitions and classes.
void SetModifiedDateTime(const DateTime &date_time)
Set last modified date and time for the embedded file. (Not affect local file)
void SetCreationDateTime(const DateTime &date_time)
Set the creation date and time for the embedded file. (Not affect local file)
void SetDescription(const String &description)
Set the descriptive text associated with current file specification.
Header file for PDF object related definitions and classes.
Definition: fs_basictypes.h:393
Definition: fs_filespec.h:38
String GetDescription() const
Get the descriptive text associated with current file specification.
Definition: fs_pdfobject.h:763
Foxit namespace.
Definition: fs_compare.h:27
Definition: fs_pdfobject.h:55
BYTE STRING CLASS.
Definition: fx_string.h:317
~FileSpec()
Destructor.
#define NULL
The null-pointer value.
Definition: fx_system.h:767
bool ExportToFileStream(foxit::common::file::StreamCallback *stream) const
Export the file data that represented in current file specification through a stream callback object.
Header file for associated file related definitions and classes.
void SetChecksum(const String &checksum)
Set the checksum for embedded file. (Not affect local file)
void SetFileName(const wchar_t *file_name)
Set the file name.
FileSpec & operator=(const FileSpec &other)
Assign operator.