Class representing page resources. More...

#include "Resources.h"

Inherits Aspose::Pdf::ISupportsMemoryCleanup.

Classes

class  ExtGStateValue
 Represents ExtGStates with some values. More...
 

Public Member Functions

ASPOSE_PDF_SHARED_API System::SharedPtr< XFormCollectionget_Forms ()
 Gets Forms forms collection More...
 
ASPOSE_PDF_SHARED_API System::SharedPtr< XImageCollectionget_Images ()
 Gets Images images collection More...
 
ASPOSE_PDF_SHARED_API System::SharedPtr< Text::FontCollectionget_Fonts ()
 Gets Fonts resources collection More...
 
ASPOSE_PDF_SHARED_API System::SharedPtr< Text::FontCollectionGetFonts (bool CreateIfAbsent)
 Returns fonts collection. If resources don't contain fonts entry it will be created in depends of CreateIfAbsent flag. More...
 
ASPOSE_PDF_SHARED_API System::SharedPtr< System::Collections::Generic::Dictionary< System::String, System::SharedPtr< Resources::ExtGStateValue > > > GetExtGStates ()
 Gets all ExGStates from resources. More...
 
ASPOSE_PDF_SHARED_API void cpp_set_xfrom_weak (System::SharedPtr< XForm > from)
 
ASPOSE_PDF_SHARED_API void FreeMemory () override
 Clears cached data, frees memory etc. More...
 
