An abstract class for various kinds of stamps which come as descendants. More...

Inherits System::Object.

Inherited by Aspose::Pdf::ImageStamp, Aspose::Pdf::PdfPageStamp, and Aspose::Pdf::TextStamp.

Public Member Functions

bool get_Background () const
 Sets or gets a bool value that indicates the content is stamped as background. If the value is true, the stamp content is layed at the bottom. By defalt, the value is false, the stamp content is layed at the top. More...
 
void set_Background (bool value)
 Sets or gets a bool value that indicates the content is stamped as background. If the value is true, the stamp content is layed at the bottom. By defalt, the value is false, the stamp content is layed at the top. More...
 
double get_Opacity () const
 Gets a value to indicate the stamp opacity. The value is from 0.0 to 1.0. By default the value is 1.0. More...
 
void set_Opacity (double value)
 Sets a value to indicate the stamp opacity. The value is from 0.0 to 1.0. By default the value is 1.0. More...
 
double get_OutlineOpacity () const
 Gets a value to indicate the stamp outline opacity. The value is from 0.0 to 1.0. By default the value is 1.0. More...
 
void set_OutlineOpacity (double value)
 Sets a value to indicate the stamp outline opacity. The value is from 0.0 to 1.0. By default the value is 1.0. More...
 
double get_OutlineWidth () const
 Gets a value of the stamp outline width. By default the value is 1.0. More...
 
void set_OutlineWidth (double value)
 Sets a value of the stamp outline width. By default the value is 1.0. More...
 
Rotation get_Rotate ()
 Sets or gets the rotation of stamp content according Rotation values. Note. This property is for set angles which are multiples of 90 degrees (0, 90, 180, 270 degrees). To set arbitrary angle use RotateAngle property. If angle set by ArbitraryAngle is not multiple of 90 then Rotate property returns Rotation.None. More...
 
void set_Rotate (Rotation value)
 Sets or gets the rotation of stamp content according Rotation values. Note. This property is for set angles which are multiples of 90 degrees (0, 90, 180, 270 degrees). To set arbitrary angle use RotateAngle property. If angle set by ArbitraryAngle is not multiple of 90 then Rotate property returns Rotation.None. More...
 
double get_XIndent () const
 Horizontal stamp coordinate, starting from the left. More...
 
void set_XIndent (double value)
 Horizontal stamp coordinate, starting from the left. More...
 
double get_YIndent () const
 Vertical stamp coordinate, starting from the bottom. More...
 
void set_YIndent (double value)
 Vertical stamp coordinate, starting from the bottom. More...
 
Aspose::Pdf::HorizontalAlignment get_HorizontalAlignment () const
 Gets Horizontal alignment of stamp on the page. More...
 
void set_HorizontalAlignment (Aspose::Pdf::HorizontalAlignment value)
 Sets Horizontal alignment of stamp on the page. More...
 
Aspose::Pdf::VerticalAlignment get_VerticalAlignment () const
 Gets vertical alignment of stamp on page. More...
 
void set_VerticalAlignment (Aspose::Pdf::VerticalAlignment value)
 Sets vertical alignment of stamp on page. More...
 
double get_LeftMargin () const
 Gets left margin of stamp. More...
 
void set_LeftMargin (double value)
 Sets left margin of stamp. More...
 
double get_RightMargin () const
 Gets right margin of stamp. More...
 
void set_RightMargin (double value)
 Sets right margin of stamp. More...
 
double get_BottomMargin () const
 Gets bottom margin of stamp. More...
 
void set_BottomMargin (double value)
 Sets bottom margin of stamp. More...
 
double get_TopMargin () const
 Gets top margin of stamp. More...
 
void set_TopMargin (double value)
 Sets top margin of stamp. More...
 
double get_ZoomX () const
 Horizontal zooming factor of the stamp. Allows to scale stamp horizontally. More...
 
void set_ZoomX (double value)
 Horizontal zooming factor of the stamp. Allows to scale stamp horizontally. More...
 
virtual double get_Width ()
 Desired width of the stamp on the page. More...
 
virtual void set_Width (double value)
 Desired width of the stamp on the page. More...
 
