Form Class Documentation
classForm : ElementNamespace:datalogics_interface
- Inherits from:
Element
Detailed Description
This is not to be confused with a PDF fillable form; a Form XObject is an object outside the page content stream.
A form XObject is a way to group a number of PDF objects together, into a single container. A Form XObject can hold both text and images, and can be defined once within a PDF file and then reused multiple times in the same PDF, and across multiple pages.
Referenced by
Constructor & Destructor Documentation
Form
Form(Content &content, Document &document)Parameters
content: Content &The content from which to create the form
document: Document &the document in which the image is intended to be used.
Create a form with the given Content.
Specifying the document optimizes data usage for this image within that document.
Form
Form(Form &&)Parameters
: Form &&
~Form
~Form()Member Function Documentation
clear_content
voidclear_content()Returns:
voidRemoves the content from this form.
clear_graphic_state
voidclear_graphic_state()Returns:
voidRemoves the graphic state from this form.
clear_optional_content_membership_dict
voidclear_optional_content_membership_dict()Returns:
voidRemoves the optional content membership dictionary from this form.
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.
clone
std::unique_ptr< Form >clone()Returns:
The newly created form object.Creates a new form from an existing form object. Creates a copy of the Form, including the underlying Content.
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_content
std::unique_ptr< Content >get_content()Returns:
The Content of the form.Returns the content associated with this form XObject.
get_element_type
ElementTypeget_element_type()Returns:
ElementTypeReturns the runtime type of this element.
get_graphic_state
std::unique_ptr< GraphicState >get_graphic_state()Returns:
The GraphicState of this Form, or null if none is set.May return null if this element does not have a GraphicState.
get_matrix
Matrixget_matrix()Returns:
The 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:
the OptionalContentMembershipDictThe OptionalContentMembershipDict property for this Form.
Setting this property will attach the Form 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 Form is detached from any OptionalContentMembershipDict.
get_stream
std::unique_ptr< PDFStream >get_stream()Returns:
The stream associated with the form.Returns the underlying PDF stream (COS object) for this form XObject.
operator=
Parameters
: Form &&
Returns:
Form &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_content
voidset_content(const Content &content)Parameters
content: const Content &The new content for the form.
Returns:
voidSetting new content also dynamically recalculates the form's bounding box.
set_graphic_state
voidset_graphic_state(const GraphicState &gstate)Parameters
gstate: const GraphicState &The new/updated Graphic State for the Form.
Returns:
voidSet the Graphic State of this Form.
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.
set_optional_content_membership_dict
voidset_optional_content_membership_dict(const OptionalContentMembershipDict &ocmd)Parameters
ocmd: const OptionalContentMembershipDict &the OptionalContentMembershipDict
Returns:
voidThe OptionalContentMembershipDict property for this Form.
Setting this property will attach the Form 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 Form is detached from any OptionalContentMembershipDict.
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.