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 
170 
177 
188  bool Embed(const wchar_t* file_path);
202  bool Embed(foxit::pdf::objects::PDFObject* pdf_object);
203 
216 
223  bool IsEmbedded() const;
224 
230  String GetDescription() const;
231 
239  void SetDescription(const String& description);
240 
260  void SetCreationDateTime(const DateTime& date_time);
280  void SetModifiedDateTime(const DateTime& date_time);
293  String GetChecksum() const;
306  void SetChecksum(const String& checksum);
307 
317  String GetSubtype() const;
318 
330  void SetSubtype(const String& subtype = "application/octet-stream");
331 
338 
346  bool ExportToFile(const wchar_t* path) const;
347 
356 
357  // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
358  explicit FileSpec(FS_HANDLE handle = NULL);
359 };
360 } // namespace pdf
361 } // namespace foxit
362 #endif // FS_FILESPEC_H_
363 
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:440
Header file for file operation related definitions and functions.
File reading interface.
Definition: fx_stream.h:566
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:508
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 (uncompressed file size).
String GetChecksum() const
Get the checksum for embedded file.
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:669
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:190
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:214
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.
bool operator !=(const FileSpec &other) const
Not equal operator.
Header file for PDF object related definitions and classes.
Definition: fs_basictypes.h:407
Definition: fs_filespec.h:38
String GetDescription() const
Get the descriptive text associated with current file specification.
Definition: fs_pdfobject.h:800
Foxit namespace.
Definition: fs_taggedpdf.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:780
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.
int64 GetCompressedEmbeddedFileSize() const
Get the compressed file size of embedded file.
FileSpec & operator=(const FileSpec &other)
Assign operator.