foxit.pdf.GraphicsObjects Class Reference
Inheritance diagram for foxit.pdf.GraphicsObjects:
foxit.common.Base foxit.pdf.PDFPage

Public Member Functions

 GraphicsObjects (GraphicsObjects other)
 Constructor, with another GraphicsObjects object. More...
 
bool GenerateContent ()
 Generate contents of current graphics objects. More...
 
long GetFirstGraphicsObjectPosition (GraphicsObject.Type filter)
 Get the position of first graphics object in graphics object list, based on type filter. More...
 
GraphicsObject GetGraphicsObject (long position)
 Get the graphics object by position in graphics object list. More...
 
long GetLastGraphicsObjectPosition (GraphicsObject.Type filter)
 Get the position of last graphics object in graphics object list, based on type filter. More...
 
long GetNextGraphicsObjectPosition (long position, GraphicsObject.Type filter)
 Get the position of next graphics object in graphics object list, based on type filter and specified current position. More...
 
long GetPrevGraphicsObjectPosition (long position, GraphicsObject.Type filter)
 Get the position of previous graphics object in graphics object list, based on type filter and specified current position. More...
 
long InsertGraphicsObject (long position_insert_after, GraphicsObject graphics_object)
 Insert a graphics object after the specified position. More...
 
bool IsEmpty ()
 Check whether current object is empty or not. More...
 
bool RemoveGraphicsObject (GraphicsObject graphics_object)
 Remove a graphics object. More...
 
bool RemoveGraphicsObjectByPosition (long position)
 Remove a graphics object by position. More...
 

Detailed Description

This class is used as a manager for graphics objects. It stores all its graphics objects in a graphics list, and use POSITION object to enumerate them. A valid POSITION object can be used to get one graphics object, insert new graphics object and even remove one.
If any graphics object is changed, or graphics object is inserted/removed, function GraphicsObjects::GenerateContent should be called to ensure that all these changes would be stored to PDF document. Please refer to function GraphicsObjects::GenerateContent for more details.
A PDF page's content usually consists of a sequence of graphics objects, that means PDF page is used like a manager for graphics objects as well. So class pdf::PDFPage is derived from class GraphicsObjects in order that class pdf::PDFPage can retrieve its graphics object.
A form XObject, a kind of graphics object, is a self-contained description of any sequence of graphics objects, so function graphics::FormXObject::GetGraphicsObjects can be used to retrieve a GraphicsObjects object from a form XObject in order to manage graphics objects which are contained in a form XObject.

See also
pdf::PDFPage
graphics::FormXObject
graphics::GraphicsObject

Constructor & Destructor Documentation

◆ GraphicsObjects()

foxit.pdf.GraphicsObjects.GraphicsObjects ( GraphicsObjects  other)
inline

Constructor, with another GraphicsObjects object.

Parameters
otherAnother GraphicsObjects object.

Member Function Documentation

◆ GenerateContent()

bool foxit.pdf.GraphicsObjects.GenerateContent ( )
inline

Generate contents of current graphics objects.

If any graphics object is changed, or graphics object is inserted/removed, this function should be called before saving related PDF document to ensure that all these changes would be stored to PDF document. Since it may takes a long time to generate content, user is not recommended to call this function frequently, but only call this function when necessary, for example, just before the related PDF document is to be saved.
When this function succeeds, and current graphics objects represents a PDF page, user is recommended to re-parse the PDF page function pdf::PDFPage::StartParse with parameter is_reparse true before rendering the page again; otherwise, otherwise, the page content may not be rendered as expected. Please refer to function pdf::PDFPage::StartParse for more details about re-parsing a PDF page.

Returns
true means success, while false means failure.

◆ GetFirstGraphicsObjectPosition()

long foxit.pdf.GraphicsObjects.GetFirstGraphicsObjectPosition ( GraphicsObject.Type  filter)
inline

Get the position of first graphics object in graphics object list, based on type filter.

After getting a position in the graphics object list, then user can call function GraphicsObjects::GetGraphicsObject to get the graphics object with this position.

Parameters
filterType filter that specifies which kind of graphics object is to be gotten. Please refer to e_TypeXXX values and it should be one of these values. e_TypeAll means for all kinds of graphics objects. Default value: e_TypeAll.
Returns
A POSITION object that represents the position of first graphics object in graphics object list. null or 0 means there is no graphics object.

◆ GetGraphicsObject()

GraphicsObject foxit.pdf.GraphicsObjects.GetGraphicsObject ( long  position)
inline

Get the graphics object by position in graphics object list.

Parameters
positionA POSITION object that indicates the position in the graphics object list. It should not be null or 0.
Returns
A GraphicsObject object.

◆ GetLastGraphicsObjectPosition()

