An abstract class which represents signature object in the pdf document. Signatures are fields with values of signature objects, the last contain data which is used to verify the document validity. More...

Inherits System::Object.

Inherited by Aspose::Pdf::Forms::ExternalSignature, Aspose::Pdf::Forms::PKCS1, Aspose::Pdf::Forms::PKCS7, and Aspose::Pdf::Forms::PKCS7Detached.

Public Member Functions

System::SharedPtr< SignatureCustomAppearanceget_CustomAppearance ()
 Gets/sets the custom appearance. More...
 
void set_CustomAppearance (System::SharedPtr< SignatureCustomAppearance > value)
 Gets/sets the custom appearance. More...
 
System::String get_Authority ()
 The name of the person or authority signing the document. More...
 
void set_Authority (System::String value)
 The name of the person or authority signing the document. More...
 
System::DateTime get_Date ()
 The time of signing. More...
 
void set_Date (System::DateTime value)
 The time of signing. More...
 
System::String get_Location ()
 The CPU host name or physical location of the signing. More...
 
void set_Location (System::String value)
 The CPU host name or physical location of the signing. More...
 
System::String get_Reason ()
 The reason for the signing, such as (I agree…). More...
 
void set_Reason (System::String value)
 The reason for the signing, such as (I agree…). More...
 
System::String get_ContactInfo ()
 Information provided by the signer to enable a recipient to contact the signer to verify the signature, e.g. a phone number. More...
 
void set_ContactInfo (System::String value)
 Information provided by the signer to enable a recipient to contact the signer to verify the signature, e.g. a phone number. More...
 
System::ArrayPtr< int32_t > get_ByteRange ()
 An array of pairs of integers (starting byte offset, length in bytes) that shall describe the exact byte range for the digest calculation. More...
 
System::SharedPtr< Aspose::Pdf::TimestampSettingsget_TimestampSettings ()
 Gets/sets timestamp settings. More...
 
void set_TimestampSettings (System::SharedPtr< Aspose::Pdf::TimestampSettings > value)
 Gets/sets timestamp settings. More...
 
bool get_ShowProperties ()
 Force to show/hide signature properties.

In case ShowProperties is true signature field has predefined format of appearance (strings to represent):

Digitally signed by {certificate subject} Date: {signature.Date} Reason: {signature.Reason}

Location: {signature.Location}

where {X} is placeholder for X value. Also signature can have image, in this case listed strings are placed over image. ShowProperties is true by default. More...
 
void set_ShowProperties (bool value)
 Force to show/hide signature properties.

In case ShowProperties is true signature field has predefined format of appearance (strings to represent):

Digitally signed by {certificate subject} Date: {signature.Date} Reason: {signature.Reason}

Location: {signature.Location}

where {X} is placeholder for X value. Also signature can have image, in this case listed strings are placed over image. ShowProperties is true by default. More...
 
bool Verify ()
 Verify the document regarding this signature and return true if document is valid or otherwise false. More...
 
 Signature ()
 Inititalizes new instance of the Signature class. More...
 
 Signature (System::String pfx, System::String password)
 Inititalizes new instance of the Signature class. More...
 
 Signature (System::SharedPtr< System::IO::Stream > pfx, System::String password)
 Inititalizes new instance of the Signature class. More...
 
virtual ~Signature ()
 
- Public Member Functions inherited from System::Object
ASPOSECPP_SHARED_API Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ASPOSECPP_SHARED_API ~Object ()
 Destroys object. Frees all internal data structures. More...
 
ASPOSECPP_SHARED_API Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared refernce counter. More...
 
ASPOSECPP_SHARED_API void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
ASPOSECPP_SHARED_API void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual ASPOSECPP_SHARED_API bool Equals (ptr obj)
 Compares objects using C# Object.Equals semantics. More...
 
virtual ASPOSECPP_SHARED_API int GetHashCode () const
 Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
 
virtual ASPOSECPP_SHARED_API String ToString () ASPOSE_CONST
 Analog of C# Object.ToString() method. Enables converting custom objects to string. More...
 