virtual double get_Height ()
 Desired height of the stamp on the page. More...
 
virtual void set_Height (double value)
 Desired height of the stamp on the page. More...
 
double get_ZoomY () const
 Vertical zooming factor of the stamp. Allows to scale stamp vertically. More...
 
void set_ZoomY (double value)
 Vertical zooming factor of the stamp. Allows to scale stamp vertically. More...
 
double get_Zoom () const
 Zooming factor of the stamp. Allows to scale stamp. Please note that pair of properties ZoomX and ZoomY allows to set zoom factor for every axe separately. Setting of this property changes both ZoomX and ZoomY properties. If ZoomX and ZoomY are different then Zoom property returns ZoomX value. More...
 
void set_Zoom (double value)
 Zooming factor of the stamp. Allows to scale stamp. Please note that pair of properties ZoomX and ZoomY allows to set zoom factor for every axe separately. Setting of this property changes both ZoomX and ZoomY properties. If ZoomX and ZoomY are different then Zoom property returns ZoomX value. More...
 
double get_RotateAngle ()
 Gets rotate angle of stamp in degrees. This property allows to set arbitrary rotate angle. More...
 
void set_RotateAngle (double value)
 Sets rotate angle of stamp in degrees. This property allows to set arbitrary rotate angle. More...
 
virtual void Put (System::SharedPtr< Page > page)=0
 Adds stamp on the page. More...
 
void setStampId (int32_t value)
 Sets stamp Id. More...
 
int32_t getStampId ()
 Returns stamp ID. More...
 
 Stamp ()
 
- 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 () 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

virtual System::SharedPtr< RectanglegetRect ()=0
 Returns rectangle of the stamp on page. More...
 
System::SharedPtr< PointgetPoint (System::SharedPtr< Page > page)
 Returns point if the stamp on the page. More...
 
void UpdateCache (System::SharedPtr< Document > doc)
 This method checks document to which stamp is applied. If the document was changed then cached objects (for example Form XObject, Image, graphic state etc) Are cleared. This is made to avoid document damage (see for example 36049) More...
 
virtual void ClearCache ()
 
System::SharedPtr< Engine::Data::IPdfDictionary > GetParentResources (System::SharedPtr< Engine::Data::IPdfDictionary > dict)
 
System::SharedPtr< Engine::Data::IPdfDictionary > GetResources (System::SharedPtr< Page > page)
 
System::String addExtGState (System::SharedPtr< Page > page)
 Add G state on the page for stamp. More...
 
virtual System::SharedPtr< MatrixgetMatrix (System::SharedPtr< Page > page)
 Calculates matrix of the stamp More...
 
virtual System::SharedPtr< MatrixgetStampRotationMatrix ()
 Retuns matrix which used for rotation the stamp; More...
 
virtual System::SharedPtr< MatrixgetPageRotationMatrix (System::SharedPtr< Page > page)
 Returns transformation matrix for page. More...
 
virtual System::SharedPtr< MatrixgetScaleMatrix ()
 Returns scaling matrix of the stamp. More...
 
virtual System::SharedPtr< MatrixgetSizeMatrix ()
 This matrix used in CM operator; it's must be different for Image Stamp More...
 
virtual void drawStampOnPage (System::SharedPtr< Page > page, System::String name)
 Write operators for showing stamp to the page contents. More...
 
void updateStampId (System::SharedPtr< Engine::Data::IPdfPrimitive > instance)
 

Protected Attributes

Aspose::Pdf::HorizontalAlignment _horizontalAlignment
 Horizontal alignment of the stamp. More...
 
Aspose::Pdf::VerticalAlignment _verticalAlignment
 Vertical alignemtn of the stamp. More...
 

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 for various kinds of stamps which come as descendants.

Constructor & Destructor Documentation

◆ Stamp()

Aspose::Pdf::Stamp::Stamp ( )

Member Function Documentation

◆ addExtGState()

System::String Aspose::Pdf::Stamp::addExtGState ( System::SharedPtr< Page page)
protected

Add G state on the page for stamp.

Parameters
pagePage where
Returns
Name of added GState.

◆ ClearCache()

