Foxit PDF SDK
fs_signature.h
Go to the documentation of this file.
1 
15 #ifndef FS_SIGNATURE_H_
16 #define FS_SIGNATURE_H_
17 
18 #include "common/fs_common.h"
19 #include "common/file/fs_file.h"
20 #include "common/fs_image.h"
22 
28 namespace foxit {
32 namespace pdf {
33 class Signature;
35 FSDK_DEFINE_ARRAY(SignatureArray, Signature)
36 
37 
97 class Signature : public interform::Field {
98  public:
115  typedef enum _States {
117  e_StateUnknown = 0x80000000,
119  e_StateNoSignData = 0x00000200,
121  e_StateUnsigned = 0x00000001,
123  e_StateSigned = 0x00000002,
125  e_StateVerifyValid = 0x00000004,
127  e_StateVerifyInvalid = 0x00000008,
129  e_StateVerifyErrorData = 0x00000010,
131  e_StateVerifyNoSupportWay = 0x00000020,
133  e_StateVerifyErrorByteRange = 0x00000040,
135  e_StateVerifyChange = 0x00000080,
137  e_StateVerifyIncredible = 0x00000100,
139  e_StateVerifyNoChange = 0x00000400,
141  e_StateVerifyIssueValid = 0x00001000,
143  e_StateVerifyIssueUnknown = 0x00002000,
145  e_StateVerifyIssueRevoke = 0x00004000,
147  e_StateVerifyIssueExpire = 0x00008000,
149  e_StateVerifyIssueUncheck = 0x00010000,
151  e_StateVerifyIssueCurrent = 0x00020000,
153  e_StateVerifyTimestampNone = 0x00040000,
155  e_StateVerifyTimestampDoc = 0x00080000,
157  e_StateVerifyTimestampValid = 0x00100000,
159  e_StateVerifyTimestampInvalid = 0x00200000,
161  e_StateVerifyTimestampExpire = 0x00400000,
163  e_StateVerifyTimestampIssueUnknown = 0x00800000,
165  e_StateVerifyTimestampIssueValid = 0x01000000,
167  e_StateVerifyTimestampTimeBefore = 0x02000000,
169  e_StateCertCannotGetVRI = 0x04000000,
171  e_StateVerifyChangeLegal = 0x08000000,
173  e_StateVerifyChangeIllegal = 0x10000000
174  } States;
175 
181  typedef enum _APFlags {
183  e_APFlagFoxitFlag = 0x0001,
185  e_APFlagLabel = 0x0002,
187  e_APFlagReason = 0x0004,
189  e_APFlagSigningTime = 0x0008,
191  e_APFlagDN = 0x0010,
193  e_APFlagLocation = 0x0020,
195  e_APFlagSigner = 0x0040,
197  e_APFlagBitmap = 0x0080,
199  e_APFlagText = 0x0100
200  } APFlags;
201 
207  typedef enum _KeyName {
209  e_KeyNameSigner = 0,
211  e_KeyNameLocation = 1,
213  e_KeyNameReason = 2,
215  e_KeyNameContactInfo = 3,
217  e_KeyNameDN = 4,
219  e_KeyNameText = 5
220  } KeyName;
221 
227  typedef enum _DigestAlgorithm {
229  e_DigestSHA1 = 0,
231  e_DigestSHA256 = 1,
233  e_DigestSHA384 = 2,
235  e_DigestSHA512 = 3
236  } DigestAlgorithm;
237 
243  typedef enum _SignatureType {
245  e_SignatureTypeOrdinary = 0,
247  e_SignatureTypeTimeStamp = 3,
249  e_SignatureTypePagingSeal = 4
250  } SignatureType;
251 
257  typedef enum _PAdESLevel {
259  e_PAdESLevelNotPAdES = 0,
261  e_PAdESLevelNone = 1,
263  e_PAdESLevelBB = 2,
265  e_PAdESLevelBT = 3,
267  e_PAdESLevelBLT = 4,
269  e_PAdESLevelBLTA = 5
270  } PAdESLevel;
271 
277  typedef enum _DocPermission {
279  e_DocPermUnrestricted = 0,
284  e_DocPermNoChangesAllowed = 1,
289  e_DocPermFillingFormAndSigning = 2,
294  e_DocPermFillingFormSigningAndAnnotating = 3
295  } DocPermission;
296 
302  typedef enum _FieldMDPAction {
304  e_FieldMDPActionNone = 0,
308  e_FieldMDPActionAll = 1,
314  e_FieldMDPActionInclude = 2,
320  e_FieldMDPActionExclude = 3
321  } FieldMDPAction;
322 
328  typedef enum _LabelName {
334  e_LabelNameSigner = 0,
340  e_LabelNameLocation = 1,
346  e_LabelNameReason = 2,
352  e_LabelNameSignTime = 3,
358  e_LabelNameDN = 4
359  } LabelName;
360 
361 
367  explicit Signature(const interform::Field& field);
368 
376  Signature(const foxit::pdf::PDFDoc& document, foxit::pdf::objects::PDFDictionary* sig_field_dict);
377 
380 
388  bool IsEmpty() const;
389 
395  bool IsSigned();
396 
415  void SetDocPermission(DocPermission permission);
416 
429  DocPermission GetDocPermission();
430 
454  void SetFieldMDPActionFields(const FieldMDPAction& action, const WStringArray& field_array);
455 
462  FieldMDPAction GetFieldMDPAction();
463 
479  WStringArray GetFieldMDPActionFields();
480 
537  common::Progressive StartSign(const wchar_t* cert_path, const WString& cert_password,
538  DigestAlgorithm digest_algorithm, const char* save_path,
539  const void* client_data = NULL, common::PauseCallback* pause = NULL);
540 
596  common::Progressive StartSign(foxit::common::file::StreamCallback* cert_file_stream, const WString& cert_password,
597  DigestAlgorithm digest_algorithm, const char* save_path,
598  const void* client_data = NULL, common::PauseCallback* pause = NULL);
599 
654  common::Progressive StartSign(const wchar_t* cert_path, const WString& cert_password,
655  DigestAlgorithm digest_algorithm, const wchar_t* save_path,
656  const void* client_data = NULL, common::PauseCallback* pause = NULL);
657 
711  common::Progressive StartSign(foxit::common::file::StreamCallback* cert_file_stream, const WString& cert_password,
712  DigestAlgorithm digest_algorithm, const wchar_t* save_path,
713  const void* client_data = NULL, common::PauseCallback* pause = NULL);
714 
771  common::Progressive StartSign(const wchar_t* cert_path, const foxit::WString& cert_password,
773  const void* client_data = NULL, foxit::common::PauseCallback* pause = NULL);
774 
830  common::Progressive StartSign(foxit::common::file::StreamCallback* cert_file_stream, const foxit::WString& cert_password,
832  const void* client_data = NULL, foxit::common::PauseCallback* pause = NULL);
833 
865  common::Progressive StartVerify(const void* client_data = NULL, common::PauseCallback* pause = NULL);
866 
886  String GetCertificateInfo(const char* key);
887 
902  bool GetByteRangeArray(uint32 out_byte_range_array[4]);
903 
930  uint32 GetState();
931 
942  bool ClearSignedData();
943 
949  PDFDoc GetDocument();
950 
964  PDFDoc GetSignedVersionDocument(const wchar_t* file_path);
965 
976  uint32 GetAppearanceFlags();
977 
994  void SetAppearanceFlags(uint32 appearance_flags);
995 
1015  void SetAppearanceContent(const String& appearance_content);
1016 
1023  DateTime GetSignTime();
1024 
1035  void SetSignTime(const DateTime& sign_time);
1036 
1045  String GetFilter();
1066  void SetFilter(const char* filter);
1067 
1076  String GetSubFilter();
1097  void SetSubFilter(const char* sub_filter);
1098 
1110  WString GetKeyValue(KeyName key);
1111 
1127  void SetKeyValue(KeyName key, const wchar_t* value);
1128 
1146  void SetKeyLabel(LabelName label_name, const wchar_t* label_value);
1147 
1158  WString GetKeyLabel(LabelName label_name);
1159 
1166  common::Bitmap GetBitmap();
1167 
1180  void SetBitmap(const common::Bitmap& bitmap);
1181 
1198  void SetImage(const common::Image& image, int frame_index);
1199 
1216  void SetImage(const char* file_path, int frame_index);
1217 
1234  void SetImage(const wchar_t* file_path, int frame_index);
1235 
1243  objects::PDFDictionary* GetSignatureDict() const;
1244 
1262  void SetDefaultContentsLength(uint32 default_length);
1263 
1274  int32 GetCertCount() const;
1275 
1290  WString GetCert(int32 index) const;
1291 
1304  void SetCertChain(const WStringArray& cert_chain);
1305 
1312  SignatureType GetSignatureType();
1313 
1319  bool IsTimeStamp();
1320 
1327  PAdESLevel GetPAdESLevel();
1328 
1341  void SetCustomObject(const char* key, objects::PDFObject* pdf_object);
1342 
1352  SignatureArray GetPagingSealGroupElements();
1353 
1354 #ifndef __EMSCRIPTEN_RENDER__
1355  // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
1356  explicit Signature(FS_HANDLE handle = NULL);
1357 #endif
1358 };
1359 
1370  public:
1376  typedef enum _CertValidity {
1393  } CertValidity;
1394 
1395 
1401  virtual void Release() = 0;
1402 
1421  virtual bool StartCalcDigest(const common::file::ReaderCallback* file, const uint32* byte_range_array,
1422  uint32 size_of_array, const Signature& signature, const void* client_data) = 0;
1423 
1442  virtual common::Progressive::State ContinueCalcDigest(const void* client_data,
1443  const common::PauseCallback* pause) = 0;
1444 
1456  virtual String GetDigest(const void* client_data) = 0;
1457 
1479  virtual String Sign(const void* digest, uint32 digest_length, const wchar_t* cert_path,
1480  const WString& cert_password, Signature::DigestAlgorithm digest_algorithm,
1481  void* client_data) = 0;
1482 
1505  virtual String Sign(const void* digest, uint32 digest_length, foxit::common::file::StreamCallback* cert_file_stream,
1506  const WString& cert_password, Signature::DigestAlgorithm digest_algorithm,
1507  void* client_data) = 0;
1508 
1531  virtual uint32 VerifySigState(const void* digest, uint32 digest_length,
1532  const void* signed_data, uint32 signed_data_len,
1533  void* client_data) = 0;
1534 
1542  virtual bool IsNeedPadData() = 0;
1543 
1563  virtual CertValidity CheckCertificateValidity(const wchar_t* cert_path, const WString& cert_password, void* client_data) = 0;
1564 
1565  protected:
1566  ~SignatureCallback() {}
1567 };
1568 
1569 class TimeStampServer;
1570 
1579 class TimeStampServerMgr FS_FINAL : public Object {
1580  public:
1589  static ErrorCode Initialize();
1599  static void Release();
1600 
1606  static int GetServerCount();
1615  static TimeStampServer GetServer(int index);
1623  static int GetServerIndex(const TimeStampServer& server);
1624 
1639  static void SetDefaultServer(int index);
1649  static void SetDefaultServer(const TimeStampServer& server);
1650 
1661  static TimeStampServer AddServer(const WString& server_name, const WString& server_url, const WString& user_name, const WString& password);
1669  static void RemoveServer(int index);
1679  static void RemoveServer(const TimeStampServer& server);
1680 };
1681 
1685 class TimeStampServer FS_FINAL : public Base {
1686  public:
1692  typedef enum _SendRequestResult {
1710 
1711 
1717  TimeStampServer(const TimeStampServer& other);
1718 
1727 
1735  bool operator == (const TimeStampServer& other) const;
1743  bool operator != (const TimeStampServer& other) const;
1744 
1746  ~TimeStampServer();
1747 
1755  bool IsEmpty() const;
1756 
1766 
1775 
1776  // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
1777  explicit TimeStampServer(FS_HANDLE handle = NULL);
1778 };
1779 
1785  public:
1791  virtual void Release() = 0;
1792 
1802 
1808  virtual String GetTimeStampMessage() = 0;
1809 
1810  protected:
1811  virtual ~TimeStampCallback() {}
1812 };
1813 
1818 class PagingSealConfig FS_FINAL : public Object{
1819  public:
1825  typedef enum _PagingSealPosition {
1835 
1836 
1848 
1851 
1859  PagingSealConfig& operator = (const PagingSealConfig& paging_seal_config) {
1860  this->paging_seal_position = paging_seal_config.paging_seal_position;
1861  this->offset = paging_seal_config.offset;
1862  this->first_page_percent = paging_seal_config.first_page_percent;
1863  this->is_on_perforation = paging_seal_config.is_on_perforation;
1864  return *this;
1865  }
1866 
1874  bool operator == (const PagingSealConfig& paging_seal_config) const {
1875  if (this->paging_seal_position == paging_seal_config.paging_seal_position &&
1876  this->offset == paging_seal_config.offset &&
1877  this->first_page_percent == paging_seal_config.first_page_percent &&
1878  this->is_on_perforation == paging_seal_config.is_on_perforation){
1879  return true;
1880  }
1881  return false;
1882  }
1883 
1891  bool operator != (const PagingSealConfig& paging_seal_config) const {
1892  if (this->paging_seal_position != paging_seal_config.paging_seal_position ||
1893  this->offset != paging_seal_config.offset ||
1894  this->first_page_percent != paging_seal_config.first_page_percent ||
1895  this->is_on_perforation != paging_seal_config.is_on_perforation) {
1896  return true;
1897  }
1898  return false;
1899  }
1900 
1914 
1931  float offset;
1943 };
1944 
1953 class PagingSealSignature FS_FINAL : public pdf::Signature {
1954  public:
1960  typedef enum _PagingSealAPState {
1972 
1973 
1976 
1984  void SetPagingSealConfig(PagingSealConfig paging_seal_config);
1985 
1997  void SetAPStateBitmap(PagingSealAPState ap_state, const common::Bitmap& bitmap);
1998 
2007  bool GenerateAppearance();
2008 
2009  // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
2010  explicit PagingSealSignature(FS_HANDLE handle = NULL);
2011 };
2012 
2013 } // namespace pdf
2014 } // namespace foxit
2015 #endif // FS_SIGNATURE_H_
2016 
foxit::pdf::PagingSealSignature::e_PagingSealAPStateUnsigned
Unsigned signature.
Definition: fs_signature.h:1964
foxit::pdf::PagingSealSignature::~PagingSealSignature
~PagingSealSignature()
Destructor.
Definition: fs_signature.h:1975
foxit::FS_HANDLE
void * FS_HANDLE
Handle type.
Definition: fs_basictypes.h:214
foxit::pdf::TimeStampServerMgr::Release
static void Release()
Release time stamp server manager.
foxit::pdf::PagingSealConfig::e_PagingSealPositionRight
Right Paging Seal.
Definition: fs_signature.h:1829
foxit::pdf::TimeStampServer::operator=
TimeStampServer & operator=(const TimeStampServer &other)
Assign operator.
foxit::pdf::SignatureCallback::VerifySigState
virtual uint32 VerifySigState(const void *digest, uint32 digest_length, const void *signed_data, uint32 signed_data_len, void *client_data)=0
A callback function used to verify the integrity of a signature and return the verify state.
foxit::pdf::PagingSealSignature::e_PagingSealAPStateValid
Verification state of a signature is valid.
Definition: fs_signature.h:1968
foxit::DateTime
Definition: fs_basictypes.h:446
foxit::pdf::TimeStampServer::e_SendResultFailToCreateSocket
Fail to create socket during sending request process.
Definition: fs_signature.h:1696
foxit::pdf::PagingSealConfig::operator==
bool operator==(const PagingSealConfig &paging_seal_config) const
Equal operator.
Definition: fs_signature.h:1874
foxit::pdf::SignatureCallback::Sign
virtual String Sign(const void *digest, uint32 digest_length, const wchar_t *cert_path, const WString &cert_password, Signature::DigestAlgorithm digest_algorithm, void *client_data)=0
A callback function used to do signing and return the signed data.
foxit::pdf::TimeStampServer::IsEmpty
bool IsEmpty() const
Check whether current object is empty or not.
foxit::Object
CFX_Object Object
Object type.
Definition: fs_basictypes.h:217
foxit::common::Progressive
Definition: fs_common.h:342
foxit::pdf::TimeStampServer
Definition: fs_signature.h:1685
foxit::pdf::TimeStampServerMgr::Initialize
static ErrorCode Initialize()
Initialize time stamp server manager.
fs_pdfform.h
Header file for PDF form related definitions and classes.
foxit::pdf::SignatureCallback::e_CertInvalidPath
Certificate's path is wrong.
Definition: fs_signature.h:1388
foxit::pdf::TimeStampServerMgr::RemoveServer
static void RemoveServer(int index)
Remove a time stamp server from the manager, by index.
IFX_FileStream
File stream interface, reading & writing.
Definition: fx_stream.h:669
foxit::pdf::TimeStampServer::operator!=
bool operator!=(const TimeStampServer &other) const
Not equal operator.
foxit::pdf::PagingSealSignature::PagingSealAPState
PagingSealAPState
Enumeration for paging seal signature state to set appearance.
Definition: fs_signature.h:1960
foxit::pdf::PagingSealConfig::~PagingSealConfig
~PagingSealConfig()
Destructor.
Definition: fs_signature.h:1850
fs_common.h
Header file for common definitions and classes.
foxit::pdf::Signature::~Signature
~Signature()
Destructor.
Definition: fs_signature.h:379
foxit::pdf::TimeStampCallback::GetTimeStampMessage
virtual String GetTimeStampMessage()=0
A callback function used to get time stamp message.
foxit::pdf::PagingSealConfig::paging_seal_position
PagingSealPosition paging_seal_position
The position of paging seal. Please refer to values starting from PagingSealConfig::e_PagingSealPosit...
Definition: fs_signature.h:1919
foxit::pdf::SignatureCallback::CheckCertificateValidity
virtual CertValidity CheckCertificateValidity(const wchar_t *cert_path, const WString &cert_password, void *client_data)=0
A callback function used to check the validity of a certificate.
foxit::pdf::PagingSealConfig::e_PagingSealPositionTop
Top Paging Seal.
Definition: fs_signature.h:1831
IFX_FileRead
File reading interface.
Definition: fx_stream.h:566
fs_file.h
Header file for file operation related definitions and functions.
foxit::pdf::SignatureCallback::StartCalcDigest
virtual bool StartCalcDigest(const common::file::ReaderCallback *file, const uint32 *byte_range_array, uint32 size_of_array, const Signature &signature, const void *client_data)=0
A callback function used to start a custom digest calculation, mainly to initialize the calculation p...
foxit::ErrorCode
ErrorCode
Enumeration for error code.
Definition: fs_basictypes.h:233
foxit::pdf::SignatureCallback::CertValidity
CertValidity
Enumeration for certificate validity.
Definition: fs_signature.h:1376
foxit::pdf::SignatureCallback::e_CertInvalidPassword
Certificate's password is wrong.
Definition: fs_signature.h:1386
foxit::pdf::objects::PDFObject
Definition: fs_pdfobject.h:55
foxit::pdf::TimeStampServer::e_SendResultFailToGetData
Fail to get data during sending request process.
Definition: fs_signature.h:1706
foxit::pdf::TimeStampServer::e_SendResultFailToReceiveData
Fail to receive data during sending request process.
Definition: fs_signature.h:1702
foxit::pdf::PagingSealConfig::operator=
PagingSealConfig & operator=(const PagingSealConfig &paging_seal_config)
Assign operator.
Definition: fs_signature.h:1859
foxit::pdf::TimeStampServer::SendRequestResult
SendRequestResult
Enumeration for the result of sending time stamp request.
Definition: fs_signature.h:1692
foxit::pdf::TimeStampCallback
Definition: fs_signature.h:1784
foxit::pdf::SignatureCallback::Release
virtual void Release()=0
A callback function used to release current callback object itself.
foxit::pdf::SignatureCallback::e_CertCannotGetPrivateKey
Certificate's private key cannot be gotten.
Definition: fs_signature.h:1392
foxit::pdf::SignatureCallback::ContinueCalcDigest
virtual common::Progressive::State ContinueCalcDigest(const void *client_data, const common::PauseCallback *pause)=0
A callback function used to continue the custom digest calculation process.
foxit::pdf::interform::Field
Definition: fs_pdfform.h:145
CFX_ByteString
BYTE STRING CLASS.
Definition: fx_string.h:317
foxit::pdf::PagingSealConfig::PagingSealPosition
PagingSealPosition
Enumeration for paging seal position.
Definition: fs_signature.h:1825
foxit::pdf::TimeStampServer::e_SendResultFailToConnect
Fail to connect during sending request process.
Definition: fs_signature.h:1698
foxit::pdf::TimeStampServerMgr::SetDefaultServer
static void SetDefaultServer(int index)
Set default time stamp server object by index.
foxit::pdf::Signature
Definition: fs_signature.h:97
foxit::pdf::TimeStampServer::operator==
bool operator==(const TimeStampServer &other) const
Equal operator.
foxit::pdf::SignatureCallback::e_CertDataError
Certificate's data is error.
Definition: fs_signature.h:1384
foxit::pdf::SignatureCallback::e_CertExpired
Certificate is expired.
Definition: fs_signature.h:1380
foxit::pdf::PagingSealSignature::e_PagingSealAPStateUnknown
Unknown signature.
Definition: fs_signature.h:1962
foxit::pdf::TimeStampServerMgr::AddServer
static TimeStampServer AddServer(const WString &server_name, const WString &server_url, const WString &user_name, const WString &password)
Add a time stamp server to the manager.
foxit::pdf::TimeStampServerMgr::GetServerCount
static int GetServerCount()
Get time stamp server count.
foxit
Foxit namespace.
Definition: fs_taggedpdf.h:27
foxit::pdf::TimeStampServer::SendTimeStampRequest
SendRequestResult SendTimeStampRequest(const String &request)
Send time stamp request.
foxit::pdf::PagingSealSignature::GenerateAppearance
bool GenerateAppearance()
Generate the appearance of paging seal signature.
foxit::pdf::PagingSealConfig::offset
float offset
The offset of paging seal signature.
Definition: fs_signature.h:1931
foxit::pdf::TimeStampServer::GetTimeStampMessage
String GetTimeStampMessage()
Get time stamp message.
foxit::pdf::PagingSealConfig::operator!=
bool operator!=(const PagingSealConfig &paging_seal_config) const
Not equal operator.
Definition: fs_signature.h:1891
foxit::pdf::PagingSealSignature::e_PagingSealAPStateSigned
Signed signature.
Definition: fs_signature.h:1966
IFX_Pause
Definition: fx_basic.h:3761
fs_image.h
Header file for image and bitmap related definitions and classes.
foxit::pdf::objects::PDFDictionary
Definition: fs_pdfobject.h:809
foxit::pdf::TimeStampServer::e_SendResultFailToSendData
Fail to send data during sending request process.
Definition: fs_signature.h:1700
foxit::pdf::SignatureCallback::IsNeedPadData
virtual bool IsNeedPadData()=0
A callback function used to check whether to return all contents with padding zero or not,...
foxit::pdf::PagingSealConfig::is_on_perforation
bool is_on_perforation
Decide whether to chop a seal that covering the left or right margin of each two pages....
Definition: fs_signature.h:1942
foxit::pdf::TimeStampCallback::SendTimeStampRequest
virtual TimeStampServer::SendRequestResult SendTimeStampRequest(const String &request)=0
A callback function used to send time stamp request.
foxit::pdf::PagingSealSignature
Definition: fs_signature.h:1953
foxit::pdf::SignatureCallback::e_CertUnsupportType
Certificate is unsupport type.
Definition: fs_signature.h:1382
foxit::pdf::PagingSealSignature::SetAPStateBitmap
void SetAPStateBitmap(PagingSealAPState ap_state, const common::Bitmap &bitmap)
Set a bitmap for the appearance of signature state.
NULL
#define NULL
The null-pointer value.
Definition: fx_system.h:780
foxit::pdf::TimeStampServer::e_SendResultFailToRequest
Fail to request during sending request process.
Definition: fs_signature.h:1704
foxit::pdf::SignatureArray
Definition: fs_signature.h:35
foxit::pdf::PagingSealConfig
Definition: fs_signature.h:1818
foxit::pdf::PDFDoc
Definition: fs_pdfdoc.h:509
foxit::pdf::TimeStampCallback::Release
virtual void Release()=0
A callback function used to release current callback object itself.
foxit::pdf::PagingSealConfig::e_PagingSealPositionBottom
Bottom Paging Seal.
Definition: fs_signature.h:1833
foxit::common::Progressive::State
State
Enumeration for progress state.
Definition: fs_common.h:349
foxit::int32
FX_INT32 int32
32-bit signed integer.
Definition: fs_basictypes.h:194
foxit::pdf::PagingSealConfig::e_PagingSealPositionLeft
Left Paging Seal.
Definition: fs_signature.h:1827
foxit::common::Image
Definition: fs_image.h:445
foxit::pdf::TimeStampServerMgr::GetServerIndex
static int GetServerIndex(const TimeStampServer &server)
Get the index of a speicified time stamp server object.
foxit::pdf::Signature::DigestAlgorithm
DigestAlgorithm
Enumeration for signature digest algorithm.
Definition: fs_signature.h:227
foxit::WStringArray
Definition: fs_basictypes.h:224
foxit::pdf::PagingSealSignature::e_PagingSealAPStateInvalid
Verification state of a signature is invalid.
Definition: fs_signature.h:1970
foxit::pdf::TimeStampServer::e_SendResultOutOfMemory
Out of memory during sending request process.
Definition: fs_signature.h:1708
foxit::pdf::TimeStampServerMgr::GetServer
static TimeStampServer GetServer(int index)
Get time stamp server with specified index.
foxit::pdf::TimeStampServer::~TimeStampServer
~TimeStampServer()
Destructor.
foxit::pdf::TimeStampServer::e_SendResultSuccess
Send request successfully.
Definition: fs_signature.h:1694
foxit::pdf::SignatureCallback
Definition: fs_signature.h:1369
foxit::pdf::TimeStampServerMgr::GetDefaultServer
static TimeStampServer GetDefaultServer()
Get default time stamp server object.
CFX_WideString
WIDE STRING CLASS.
Definition: fx_string.h:1452
foxit::common::Bitmap
Definition: fs_image.h:36
foxit::pdf::TimeStampServerMgr
Definition: fs_signature.h:1579
foxit::pdf::SignatureCallback::GetDigest
virtual String GetDigest(const void *client_data)=0
A callback function used to get the digest after the calculation process is finished.
foxit::pdf::SignatureCallback::e_CertValid
Certificate is valid.
Definition: fs_signature.h:1378
foxit::pdf::PagingSealSignature::SetPagingSealConfig
void SetPagingSealConfig(PagingSealConfig paging_seal_config)
Set the config of paging seal signature.
foxit::pdf::SignatureCallback::e_CertNotSet
Certificate is not set to sign a signature.
Definition: fs_signature.h:1390
foxit::pdf::TimeStampServer::TimeStampServer
TimeStampServer(const TimeStampServer &other)
Constructor, with another time stamp server object.
foxit::pdf::PagingSealConfig::first_page_percent
float first_page_percent
The percent of the first paging seal. The rest percent will be divided equally by the other paging se...
Definition: fs_signature.h:1936
foxit::uint32
FX_UINT32 uint32
32-bit unsigned integer.
Definition: fs_basictypes.h:196
foxit::pdf::PagingSealConfig::PagingSealConfig
PagingSealConfig(PagingSealPosition paging_seal_position, float offset, float first_page_percent, bool is_on_perforation)
Constructor, with parameter.
foxit::Base
Definition: fs_basictypes.h:413
foxit::pdf::PagingSealConfig::Set
void Set(PagingSealPosition paging_seal_position, float offset, float first_page_percent, bool is_on_perforation)
Set value.