Foxit PDF SDK
fs_ofdenvelope.h
1 #ifndef FS_OFD_Envelope_H_
2 #define FS_OFD_Envelope_H_
3 
4 #include "common/fs_common.h"
5 
11 namespace foxit {
15 namespace ofd {
17 class OFDEnvelopeInfo FS_FINAL : public Base {
18  public:
24  typedef enum _EnvelopeEncryptType {
36 
37 
42 
45 
51  OFDEnvelopeInfo(const OFDEnvelopeInfo& other);
52 
61 
69  bool operator == (const OFDEnvelopeInfo& other) const;
70 
78  bool operator != (const OFDEnvelopeInfo& other) const;
79 
87  bool IsEmpty() const;
88 
94  WString GetTitle() const;
95 
101  WString GetDocType() const;
102 
108  WString GetDescription() const;
109 
115  WString GetCreator() const;
116 
123 
130 
137 
143  WString GetPassword() const;
144 
150  WString GetPermission() const;
151 
157  WString GetFileCode() const;
158 
164  WString GetHashKey() const;
165 
171  WString GetFilter() const;
172 
178  WString GetSubFilter() const;
179 
187 
193  WString GetSecurityType() const;
194 
200  WString GetCryptoType() const;
201 
209  void SetTitle(const WString& title);
210 
218  void SetDocType(const WString& doc_type);
219 
227  void SetDescription(const WString& description);
228 
236  void SetCreator(const WString& creator);
237 
245  void SetCreateTime(const foxit::DateTime& create_time);
246 
254  void SetStartTime(const foxit::DateTime& start_time);
255 
263  void SetExpirationTime(const foxit::DateTime& expiration_time);
264 
272  void SetPassword(const WString& password);
273 
281  void SetPermission(const WString& permission);
282 
290  void SetFileCode(const WString& file_code);
291 
300  void SetCipher(EnvelopeEncryptType cipher);
301 
302  explicit OFDEnvelopeInfo(FS_HANDLE handle);
303 };
304 
306 class OFDEnvelope FS_FINAL : public CFX_Object {
307  public:
315  static OFDEnvelopeInfo GetEnvelopeInfo(const WString& input_envelope_file);
316 
325  static bool VerifyPassword(const String& password, const OFDEnvelopeInfo& info);
326 
336  static bool Encrypt(const OFDEnvelopeInfo& info, const WString& input_ofd_file, const WString& output_envelope_file);
337 
348  static bool Decrypt(const String& password, const WString& input_envelope_file, const WString& output_ofd_file);
349 };
350 
351 } // namespace ofd
352 } // namespace foxit
353 
354 #endif // FS_OFD_Envelope_H_
WString GetDescription() const
获取文件描述。
void SetCipher(EnvelopeEncryptType cipher)
设置加密类型。
WString GetCryptoType() const
获取加密类型。
WString GetCreator() const
获取创建人。
WString GetSubFilter() const
获取加密子标志位。
foxit::DateTime GetExpirationTime() const
获取有效期限结束时间。
void SetDescription(const WString &description)
设置文件描述。
WString GetPassword() const
获取密码。
void SetTitle(const WString &title)
设置文件名称。
static bool Decrypt(const String &password, const WString &input_envelope_file, const WString &output_ofd_file)
信封文件解密。
加密类型:AES192。
Definition: fs_ofdenvelope.h:30
WString GetTitle() const
获取标题。
bool operator !=(const OFDEnvelopeInfo &other) const
不相等操作符。
WString GetFilter() const
获取密码机密和证书加密标志位。
WString GetFileCode() const
获取文件代码。
Definition: fs_basictypes.h:498
void SetPermission(const WString &permission)
设置用户权限。
宽字符串类
Definition: fx_string.h:1457
void SetStartTime(const foxit::DateTime &start_time)
设置有效期限开始时间。
bool operator==(const OFDEnvelopeInfo &other) const
相等操作符。
OFDEnvelopeInfo & operator=(const OFDEnvelopeInfo &other)
赋值操作符。
void SetExpirationTime(const foxit::DateTime &expiration_time)
设置有效期限结束时间。
WString GetDocType() const
获取文件类型。
void SetPassword(const WString &password)
设置密码。
加密类型:RC4。
Definition: fs_ofdenvelope.h:26
Definition: fs_ofdenvelope.h:306
static OFDEnvelopeInfo GetEnvelopeInfo(const WString &input_envelope_file)
获取信封文件信息。
WString GetPermission() const
获取用户权限。
foxit::DateTime GetStartTime() const
获取有效期限开始时间。
WString GetHashKey() const
获取密码哈希值。
~OFDEnvelopeInfo()
析构函数。
OFDEnvelopeInfo()
构造函数。
加密类型:SM4。
Definition: fs_ofdenvelope.h:34
static bool Encrypt(const OFDEnvelopeInfo &info, const WString &input_ofd_file, const WString &output_envelope_file)
信封密码加密。
void SetCreator(const WString &creator)
设置创建人。
void * FS_HANDLE
句柄类型。
Definition: fs_basictypes.h:213
通用定义和类的头文件。
Definition: fs_basictypes.h:465
static bool VerifyPassword(const String &password, const OFDEnvelopeInfo &info)
信封文件密码验证。
加密类型:AES256。
Definition: fs_ofdenvelope.h:32
Foxit命名空间。
Definition: fs_taggedpdf.h:27
bool IsEmpty() const
检查当前对象是否为空。
void SetDocType(const WString &doc_type)
设置文件类型。
字节字符串类
Definition: fx_string.h:317
Definition: fs_ofdenvelope.h:17
EnvelopeEncryptType
OFD信封加密类型定义枚举类型。
Definition: fs_ofdenvelope.h:24
加密类型:AES128。
Definition: fs_ofdenvelope.h:28
WString GetSecurityType() const
获取安全类型。
foxit::DateTime GetCreateTime() const
获取创建时间。
void SetCreateTime(const foxit::DateTime &create_time)
设置创建时间。
void SetFileCode(const WString &file_code)
设置文件代码。
EnvelopeEncryptType GetCipher() const
获取加密类型。