virtual void Aspose::Pdf::Stamp::ClearCache ( )
protectedvirtual

◆ drawStampOnPage()

virtual void Aspose::Pdf::Stamp::drawStampOnPage ( System::SharedPtr< Page page,
System::String  name 
)
protectedvirtual

Write operators for showing stamp to the page contents.

Parameters
pagePage where stamp should be drawn.
nameName of the stamp.

◆ get_Background()

bool Aspose::Pdf::Stamp::get_Background ( ) const

Sets or gets a bool value that indicates the content is stamped as background. If the value is true, the stamp content is layed at the bottom. By defalt, the value is false, the stamp content is layed at the top.

◆ get_BottomMargin()

double Aspose::Pdf::Stamp::get_BottomMargin ( ) const

Gets bottom margin of stamp.

◆ get_Height()

virtual double Aspose::Pdf::Stamp::get_Height ( )
virtual

Desired height of the stamp on the page.

Reimplemented in Aspose::Pdf::TextStamp.

◆ get_HorizontalAlignment()

Aspose::Pdf::HorizontalAlignment Aspose::Pdf::Stamp::get_HorizontalAlignment ( ) const

Gets Horizontal alignment of stamp on the page.

◆ get_LeftMargin()

double Aspose::Pdf::Stamp::get_LeftMargin ( ) const

Gets left margin of stamp.

◆ get_Opacity()

double Aspose::Pdf::Stamp::get_Opacity ( ) const

Gets a value to indicate the stamp opacity. The value is from 0.0 to 1.0. By default the value is 1.0.

◆ get_OutlineOpacity()

double Aspose::Pdf::Stamp::get_OutlineOpacity ( ) const

Gets a value to indicate the stamp outline opacity. The value is from 0.0 to 1.0. By default the value is 1.0.

◆ get_OutlineWidth()

double Aspose::Pdf::Stamp::get_OutlineWidth ( ) const

Gets a value of the stamp outline width. By default the value is 1.0.

◆ get_RightMargin()

double Aspose::Pdf::Stamp::get_RightMargin ( ) const

Gets right margin of stamp.

◆ get_Rotate()

Rotation Aspose::Pdf::Stamp::get_Rotate ( )

Sets or gets the rotation of stamp content according Rotation values. Note. This property is for set angles which are multiples of 90 degrees (0, 90, 180, 270 degrees). To set arbitrary angle use RotateAngle property. If angle set by ArbitraryAngle is not multiple of 90 then Rotate property returns Rotation.None.

◆ get_RotateAngle()

double Aspose::Pdf::Stamp::get_RotateAngle ( )

Gets rotate angle of stamp in degrees. This property allows to set arbitrary rotate angle.

◆ get_TopMargin()

double Aspose::Pdf::Stamp::get_TopMargin ( ) const

Gets top margin of stamp.

◆ get_VerticalAlignment()

Aspose::Pdf::VerticalAlignment Aspose::Pdf::Stamp::get_VerticalAlignment ( ) const

Gets vertical alignment of stamp on page.

◆ get_Width()

virtual double Aspose::Pdf::Stamp::get_Width ( )
virtual

Desired width of the stamp on the page.

Reimplemented in Aspose::Pdf::TextStamp.

◆ get_XIndent()

double Aspose::Pdf::Stamp::get_XIndent ( ) const

Horizontal stamp coordinate, starting from the left.

◆ get_YIndent()

double Aspose::Pdf::Stamp::get_YIndent ( ) const

Vertical stamp coordinate, starting from the bottom.

◆ get_Zoom()

double Aspose::Pdf::Stamp::get_Zoom ( ) const

Zooming factor of the stamp. Allows to scale stamp. Please note that pair of properties ZoomX and ZoomY allows to set zoom factor for every axe separately. Setting of this property changes both ZoomX and ZoomY properties. If ZoomX and ZoomY are different then Zoom property returns ZoomX value.

◆ get_ZoomX()

double Aspose::Pdf::Stamp::get_ZoomX ( ) const

Horizontal zooming factor of the stamp. Allows to scale stamp horizontally.

◆ get_ZoomY()