- 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 reference 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 int32_t 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 (uint32_t argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
virtual ASPOSECPP_SHARED_API bool FastCast (const Details::FastRttiBase &helper, void **out_ptr) const
 For internal purposes only. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
 
template<>
bool Equals (double const &objA, double const &objB)
 Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 Specialization of Object::ReferenceEquals for case of string and nullptr. More...
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 Specialization of Object::ReferenceEquals for case of strings. More...
 

Protected Member Functions

System::SharedPtr< Engine::CommonData::PageContent::IResourceDictionary > get_ResourceDictionary () const
 
System::SharedPtr< Engine::Data::IPdfDictionary > get_EngineDict () const
 
System::SharedPtr< OperatorCollectionget_Contents () const
 
void set_Contents (System::SharedPtr< OperatorCollection > value)
 
System::SharedPtr< Aspose::Pdf::Documentget_Document () const
 
bool get_IsCommonResource ()
 True if this resources are common i.e. are shared for several pages (placed in pages dictionary as inherited resouirces or in every page as object reference) Manipulation with common resources must be performed very carefully for example deleting object form common resources in one page may cause errors on other pages if deleted object was used for other pages. More...
 
void set_IsCommonResource (bool value)
 True if this resources are common i.e. are shared for several pages (placed in pages dictionary as inherited resouirces or in every page as object reference) Manipulation with common resources must be performed very carefully for example deleting object form common resources in one page may cause errors on other pages if deleted object was used for other pages. More...
 
System::SharedPtr< Engine::Data::IPdfObject > get_Source () const
 
void set_Source (System::SharedPtr< Engine::Data::IPdfObject > value)
 
void ClearFormsCache ()
 Clears cached forms (this required when fields are flattened) More...
 
void ClearImagesCache ()
 
void ClearFontsCache ()
 
void InvalidateForms ()
 
System::SharedPtr< Engine::Data::IPdfDictionary > CreateEntry (System::String section, System::String &name)
 Create resource entry in the desired section More...
 
bool IsXObjectCommon (int32_t imageObjectId)
 Determines whether common images are existed in the document. More...
 
template<typename T >
FindPattern (System::String patternName)
 
virtual ASPOSE_PDF_SHARED_API ~Resources ()
 

Static Protected Member Functions

static System::SharedPtr< ResourcesGetResourcesFor (System::SharedPtr< Page > page)
 
static void ReleaseResourcesFor (const System::SharedPtr< Page > &page)
 
static System::SharedPtr< ResourcesCreate (System::SharedPtr< Aspose::Pdf::Document > doc, System::SharedPtr< Engine::CommonData::PageContent::IResourceDictionary > res)
 
static System::SharedPtr< ResourcesGetResourcesFor (System::SharedPtr< Forms::Form > form)
 
static System::SharedPtr< ResourcesGetResourcesFor (System::SharedPtr< XForm > xform)
 
static void ReleaseResourcesFor (System::SharedPtr< XForm > xform)
 
static System::SharedPtr< ResourcesGetResourcesFor (System::SharedPtr< Engine::CommonData::Graphics::Patterns::TilingPattern > pattern)
 
static System::SharedPtr< System::Drawing::ImageGetImage (System::String name, System::SharedPtr< Engine::Data::IPdfDictionary > resources)
 

Protected Attributes

bool _isIgnoreResourceFontErrors
 
System::SharedPtr< Engine::Data::IPdfDictionary > _EngineDict
 
System::SharedPtr< Engine::CommonData::PageContent::IResourceDictionary > _ResourceDictionary
 
System::SharedPtr< OperatorCollection_Contents
 

Additional Inherited Members

- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. 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 ()
 Implements C# typeof(System.Object) construct. More...
 

Detailed Description

Class representing page resources.

Constructor & Destructor Documentation

◆ ~Resources()

virtual ASPOSE_PDF_SHARED_API Aspose::Pdf::Resources::~Resources ( )
protectedvirtual

Member Function Documentation

◆ ClearFontsCache()

void Aspose::Pdf::Resources::ClearFontsCache ( )
protected

◆ ClearFormsCache()

void Aspose::Pdf::Resources::ClearFormsCache ( )
protected

Clears cached forms (this required when fields are flattened)

◆ ClearImagesCache()

void Aspose::Pdf::Resources::ClearImagesCache ( )
protected

◆ cpp_set_xfrom_weak()

ASPOSE_PDF_SHARED_API void Aspose::Pdf::Resources::cpp_set_xfrom_weak ( System::SharedPtr< XForm from)

◆ Create()

static System::SharedPtr<Resources> Aspose::Pdf::Resources::Create ( System::SharedPtr< Aspose::Pdf::Document doc,
System::SharedPtr< Engine::CommonData::PageContent::IResourceDictionary >  res 
)
staticprotected

◆ CreateEntry()

System::SharedPtr<Engine::Data::IPdfDictionary> Aspose::Pdf::Resources::CreateEntry ( System::String  section,
System::String name 
)
protected

Create resource entry in the desired section

Parameters
sectionSection name ("XObject, ExtGState etc.)</param> <param name="name">Desired name of the entry.
Returns

◆ FindPattern()

template<typename T >
T Aspose::Pdf::Resources::FindPattern ( System::String  patternName)
inlineprotected

◆ FreeMemory()

ASPOSE_PDF_SHARED_API void Aspose::Pdf::Resources::FreeMemory ( )
overridevirtual

Clears cached data, frees memory etc.

Implements Aspose::Pdf::ISupportsMemoryCleanup.

◆ get_Contents()

System::SharedPtr<OperatorCollection> Aspose::Pdf::Resources::get_Contents ( ) const
protected

◆ get_Document()

System::SharedPtr<Aspose::Pdf::Document> Aspose::Pdf::Resources::get_Document ( ) const
protected

◆ get_EngineDict()

System::SharedPtr<Engine::Data::IPdfDictionary> Aspose::Pdf::Resources::get_EngineDict ( ) const
protected

◆ get_Fonts()

ASPOSE_PDF_SHARED_API System::SharedPtr<Text::FontCollection> Aspose::Pdf::Resources::get_Fonts ( )

Gets Fonts resources collection

◆ get_Forms()

ASPOSE_PDF_SHARED_API System::SharedPtr<XFormCollection> Aspose::Pdf::Resources::get_Forms ( )

Gets Forms forms collection

◆ get_Images()

ASPOSE_PDF_SHARED_API System::SharedPtr<XImageCollection> Aspose::Pdf::Resources::get_Images ( )

Gets Images images collection

◆ get_IsCommonResource()

bool Aspose::Pdf::Resources::get_IsCommonResource ( )
protected

True if this resources are common i.e. are shared for several pages (placed in pages dictionary as inherited resouirces or in every page as object reference) Manipulation with common resources must be performed very carefully for example deleting object form common resources in one page may cause errors on other pages if deleted object was used for other pages.

◆ get_ResourceDictionary()

System::SharedPtr<Engine::CommonData::PageContent::IResourceDictionary> Aspose::Pdf::Resources::get_ResourceDictionary ( ) const
protected

◆ get_Source()

System::SharedPtr<Engine::Data::IPdfObject> Aspose::Pdf::Resources::get_Source ( ) const
protected

◆ GetExtGStates()

ASPOSE_PDF_SHARED_API System::SharedPtr<System::Collections::Generic::Dictionary<System::String, System::SharedPtr<Resources::ExtGStateValue> > > Aspose::Pdf::Resources::GetExtGStates ( )

Gets all ExGStates from resources.

Returns
Returns dictionary with ExGStates names keys.

◆ GetFonts()

ASPOSE_PDF_SHARED_API System::SharedPtr<Text::FontCollection> Aspose::Pdf::Resources::GetFonts ( bool  CreateIfAbsent)

Returns fonts collection. If resources don't contain fonts entry it will be created in depends of CreateIfAbsent flag.

Parameters
CreateIfAbsentIf this flag is true then fonts will be created if this entry is absent.
Returns
Fonts collection.

◆ GetImage()

static System::SharedPtr<System::Drawing::Image> Aspose::Pdf::Resources::GetImage ( System::String  name,
System::SharedPtr< Engine::Data::IPdfDictionary >  resources 
)
staticprotected

◆ GetResourcesFor() [1/4]

static System::SharedPtr<Resources> Aspose::Pdf::Resources::GetResourcesFor ( System::SharedPtr< Page page)
staticprotected

◆ GetResourcesFor() [2/4]

static System::SharedPtr<Resources> Aspose::Pdf::Resources::GetResourcesFor ( System::SharedPtr< Forms::Form form)
staticprotected

◆ GetResourcesFor() [3/4]

static System::SharedPtr<Resources> Aspose::Pdf::Resources::GetResourcesFor ( System::SharedPtr< XForm xform)
staticprotected

◆ GetResourcesFor() [4/4]

static System::SharedPtr<Resources> Aspose::Pdf::Resources::GetResourcesFor ( System::SharedPtr< Engine::CommonData::Graphics::Patterns::TilingPattern >  pattern)
staticprotected

◆ InvalidateForms()

void Aspose::Pdf::Resources::InvalidateForms ( )
protected

◆ IsXObjectCommon()

bool Aspose::Pdf::Resources::IsXObjectCommon ( int32_t  imageObjectId)
protected

Determines whether common images are existed in the document.

Parameters
imageObjectIdThe image object id to validate.
Returns
True - the image is common resource; otherwise, false.

◆ ReleaseResourcesFor() [1/2]

static void Aspose::Pdf::Resources::ReleaseResourcesFor ( const System::SharedPtr< Page > &  page)
staticprotected

◆ ReleaseResourcesFor() [2/2]

static void Aspose::Pdf::Resources::ReleaseResourcesFor ( System::SharedPtr< XForm xform)
staticprotected

◆ set_Contents()

void Aspose::Pdf::Resources::set_Contents ( System::SharedPtr< OperatorCollection value)
protected

◆ set_IsCommonResource()

void Aspose::Pdf::Resources::set_IsCommonResource ( bool  value)
protected

True if this resources are common i.e. are shared for several pages (placed in pages dictionary as inherited resouirces or in every page as object reference) Manipulation with common resources must be performed very carefully for example deleting object form common resources in one page may cause errors on other pages if deleted object was used for other pages.

◆ set_Source()

void Aspose::Pdf::Resources::set_Source ( System::SharedPtr< Engine::Data::IPdfObject >  value)
protected

Member Data Documentation

◆ _Contents

System::SharedPtr<OperatorCollection> Aspose::Pdf::Resources::_Contents
protected

◆ _EngineDict

System::SharedPtr<Engine::Data::IPdfDictionary> Aspose::Pdf::Resources::_EngineDict
protected

◆ _isIgnoreResourceFontErrors

bool Aspose::Pdf::Resources::_isIgnoreResourceFontErrors
protected

◆ _ResourceDictionary

System::SharedPtr<Engine::CommonData::PageContent::IResourceDictionary> Aspose::Pdf::Resources::_ResourceDictionary
protected