virtual ASPOSECPP_SHARED_API ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual ASPOSECPP_SHARED_API const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual ASPOSECPP_SHARED_API bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual ASPOSECPP_SHARED_API void SetTemplateWeakPtr (unsigned int argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 
template<>
bool Equals (double const &objA, double const &objB)
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 

Protected Member Functions

System::SharedPtr< Aspose::Pdf::OcspSettings > get_OcspSettings ()
 
void set_OcspSettings (System::SharedPtr< Aspose::Pdf::OcspSettings > value)
 
System::SharedPtr< System::IO::Streamget_Image ()
 Gets image stream. More...
 
void set_Image (System::SharedPtr< System::IO::Stream > value)
 Gets image stream. More...
 
System::SharedPtr< System::IO::Streamget_Pfx ()
 Gets the pfx container value. More...
 
System::SharedPtr< Aspose::Pdf::Engine::Security::ISignature > get_Value ()
 Gets the signature value. More...
 
System::SharedPtr< Aspose::Pdf::Engine::Data::IPdfArray > get_Reference ()
 
void set_Reference (System::SharedPtr< Aspose::Pdf::Engine::Data::IPdfArray > value)
 
System::String get_Password ()
 
void set_Password (System::String value)
 
System::SharedPtr< System::Collections::Generic::IList< System::SharedPtr< Aspose::Pdf::Engine::Security::Impl::Signatures::SignatureReference > > > get_SignatureReferences ()
 
void set_SignatureReferences (System::SharedPtr< System::Collections::Generic::IList< System::SharedPtr< Aspose::Pdf::Engine::Security::Impl::Signatures::SignatureReference >>> value)
 
System::SharedPtr< Aspose::Pdf::Engine::Security::Impl::Signatures::FieldLockDictionary > get_FieldsLock ()
 
void set_FieldsLock (System::SharedPtr< Aspose::Pdf::Engine::Security::Impl::Signatures::FieldLockDictionary > value)
 
void Sign (System::String sigName, System::SharedPtr< System::IO::Stream > pfx, System::String pass)
 Sign the document using data in this sugnature object. More...
 
void Clear ()
 Removes signature value, but keeps the field from document. More...
 
 Signature (System::SharedPtr< System::IO::Stream > image)
 Initializes signature object with image. More...
 
 Signature (System::SharedPtr< Aspose::Pdf::Engine::Data::IPdfDictionary > signature, System::SharedPtr< Aspose::Pdf::Engine::IPdfDocument > document)
 Initialize signature object from signature dictionary. Then this object will be used for verifying the document. More...
 

Protected Attributes

System::SharedPtr< System::IO::Stream_pfx
 
System::String _password
 
System::SharedPtr< System::IO::Stream_image
 
System::SharedPtr< Aspose::Pdf::Engine::IPdfDocument > _document
 
System::SharedPtr< Aspose::Pdf::Engine::Security::ISignature > _signature
 
System::String _name
 
System::ArrayPtr< int32_t > _byteRange
 

Additional Inherited Members

- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 
typedef System::Details::SharedMembersType shared_members_type
 structure to keep list of shared pointers contained in object. More...
 
- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Impleemnts C# typeof(System.Object) construct. More...
 

Detailed Description

An abstract class which represents signature object in the pdf document. Signatures are fields with values of signature objects, the last contain data which is used to verify the document validity.

Constructor & Destructor Documentation

◆ Signature() [1/5]

Aspose::Pdf::Forms::Signature::Signature ( )

Inititalizes new instance of the Signature class.

◆ Signature() [2/5]

Aspose::Pdf::Forms::Signature::Signature ( System::String  pfx,
System::String  password 
)

Inititalizes new instance of the Signature class.

Parameters
pfxPfx file which contains certificate for signing.
passwordPassword to get access to the private key in the certificate.

◆ Signature() [3/5]

Aspose::Pdf::Forms::Signature::Signature ( System::SharedPtr< System::IO::Stream pfx,
System::String  password 
)

Inititalizes new instance of the Signature class.

Parameters
pfxStream with certificate data organized as pfx.
passwordPassword to get access to the private key in the certificate.

◆ ~Signature()

virtual Aspose::Pdf::Forms::Signature::~Signature ( )
virtual

◆ Signature() [4/5]

Aspose::Pdf::Forms::Signature::Signature ( System::SharedPtr< System::IO::Stream image)
protected

Initializes signature object with image.

Parameters
imageImage data.

◆ Signature() [5/5]

Aspose::Pdf::Forms::Signature::Signature ( System::SharedPtr< Aspose::Pdf::Engine::Data::IPdfDictionary >  signature,
System::SharedPtr< Aspose::Pdf::Engine::IPdfDocument >  document 
)
protected

Initialize signature object from signature dictionary. Then this object will be used for verifying the document.

Parameters
signatureSignature dictionary.
documentThe document, it is used then to get file data in order to verify signature.

Member Function Documentation

◆ Clear()

void Aspose::Pdf::Forms::Signature::Clear ( )
protected

Removes signature value, but keeps the field from document.

◆ get_Authority()

System::String Aspose::Pdf::Forms::Signature::get_Authority ( )

The name of the person or authority signing the document.

◆ get_ByteRange()

System::ArrayPtr<int32_t> Aspose::Pdf::Forms::Signature::get_ByteRange ( )

An array of pairs of integers (starting byte offset, length in bytes) that shall describe the exact byte range for the digest calculation.

◆ get_ContactInfo()

System::String Aspose::Pdf::Forms::Signature::get_ContactInfo ( )

Information provided by the signer to enable a recipient to contact the signer to verify the signature, e.g. a phone number.

◆ get_CustomAppearance()

System::SharedPtr<SignatureCustomAppearance> Aspose::Pdf::Forms::Signature::get_CustomAppearance ( )

Gets/sets the custom appearance.

◆ get_Date()

System::DateTime Aspose::Pdf::Forms::Signature::get_Date ( )

The time of signing.

◆ get_FieldsLock()

System::SharedPtr<Aspose::Pdf::Engine::Security::Impl::Signatures::FieldLockDictionary> Aspose::Pdf::Forms::Signature::get_FieldsLock ( )
protected

◆ get_Image()

System::SharedPtr<System::IO::Stream> Aspose::Pdf::Forms::Signature::get_Image ( )
protected

Gets image stream.

◆ get_Location()

System::String Aspose::Pdf::Forms::Signature::get_Location ( )

The CPU host name or physical location of the signing.

◆ get_OcspSettings()

System::SharedPtr<Aspose::Pdf::OcspSettings> Aspose::Pdf::Forms::Signature::get_OcspSettings ( )
protected

◆ get_Password()

System::String Aspose::Pdf::Forms::Signature::get_Password ( )
protected

◆ get_Pfx()

System::SharedPtr<System::IO::Stream> Aspose::Pdf::Forms::Signature::get_Pfx ( )
protected

Gets the pfx container value.

◆ get_Reason()

System::String Aspose::Pdf::Forms::Signature::get_Reason ( )

The reason for the signing, such as (I agree…).

◆ get_Reference()

System::SharedPtr<Aspose::Pdf::Engine::Data::IPdfArray> Aspose::Pdf::Forms::Signature::get_Reference ( )
protected

◆ get_ShowProperties()

bool Aspose::Pdf::Forms::Signature::get_ShowProperties ( )

Force to show/hide signature properties.

In case ShowProperties is true signature field has predefined format of appearance (strings to represent):

Digitally signed by {certificate subject} Date: {signature.Date} Reason: {signature.Reason}

Location: {signature.Location}

where {X} is placeholder for X value. Also signature can have image, in this case listed strings are placed over image. ShowProperties is true by default.

◆ get_SignatureReferences()

System::SharedPtr<System::Collections::Generic::IList<System::SharedPtr<Aspose::Pdf::Engine::Security::Impl::Signatures::SignatureReference> > > Aspose::Pdf::Forms::Signature::get_SignatureReferences ( )
protected

◆ get_TimestampSettings()

System::SharedPtr<Aspose::Pdf::TimestampSettings> Aspose::Pdf::Forms::Signature::get_TimestampSettings ( )

Gets/sets timestamp settings.

◆ get_Value()

System::SharedPtr<Aspose::Pdf::Engine::Security::ISignature> Aspose::Pdf::Forms::Signature::get_Value ( )
protected

Gets the signature value.

◆ set_Authority()

void Aspose::Pdf::Forms::Signature::set_Authority ( System::String  value)

The name of the person or authority signing the document.

◆ set_ContactInfo()

void Aspose::Pdf::Forms::Signature::set_ContactInfo ( System::String  value)

Information provided by the signer to enable a recipient to contact the signer to verify the signature, e.g. a phone number.

◆ set_CustomAppearance()

void Aspose::Pdf::Forms::Signature::set_CustomAppearance ( System::SharedPtr< SignatureCustomAppearance value)

Gets/sets the custom appearance.

◆ set_Date()

void Aspose::Pdf::Forms::Signature::set_Date ( System::DateTime  value)

The time of signing.

◆ set_FieldsLock()

void Aspose::Pdf::Forms::Signature::set_FieldsLock ( System::SharedPtr< Aspose::Pdf::Engine::Security::Impl::Signatures::FieldLockDictionary >  value)
protected

◆ set_Image()

void Aspose::Pdf::Forms::Signature::set_Image ( System::SharedPtr< System::IO::Stream value)
protected

Gets image stream.

◆ set_Location()

void Aspose::Pdf::Forms::Signature::set_Location ( System::String  value)

The CPU host name or physical location of the signing.

◆ set_OcspSettings()

void Aspose::Pdf::Forms::Signature::set_OcspSettings ( System::SharedPtr< Aspose::Pdf::OcspSettings >  value)
protected

◆ set_Password()

void Aspose::Pdf::Forms::Signature::set_Password ( System::String  value)
protected

◆ set_Reason()

void Aspose::Pdf::Forms::Signature::set_Reason ( System::String  value)

The reason for the signing, such as (I agree…).

◆ set_Reference()

void Aspose::Pdf::Forms::Signature::set_Reference ( System::SharedPtr< Aspose::Pdf::Engine::Data::IPdfArray >  value)
protected

◆ set_ShowProperties()

void Aspose::Pdf::Forms::Signature::set_ShowProperties ( bool  value)

Force to show/hide signature properties.

In case ShowProperties is true signature field has predefined format of appearance (strings to represent):

Digitally signed by {certificate subject} Date: {signature.Date} Reason: {signature.Reason}

Location: {signature.Location}

where {X} is placeholder for X value. Also signature can have image, in this case listed strings are placed over image. ShowProperties is true by default.

◆ set_SignatureReferences()

void Aspose::Pdf::Forms::Signature::set_SignatureReferences ( System::SharedPtr< System::Collections::Generic::IList< System::SharedPtr< Aspose::Pdf::Engine::Security::Impl::Signatures::SignatureReference >>>  value)
protected

◆ set_TimestampSettings()

void Aspose::Pdf::Forms::Signature::set_TimestampSettings ( System::SharedPtr< Aspose::Pdf::TimestampSettings value)

Gets/sets timestamp settings.

◆ Sign()

void Aspose::Pdf::Forms::Signature::Sign ( System::String  sigName,
System::SharedPtr< System::IO::Stream pfx,
System::String  pass 
)
protected

Sign the document using data in this sugnature object.

Parameters
sigNameRepresents the name of the signature field which will contain this signature object.
pfxStream with certificate data organized as pfx.
passPassword to get access to the private key in the certificate.

◆ Verify()

bool Aspose::Pdf::Forms::Signature::Verify ( )

Verify the document regarding this signature and return true if document is valid or otherwise false.

Returns
true if document is valid.

Member Data Documentation

◆ _byteRange

System::ArrayPtr<int32_t> Aspose::Pdf::Forms::Signature::_byteRange
protected

◆ _document

System::SharedPtr<Aspose::Pdf::Engine::IPdfDocument> Aspose::Pdf::Forms::Signature::_document
protected

◆ _image

System::SharedPtr<System::IO::Stream> Aspose::Pdf::Forms::Signature::_image
protected

◆ _name

System::String Aspose::Pdf::Forms::Signature::_name
protected

◆ _password

System::String Aspose::Pdf::Forms::Signature::_password
protected

◆ _pfx

System::SharedPtr<System::IO::Stream> Aspose::Pdf::Forms::Signature::_pfx
protected

◆ _signature

System::SharedPtr<Aspose::Pdf::Engine::Security::ISignature> Aspose::Pdf::Forms::Signature::_signature
protected