double Aspose::Pdf::Stamp::get_ZoomY ( ) const

Vertical zooming factor of the stamp. Allows to scale stamp vertically.

◆ getMatrix()

virtual System::SharedPtr<Matrix> Aspose::Pdf::Stamp::getMatrix ( System::SharedPtr< Page page)
protectedvirtual

Calculates matrix of the stamp

Parameters
pagePage for which matrix is requested.
Returns
Matrix of the page.

◆ getPageRotationMatrix()

virtual System::SharedPtr<Matrix> Aspose::Pdf::Stamp::getPageRotationMatrix ( System::SharedPtr< Page page)
protectedvirtual

Returns transformation matrix for page.

Parameters
pagePage where stamp is placed.
Returns
Rotation matrix of the stamp.

◆ GetParentResources()

System::SharedPtr<Engine::Data::IPdfDictionary> Aspose::Pdf::Stamp::GetParentResources ( System::SharedPtr< Engine::Data::IPdfDictionary >  dict)
protected

◆ getPoint()

System::SharedPtr<Point> Aspose::Pdf::Stamp::getPoint ( System::SharedPtr< Page page)
protected

Returns point if the stamp on the page.

Parameters
pagePage where the stamp is placed.
Returns
Point of the stamp.

◆ getRect()

virtual System::SharedPtr<Rectangle> Aspose::Pdf::Stamp::getRect ( )
protectedpure virtual

Returns rectangle of the stamp on page.

Returns
Stamp rectangle.

Implemented in Aspose::Pdf::TextStamp, Aspose::Pdf::ImageStamp, and Aspose::Pdf::PdfPageStamp.

◆ GetResources()

System::SharedPtr<Engine::Data::IPdfDictionary> Aspose::Pdf::Stamp::GetResources ( System::SharedPtr< Page page)
protected

◆ getScaleMatrix()

virtual System::SharedPtr<Matrix> Aspose::Pdf::Stamp::getScaleMatrix ( )
protectedvirtual

Returns scaling matrix of the stamp.

Returns
Scale matrix of the stamp.

◆ getSizeMatrix()

virtual System::SharedPtr<Matrix> Aspose::Pdf::Stamp::getSizeMatrix ( )
protectedvirtual

This matrix used in CM operator; it's must be different for Image Stamp

Returns
Requested matrix.

Reimplemented in Aspose::Pdf::ImageStamp.

◆ getStampId()

int32_t Aspose::Pdf::Stamp::getStampId ( )

Returns stamp ID.

Returns
Identifier of the stamp.

◆ getStampRotationMatrix()

virtual System::SharedPtr<Matrix> Aspose::Pdf::Stamp::getStampRotationMatrix ( )
protectedvirtual

Retuns matrix which used for rotation the stamp;

Returns
Rotation matrix for the stamp.

◆ Put()

virtual void Aspose::Pdf::Stamp::Put ( System::SharedPtr< Page page)
pure virtual

Adds stamp on the page.

Parameters
pageThe page to add stamp.

Implemented in Aspose::Pdf::TextStamp, Aspose::Pdf::ImageStamp, Aspose::Pdf::PageNumberStamp, and Aspose::Pdf::PdfPageStamp.

◆ set_Background()

void Aspose::Pdf::Stamp::set_Background ( bool  value)

Sets or gets a bool value that indicates the content is stamped as background. If the value is true, the stamp content is layed at the bottom. By defalt, the value is false, the stamp content is layed at the top.

◆ set_BottomMargin()

void Aspose::Pdf::Stamp::set_BottomMargin ( double  value)

Sets bottom margin of stamp.

◆ set_Height()

virtual void Aspose::Pdf::Stamp::set_Height ( double  value)
virtual

Desired height of the stamp on the page.

Reimplemented in Aspose::Pdf::TextStamp, and Aspose::Pdf::ImageStamp.

◆ set_HorizontalAlignment()

void Aspose::Pdf::Stamp::set_HorizontalAlignment ( Aspose::Pdf::HorizontalAlignment  value)

Sets Horizontal alignment of stamp on the page.

◆ set_LeftMargin()

void Aspose::Pdf::Stamp::set_LeftMargin ( double  value)

