Element Class Documentation
classElementNamespace:datalogics_interface
Detailed Description
An element is a building block; everything in a PDF file is an element. An element object can be associated with a large amount of unmanaged memory in APDFL and should be deleted when the object is no longer in use.
Constructor & Destructor Documentation
Element
Element(Element &&)Parameters
~Element
~Element()Member Function Documentation
clone
std::unique_ptr< Element >clone()Returns:
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.
clone
std::unique_ptr< Element >clone(ElementCloneFlagsflags)Parameters
flags: ElementCloneFlags
Returns:
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
Rectget_bounding_box()Returns:
The 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 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:
The current Clip for this Element, or NULL if no clip is set.Gets the current Clip for an Element.
get_element_type
ElementTypeget_element_type()Returns:
ElementTypeReturns the runtime type of this element.
get_matrix
Matrixget_matrix()Returns:
The current transformation matrix applied to this element.The transformation matrix for the element.
operator=
Element &operator=(Element &&)Parameters
Returns:
Element &rotate
voidrotate(doubletheta)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
voidscale(doublesx, doublesy)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
voidset_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_matrix
voidset_matrix(const Matrix &matrix)Parameters
matrix: const Matrix &The transformation matrix for the element.
Returns:
voidSet the transformation matrix for the element.
translate
voidtranslate(doubletx, doublety)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.