Enum pdfium_render::page_object::PdfPageObject
source · [−]pub enum PdfPageObject<'a> {
Text(PdfPageTextObject<'a>),
Path(PdfPagePathObject<'a>),
Image(PdfPageImageObject<'a>),
Shading(PdfPageShadingObject<'a>),
FormFragment(PdfPageFormFragmentObject<'a>),
Unsupported(PdfPageUnsupportedObject<'a>),
}Expand description
A single object on a PdfPage.
Variants
Text(PdfPageTextObject<'a>)
Path(PdfPagePathObject<'a>)
Image(PdfPageImageObject<'a>)
Shading(PdfPageShadingObject<'a>)
FormFragment(PdfPageFormFragmentObject<'a>)
Unsupported(PdfPageUnsupportedObject<'a>)
Common properties shared by all PdfPageObject types can still be accessed for page objects not recognized by Pdfium, but object-specific functionality will be unavailable.
Implementations
sourceimpl<'a> PdfPageObject<'a>
impl<'a> PdfPageObject<'a>
sourcepub fn object_type(&self) -> PdfPageObjectType
pub fn object_type(&self) -> PdfPageObjectType
The object type of this PdfPageObject.
Note that Pdfium does not support or recognize all PDF page object types. For instance,
Pdfium does not currently support or recognize the External Object (“XObject”) page object
type supported by Adobe Acrobat and Foxit’s commercial PDF SDK. In these cases, Pdfium
will return PdfPageObjectType::Unsupported.
sourcepub fn is_supported(&self) -> bool
pub fn is_supported(&self) -> bool
Returns true if this PdfPageObject has an object type other than PdfPageObjectType::Unsupported.
The PdfPageObject::as_text_object(), PdfPageObject::as_path_object(), PdfPageObject::as_image_object(), PdfPageObject::as_shading_object(), and PdfPageObject::as_form_fragment_object() functions can be used to access properties and functions pertaining to a specific page object type.
sourcepub fn is_unsupported(&self) -> bool
pub fn is_unsupported(&self) -> bool
Returns true if this PdfPageObject has an object type of PdfPageObjectType::Unsupported.
Common properties shared by all PdfPageObject types can still be accessed for page objects not recognized by Pdfium, but object-specific functionality will be unavailable.
sourcepub fn as_text_object(&self) -> Option<&PdfPageTextObject<'_>>
pub fn as_text_object(&self) -> Option<&PdfPageTextObject<'_>>
Returns the underlying PdfPageTextObject for this PdfPageObject, if this page object has an object type of PdfPageObjectType::Text.
sourcepub fn as_path_object(&self) -> Option<&PdfPagePathObject<'_>>
pub fn as_path_object(&self) -> Option<&PdfPagePathObject<'_>>
Returns the underlying PdfPagePathObject for this PdfPageObject, if this page object has an object type of PdfPageObjectType::Path.
sourcepub fn as_image_object(&self) -> Option<&PdfPageImageObject<'_>>
pub fn as_image_object(&self) -> Option<&PdfPageImageObject<'_>>
Returns the underlying PdfPageImageObject for this PdfPageObject, if this page object has an object type of PdfPageObjectType::Image.
sourcepub fn as_shading_object(&self) -> Option<&PdfPageShadingObject<'_>>
pub fn as_shading_object(&self) -> Option<&PdfPageShadingObject<'_>>
Returns the underlying PdfPageShadingObject for this PdfPageObject, if this page object has an object type of PdfPageObjectType::Shading.
sourcepub fn as_form_fragment_object(&self) -> Option<&PdfPageFormFragmentObject<'_>>
pub fn as_form_fragment_object(&self) -> Option<&PdfPageFormFragmentObject<'_>>
Returns the underlying PdfPageFormFragmentObject for this PdfPageObject, if this page object has an object type of PdfPageObjectType::FormFragment.
Trait Implementations
sourceimpl<'a> Drop for PdfPageObject<'a>
impl<'a> Drop for PdfPageObject<'a>
sourcefn drop(&mut self)
fn drop(&mut self)
Closes this PdfPageObject, releasing held memory.
sourceimpl<'a> From<PdfPageFormFragmentObject<'a>> for PdfPageObject<'a>
impl<'a> From<PdfPageFormFragmentObject<'a>> for PdfPageObject<'a>
sourcefn from(object: PdfPageFormFragmentObject<'a>) -> Self
fn from(object: PdfPageFormFragmentObject<'a>) -> Self
Converts to this type from the input type.
sourceimpl<'a> From<PdfPageImageObject<'a>> for PdfPageObject<'a>
impl<'a> From<PdfPageImageObject<'a>> for PdfPageObject<'a>
sourcefn from(object: PdfPageImageObject<'a>) -> Self
fn from(object: PdfPageImageObject<'a>) -> Self
Converts to this type from the input type.
sourceimpl<'a> From<PdfPagePathObject<'a>> for PdfPageObject<'a>
impl<'a> From<PdfPagePathObject<'a>> for PdfPageObject<'a>
sourcefn from(object: PdfPagePathObject<'a>) -> Self
fn from(object: PdfPagePathObject<'a>) -> Self
Converts to this type from the input type.
sourceimpl<'a> From<PdfPageShadingObject<'a>> for PdfPageObject<'a>
impl<'a> From<PdfPageShadingObject<'a>> for PdfPageObject<'a>
sourcefn from(object: PdfPageShadingObject<'a>) -> Self
fn from(object: PdfPageShadingObject<'a>) -> Self
Converts to this type from the input type.
sourceimpl<'a> From<PdfPageTextObject<'a>> for PdfPageObject<'a>
impl<'a> From<PdfPageTextObject<'a>> for PdfPageObject<'a>
sourcefn from(object: PdfPageTextObject<'a>) -> Self
fn from(object: PdfPageTextObject<'a>) -> Self
Converts to this type from the input type.
sourceimpl<'a> From<PdfPageUnsupportedObject<'a>> for PdfPageObject<'a>
impl<'a> From<PdfPageUnsupportedObject<'a>> for PdfPageObject<'a>
sourcefn from(object: PdfPageUnsupportedObject<'a>) -> Self
fn from(object: PdfPageUnsupportedObject<'a>) -> Self
Converts to this type from the input type.
Auto Trait Implementations
impl<'a> !RefUnwindSafe for PdfPageObject<'a>
impl<'a> !Send for PdfPageObject<'a>
impl<'a> !Sync for PdfPageObject<'a>
impl<'a> Unpin for PdfPageObject<'a>
impl<'a> !UnwindSafe for PdfPageObject<'a>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<'a, T> PdfPageObjectCommon<'a> for T where
T: PdfPageObjectPrivate<'a>,
impl<'a, T> PdfPageObjectCommon<'a> for T where
T: PdfPageObjectPrivate<'a>,
sourcefn has_transparency(&self) -> bool
fn has_transparency(&self) -> bool
Returns true if this PdfPageObject contains transparency.
sourcefn bounds(&self) -> Result<PdfRect, PdfiumError>
fn bounds(&self) -> Result<PdfRect, PdfiumError>
Returns the bounding box of this PdfPageObject.
sourcefn transform(
&mut self,
a: f64,
b: f64,
c: f64,
d: f64,
e: f64,
f: f64
) -> Result<(), PdfiumError>
fn transform(
&mut self,
a: f64,
b: f64,
c: f64,
d: f64,
e: f64,
f: f64
) -> Result<(), PdfiumError>
Applies the given transformation, expressed as six values representing the six configurable elements of a nine-element 3x3 PDF transformation matrix, to this PdfPageObject. Read more
sourcefn set_blend_mode(
&mut self,
blend_mode: PdfPageObjectBlendMode
) -> Result<(), PdfiumError>
fn set_blend_mode(
&mut self,
blend_mode: PdfPageObjectBlendMode
) -> Result<(), PdfiumError>
Sets the blend mode that will be applied when painting this PdfPageObject. Read more
sourcefn fill_color(&self) -> Result<PdfColor, PdfiumError>
fn fill_color(&self) -> Result<PdfColor, PdfiumError>
Returns the color of any filled paths in this PdfPageObject.
sourcefn set_fill_color(&mut self, fill_color: PdfColor) -> Result<(), PdfiumError>
fn set_fill_color(&mut self, fill_color: PdfColor) -> Result<(), PdfiumError>
Sets the color of any filled paths in this PdfPageObject.
sourcefn stroke_color(&self) -> Result<PdfColor, PdfiumError>
fn stroke_color(&self) -> Result<PdfColor, PdfiumError>
Returns the color of any stroked lines in this PdfPageObject.
sourcefn set_stroke_color(
&mut self,
stroke_color: PdfColor
) -> Result<(), PdfiumError>
fn set_stroke_color(
&mut self,
stroke_color: PdfColor
) -> Result<(), PdfiumError>
Sets the color of any stroked lines in this PdfPageObject. Read more
sourcefn stroke_width(&self) -> Result<PdfPoints, PdfiumError>
fn stroke_width(&self) -> Result<PdfPoints, PdfiumError>
Returns the width of any stroked lines in this PdfPageObject.
sourcefn set_stroke_width(
&mut self,
stroke_width: PdfPoints
) -> Result<(), PdfiumError>
fn set_stroke_width(
&mut self,
stroke_width: PdfPoints
) -> Result<(), PdfiumError>
Sets the width of any stroked lines in this PdfPageObject. Read more
sourcefn line_join(&self) -> Result<PdfPageObjectLineJoin, PdfiumError>
fn line_join(&self) -> Result<PdfPageObjectLineJoin, PdfiumError>
Returns the line join style that will be used when painting stroked path segments in this PdfPageObject. Read more
sourcefn set_line_join(
&mut self,
line_join: PdfPageObjectLineJoin
) -> Result<(), PdfiumError>
fn set_line_join(
&mut self,
line_join: PdfPageObjectLineJoin
) -> Result<(), PdfiumError>
Sets the line join style that will be used when painting stroked path segments in this PdfPageObject. Read more
sourcefn line_cap(&self) -> Result<PdfPageObjectLineCap, PdfiumError>
fn line_cap(&self) -> Result<PdfPageObjectLineCap, PdfiumError>
Returns the line cap style that will be used when painting stroked path segments in this PdfPageObject. Read more
sourcefn set_line_cap(
&mut self,
line_cap: PdfPageObjectLineCap
) -> Result<(), PdfiumError>
fn set_line_cap(
&mut self,
line_cap: PdfPageObjectLineCap
) -> Result<(), PdfiumError>
Sets the line cap style that will be used when painting stroked path segments in this PdfPageObject. Read more
sourcefn fill_mode(&self) -> Result<PdfPageObjectFillMode, PdfiumError>
fn fill_mode(&self) -> Result<PdfPageObjectFillMode, PdfiumError>
Returns the method used to determine which sub-paths of any path in this PdfPageObject should be filled. Read more
sourcefn is_stroked(&self) -> Result<bool, PdfiumError>
fn is_stroked(&self) -> Result<bool, PdfiumError>
Returns true if this PdfPageObject will be stroked, regardless of the path’s
stroke settings. Read more
sourcefn set_fill_and_stroke_mode(
&mut self,
fill_mode: PdfPageObjectFillMode,
do_stroke: bool
) -> Result<(), PdfiumError>
fn set_fill_and_stroke_mode(
&mut self,
fill_mode: PdfPageObjectFillMode,
do_stroke: bool
) -> Result<(), PdfiumError>
Sets the method used to determine which sub-paths of any path in this PdfPageObject should be filled, and whether or not any path in this PdfPageObject should be stroked. Read more
sourcefn width(&self) -> Result<PdfPoints, PdfiumError>
fn width(&self) -> Result<PdfPoints, PdfiumError>
Returns the width of this PdfPageObject.
sourcefn height(&self) -> Result<PdfPoints, PdfiumError>
fn height(&self) -> Result<PdfPoints, PdfiumError>
Returns the height of this PdfPageObject.
sourcefn is_inside_rect(&self, rect: &PdfRect) -> bool
fn is_inside_rect(&self, rect: &PdfRect) -> bool
Returns true if the bounds of this PdfPageObject lie entirely within the given rectangle.
sourcefn does_overlap_rect(&self, rect: &PdfRect) -> bool
fn does_overlap_rect(&self, rect: &PdfRect) -> bool
Returns true if the bounds of this PdfPageObject lie at least partially within
the given rectangle. Read more
sourcefn translate(
&mut self,
delta_x: PdfPoints,
delta_y: PdfPoints
) -> Result<(), PdfiumError>
fn translate(
&mut self,
delta_x: PdfPoints,
delta_y: PdfPoints
) -> Result<(), PdfiumError>
Moves the origin of this PdfPageObject by the given horizontal and vertical delta distances.
sourcefn scale(
&mut self,
horizontal_scale_factor: f64,
vertical_scale_factor: f64
) -> Result<(), PdfiumError>
fn scale(
&mut self,
horizontal_scale_factor: f64,
vertical_scale_factor: f64
) -> Result<(), PdfiumError>
Changes the size of this PdfPageObject, scaling it by the given horizontal and vertical scale factors. Read more
sourcefn rotate_counter_clockwise_degrees(
&mut self,
degrees: f32
) -> Result<(), PdfiumError>
fn rotate_counter_clockwise_degrees(
&mut self,
degrees: f32
) -> Result<(), PdfiumError>
Rotates this PdfPageObject counter-clockwise by the given number of degrees.
sourcefn rotate_clockwise_degrees(&mut self, degrees: f32) -> Result<(), PdfiumError>
fn rotate_clockwise_degrees(&mut self, degrees: f32) -> Result<(), PdfiumError>
Rotates this PdfPageObject clockwise by the given number of degrees.
sourcefn rotate_counter_clockwise_radians(
&mut self,
radians: f32
) -> Result<(), PdfiumError>
fn rotate_counter_clockwise_radians(
&mut self,
radians: f32
) -> Result<(), PdfiumError>
Rotates this PdfPageObject counter-clockwise by the given number of radians.
sourcefn rotate_clockwise_radians(&mut self, radians: f32) -> Result<(), PdfiumError>
fn rotate_clockwise_radians(&mut self, radians: f32) -> Result<(), PdfiumError>
Rotates this PdfPageObject clockwise by the given number of radians.
sourcefn skew_degrees(
&mut self,
x_axis_skew: f32,
y_axis_skew: f32
) -> Result<(), PdfiumError>
fn skew_degrees(
&mut self,
x_axis_skew: f32,
y_axis_skew: f32
) -> Result<(), PdfiumError>
Skews the axes of this PdfPageObject by the given angles in degrees.
sourcefn skew_radians(
&mut self,
x_axis_skew: f32,
y_axis_skew: f32
) -> Result<(), PdfiumError>
fn skew_radians(
&mut self,
x_axis_skew: f32,
y_axis_skew: f32
) -> Result<(), PdfiumError>
Skews the axes of this PdfPageObject by the given angles in radians.