Container Class Documentation
class Container : ElementNamespace:datalogics_interface
- Inherits from:
Element
Detailed Description
A container class represents a group of elements on a page in a PDF file.
In the PDF file, every container has a set of Marked Content tags, starting with Begin Marked Content (BMC or BDC) and ending with End Marked Content (EMC), so each container has a BMC/EMC or BDC/EMC pair of tags. These tags can be used to define the beginning and end of metadata around objects, providing information about the text and shapes within a PDF file. Containers can be nested within other containers.
Referenced by
Constructor & Destructor Documentation
Container
Container()Create a new Container.
The new Container has no tag and is not associated with a dictionary.
Container
Container(const std::string & mc_tag)Parameters
mc_tag: const std::string &
Create a new Container.
The new Container has no tag and is not associated with a dictionary.
Container
Container(const std::string & mc_tag, const PDFDict & property_list, bool is_inline)Parameters
mc_tag: const std::string &property_list: const PDFDict &is_inline: bool
Create a new Container.
The new Container has no tag and is not associated with a dictionary.
Container
Container(Container && )Parameters
~Container
~Container()Member Function Documentation
clear_content
void clear_content()Returns:
voidRemoves the content from this container.
clear_optional_content_membership_dict
void clear_optional_content_membership_dict()Returns:
voidRemoves the optional content membership dictionary from this container.
clone
std::unique_ptr< Container > clone()Returns:
std::unique_ptr< Container >The copied container.
Makes a copy of the container.
Make a copy of an container to obtain a new container that has a distinct set of attributes.
clone
std::unique_ptr< Element > clone(ElementCloneFlags flags)Parameters
flags: ElementCloneFlags
Returns:
std::unique_ptr< Element >The copied element.
Makes a copy of the element.
Make a copy of an element to obtain a new element that has a distinct set of attributes.
Note: TextRun objects may not be cloned.
get_bounding_box
Rect get_bounding_box()Returns:
RectThe bounding box for this element. The coordinates of the bounding box are specified in user space coordinates, relative to the element's Content. Note that user space coordinates correspond to unrotated pages; any rotation specified in the page dictionary is not taken into account.
The bounding box for this element.
The bounding box is a rectangle that is guaranteed to encompass the element, but it is not guaranteed to be the smallest box that could contain the element. For example, if the element is a Path that contains an arc, the bounding box encompasses the bezier control points, and not just the curve itself.
get_clip
std::unique_ptr< Clip > get_clip()Returns:
std::unique_ptr< Clip >The current Clip for this Element, or NULL if no clip is set.
Gets the current Clip for an Element.
get_content
std::unique_ptr< Content > get_content()Returns:
std::unique_ptr< Content >Obtain the content of a container.
get_element_type
ElementType get_element_type()Returns:
ElementTypeReturns the runtime type of this element.
get_marked_content_tag
std::string get_marked_content_tag()Returns:
std::stringThe container's Marked Content Tag.
get_matrix
Matrix get_matrix()Returns:
MatrixThe current transformation matrix applied to this element.
The transformation matrix for the element.
get_optional_content_membership_dict
std::unique_ptr< OptionalContentMembershipDict > get_optional_content_membership_dict()Returns:
std::unique_ptr< OptionalContentMembershipDict >the OptionalContentMembershipDict
The OptionalContentMembershipDict property for this Container.
Setting this property will attach the Container to an OptionalContentMembershipDict; it will then be associated with the OptionalContentGroups and be subject to the VisibilityPolicy and VisibilityExpression of that MembershipDict.
By setting this property to null, the Container is detached from any OptionalContentMembershipDict.
get_pdf_dict
PDFDict get_pdf_dict()Returns:
PDFDictRetrieve the PDFObject representation of this object.
operator=
Container & operator=(Container && )Parameters
Returns:
Container &rotate
void rotate(double theta)Parameters
theta: doubleThe rotation angle in degrees.
Returns:
voidRotate an element by theta degrees counterclockwise using the matrix [ cos T sin T -sin T cos T 0 0 ].
scale
void scale(double sx, double sy)Parameters
sx: doubleThe horizontal scale factor.
sy: doubleThe vertical scale factor.
Returns:
voidScale an element by (sx,sy) units using the matrix [ sx 0 0 sy 0 0 ].
set_clip
void set_clip(Clip & clip)Parameters
clip: Clip &The clip to set as the current clip for this element, or NULL to remove clipping.
Returns:
voidSets the current Clip for an Element.
set_content
void set_content(const Content & content)Parameters
content: const Content &The new Content of the container.
Returns:
voidSet the content of a container.
set_marked_content_tag
void set_marked_content_tag(const std::string & tag)Parameters
tag: const std::string &the container's Marked Content Tag
Returns:
voidThe container's Marked Content Tag.
set_matrix
void set_matrix(const Matrix & matrix)Parameters
matrix: const Matrix &The transformation matrix for the element.
Returns:
voidSet the transformation matrix for the element.
set_optional_content_membership_dict
void set_optional_content_membership_dict(const OptionalContentMembershipDict & ocmd)Parameters
ocmd: const OptionalContentMembershipDict &the OptionalContentMembershipDict
Returns:
voidThe OptionalContentMembershipDict property for this Container.
Setting this property will attach the Container to an OptionalContentMembershipDict; it will then be associated with the OptionalContentGroups and be subject to the VisibilityPolicy and VisibilityExpression of that MembershipDict.
By setting this property to null, the Container is detached from any OptionalContentMembershipDict.
translate
void translate(double tx, double ty)Parameters
tx: doubleThe horizontal translation distance in user space units.
ty: doubleThe vertical translation distance in user space units.
Returns:
voidTranslate an element by (tx,ty) units using the matrix [ 1 0 0 1 tx ty ].
try_as
T * try_as(typename T )Parameters
: typename T
Returns:
T *Attempt to downcast this element to a derived type. Returns a pointer to the derived type, or nullptr if the type doesn't match.
try_as
const T * try_as(typename T )Parameters
: typename T
Returns:
const T *Const overload of try_as(). Returns a const pointer, or nullptr.