long foxit.pdf.GraphicsObjects.GetLastGraphicsObjectPosition ( GraphicsObject.Type  filter)
inline

Get the position of last graphics object in graphics object list, based on type filter.

After getting a position in the graphics object list, then user can call function GraphicsObjects::GetGraphicsObject to get the graphics object with this position.

Parameters
filterType filter that specifies which kind of graphics object is to be gotten. Please refer to e_TypeXXX values and it should be one of these values. e_TypeAll means for all kinds of graphics objects. Default value: e_TypeAll.
Returns
A POSITION object that represents the position of last graphics object in graphics object list. null or 0 means there is no graphics object.

◆ GetNextGraphicsObjectPosition()

long foxit.pdf.GraphicsObjects.GetNextGraphicsObjectPosition ( long  position,
GraphicsObject.Type  filter 
)
inline

Get the position of next graphics object in graphics object list, based on type filter and specified current position.

After getting a position in the graphics object list, then user can call function GraphicsObjects::GetGraphicsObject to get the graphics object with this position.

Parameters
positionA POSITION object that indicates a position in the graphics object list, whose next position is to be gotten. It should not be null or 0.
filterType filter that specifies which kind of graphics object is to be gotten. Please refer to e_TypeXXX values and it should be one of these values. e_TypeAll means for all kinds of graphics objects. Default value: e_TypeAll.
Returns
A POSITION object that represents the position of next graphics object in graphics object list. null or 0 means parameter position is the last position in graphics object list.

◆ GetPrevGraphicsObjectPosition()

long foxit.pdf.GraphicsObjects.GetPrevGraphicsObjectPosition ( long  position,
GraphicsObject.Type  filter 
)
inline

Get the position of previous graphics object in graphics object list, based on type filter and specified current position.

After getting a position in the graphics object list, then user can call function GraphicsObjects::GetGraphicsObject to get the graphics object with this position.

Parameters
positionA POSITION object that indicates a position in the graphics object list, whose previous position is to be gotten. It should not be null or 0.
filterType filter that specifies which kind of graphics object is to be gotten. Please refer to e_TypeXXX values and it should be one of these values. e_TypeAll means for all kinds of graphics objects. Default value: e_TypeAll.
Returns
A POSITION object that represents the position of previous graphics object in graphics object list. null or 0 means parameter position is already in the first position in graphics object list.

◆ InsertGraphicsObject()

long foxit.pdf.GraphicsObjects.InsertGraphicsObject ( long  position_insert_after,
GraphicsObject  graphics_object 
)
inline

Insert a graphics object after the specified position.

Parameters
position_insert_afterUsed to specify the position, in order to insert parameter graphics_object after this position. null means that parameter graphics_object will be inserted before all objects.
graphics_objectA graphics object to be inserted. User should ensure that parameter graphics_object belongs to the same PDF document as current graphics objects.
Returns
The new position of the inserted graphics object.
Note
When this function succeeds, function GraphicsObjects::GenerateContent should be called. Please refer to function GraphicsObjects::GenerateContent for more details.

◆ IsEmpty()

bool foxit.pdf.GraphicsObjects.IsEmpty ( )
inline

Check whether current object is empty or not.

When the current object is empty, that means current object is useless.

Returns
true means current object is empty, while false means not.

◆ RemoveGraphicsObject()

bool foxit.pdf.GraphicsObjects.RemoveGraphicsObject ( GraphicsObject  graphics_object)
inline

Remove a graphics object.

To remove a graphics object by position (function GraphicsObjects::RemoveGraphicsObjectByPosition) is more direct and effective than to remove a graphics object directly (function GraphicsObjects::RemoveGraphicsObject).

Parameters
graphics_objectA graphics object to be removed. Please ensure this graphics object belongs to current graphics objects.
Returns
true means success, while false means failure.
Note
When this function succeeds, function GraphicsObjects::GenerateContent should be called. Please refer to function GraphicsObjects::GenerateContent for more details.

◆ RemoveGraphicsObjectByPosition()

bool foxit.pdf.GraphicsObjects.RemoveGraphicsObjectByPosition ( long  position)
inline

Remove a graphics object by position.

To remove a graphics object by position (function GraphicsObjects::RemoveGraphicsObjectByPosition) is more direct and effective than to remove a graphics object directly (function GraphicsObjects::RemoveGraphicsObject).

Parameters
positionUsed to specify the position of a graphics object, to be removed. It should not be null or 0.
Returns
true means success, while false means failure.
Note
When this function succeeds, function GraphicsObjects::GenerateContent should be called. Please refer to function GraphicsObjects::GenerateContent for more details.

Foxit Software Corporation Logo
@2018 Foxit Software Incorporated. All rights reserved.