Sets left margin of stamp.

◆ set_Opacity()

void Aspose::Pdf::Stamp::set_Opacity ( double  value)

Sets a value to indicate the stamp opacity. The value is from 0.0 to 1.0. By default the value is 1.0.

◆ set_OutlineOpacity()

void Aspose::Pdf::Stamp::set_OutlineOpacity ( double  value)

Sets a value to indicate the stamp outline opacity. The value is from 0.0 to 1.0. By default the value is 1.0.

◆ set_OutlineWidth()

void Aspose::Pdf::Stamp::set_OutlineWidth ( double  value)

Sets a value of the stamp outline width. By default the value is 1.0.

◆ set_RightMargin()

void Aspose::Pdf::Stamp::set_RightMargin ( double  value)

Sets right margin of stamp.

◆ set_Rotate()

void Aspose::Pdf::Stamp::set_Rotate ( Rotation  value)

Sets or gets the rotation of stamp content according Rotation values. Note. This property is for set angles which are multiples of 90 degrees (0, 90, 180, 270 degrees). To set arbitrary angle use RotateAngle property. If angle set by ArbitraryAngle is not multiple of 90 then Rotate property returns Rotation.None.

◆ set_RotateAngle()

void Aspose::Pdf::Stamp::set_RotateAngle ( double  value)

Sets rotate angle of stamp in degrees. This property allows to set arbitrary rotate angle.

◆ set_TopMargin()

void Aspose::Pdf::Stamp::set_TopMargin ( double  value)

Sets top margin of stamp.

◆ set_VerticalAlignment()

void Aspose::Pdf::Stamp::set_VerticalAlignment ( Aspose::Pdf::VerticalAlignment  value)

Sets vertical alignment of stamp on page.

◆ set_Width()

virtual void Aspose::Pdf::Stamp::set_Width ( double  value)
virtual

Desired width of the stamp on the page.

Reimplemented in Aspose::Pdf::TextStamp, and Aspose::Pdf::ImageStamp.

◆ set_XIndent()

void Aspose::Pdf::Stamp::set_XIndent ( double  value)

Horizontal stamp coordinate, starting from the left.

◆ set_YIndent()

void Aspose::Pdf::Stamp::set_YIndent ( double  value)

Vertical stamp coordinate, starting from the bottom.

◆ set_Zoom()

void Aspose::Pdf::Stamp::set_Zoom ( double  value)

Zooming factor of the stamp. Allows to scale stamp. Please note that pair of properties ZoomX and ZoomY allows to set zoom factor for every axe separately. Setting of this property changes both ZoomX and ZoomY properties. If ZoomX and ZoomY are different then Zoom property returns ZoomX value.

◆ set_ZoomX()

void Aspose::Pdf::Stamp::set_ZoomX ( double  value)

Horizontal zooming factor of the stamp. Allows to scale stamp horizontally.

◆ set_ZoomY()

void Aspose::Pdf::Stamp::set_ZoomY ( double  value)

Vertical zooming factor of the stamp. Allows to scale stamp vertically.

◆ setStampId()

void Aspose::Pdf::Stamp::setStampId ( int32_t  value)

Sets stamp Id.

Parameters
valueNew value of Stamp ID.

◆ UpdateCache()

void Aspose::Pdf::Stamp::UpdateCache ( System::SharedPtr< Document doc)
protected

This method checks document to which stamp is applied. If the document was changed then cached objects (for example Form XObject, Image, graphic state etc) Are cleared. This is made to avoid document damage (see for example 36049)

Parameters
doc

◆ updateStampId()

void Aspose::Pdf::Stamp::updateStampId ( System::SharedPtr< Engine::Data::IPdfPrimitive >  instance)
protected

Member Data Documentation

◆ _horizontalAlignment

Aspose::Pdf::HorizontalAlignment Aspose::Pdf::Stamp::_horizontalAlignment
protected

Horizontal alignment of the stamp.

◆ _verticalAlignment

Aspose::Pdf::VerticalAlignment Aspose::Pdf::Stamp::_verticalAlignment
protected

Vertical alignemtn of the stamp.