pub struct PdfPageUnsupportedObject<'a> { /* private fields */ }Expand description
A single PdfPageObject of any object type not supported by Pdfium.
Implementations§
Source§impl<'a> PdfPageUnsupportedObject<'a>
impl<'a> PdfPageUnsupportedObject<'a>
Sourcepub fn transform(
&mut self,
a: PdfMatrixValue,
b: PdfMatrixValue,
c: PdfMatrixValue,
d: PdfMatrixValue,
e: PdfMatrixValue,
f: PdfMatrixValue,
) -> Result<(), PdfiumError>
pub fn transform( &mut self, a: PdfMatrixValue, b: PdfMatrixValue, c: PdfMatrixValue, d: PdfMatrixValue, e: PdfMatrixValue, f: PdfMatrixValue, ) -> 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 PdfPageUnsupportedObject.
To move, scale, rotate, or skew this PdfPageUnsupportedObject, consider using one or more of the following functions. Internally they all use Self::transform(), but are probably easier to use (and certainly clearer in their intent) in most situations.
- Self::translate(): changes the position of this PdfPageUnsupportedObject.
- Self::scale(): changes the size of this PdfPageUnsupportedObject.
- this PdfPageUnsupportedObject horizontally around its origin.
- this PdfPageUnsupportedObject vertically around its origin.
- Self::rotate_clockwise_degrees(), Self::rotate_counter_clockwise_degrees(), Self::rotate_clockwise_radians(), Self::rotate_counter_clockwise_radians(): rotates this PdfPageUnsupportedObject around its origin.
- Self::skew_degrees(), Self::skew_radians(): skews this PdfPageUnsupportedObject relative to its axes.
The order in which transformations are applied is significant. For example, the result of rotating then translating an object may be vastly different from translating then rotating the same object.
An overview of PDF transformation matrices can be found in the PDF Reference Manual version 1.7 on page 204; a detailed description can be found in section 4.2.3 on page 207.
Sourcepub fn apply_matrix(&mut self, matrix: PdfMatrix) -> Result<(), PdfiumError>
pub fn apply_matrix(&mut self, matrix: PdfMatrix) -> Result<(), PdfiumError>
Applies the given transformation, expressed as a PdfMatrix, to this PdfPageUnsupportedObject.
Sourcepub fn reset_matrix(&mut self, matrix: PdfMatrix) -> Result<(), PdfiumError>
pub fn reset_matrix(&mut self, matrix: PdfMatrix) -> Result<(), PdfiumError>
Resets the transform matrix for this PdfPageUnsupportedObject to the the given PdfMatrix, overriding any previously applied transformations.
Sourcepub fn reset_matrix_to_identity(&mut self) -> Result<(), PdfiumError>
pub fn reset_matrix_to_identity(&mut self) -> Result<(), PdfiumError>
Resets the transformation matrix for this PdfPageUnsupportedObject to the identity matrix, undoing any previously applied transformations.
Sourcepub fn translate(
&mut self,
delta_x: PdfPoints,
delta_y: PdfPoints,
) -> Result<(), PdfiumError>
pub fn translate( &mut self, delta_x: PdfPoints, delta_y: PdfPoints, ) -> Result<(), PdfiumError>
Moves the origin of this PdfPageUnsupportedObject by the given horizontal and vertical delta distances.
Sourcepub fn scale(
&mut self,
horizontal_scale_factor: PdfMatrixValue,
vertical_scale_factor: PdfMatrixValue,
) -> Result<(), PdfiumError>
pub fn scale( &mut self, horizontal_scale_factor: PdfMatrixValue, vertical_scale_factor: PdfMatrixValue, ) -> Result<(), PdfiumError>
Changes the size of this PdfPageUnsupportedObject, scaling it by the given horizontal and vertical scale factors.
Sourcepub fn flip_horizontally(&mut self) -> Result<(), PdfiumError>
pub fn flip_horizontally(&mut self) -> Result<(), PdfiumError>
Flips this PdfPageUnsupportedObject horizontally around its origin by applying a horizontal scale factor of -1.
Sourcepub fn flip_vertically(&mut self) -> Result<(), PdfiumError>
pub fn flip_vertically(&mut self) -> Result<(), PdfiumError>
Flips this PdfPageUnsupportedObject vertically around its origin by applying a vertical scale factor of -1.
Sourcepub fn reflect(&mut self) -> Result<(), PdfiumError>
pub fn reflect(&mut self) -> Result<(), PdfiumError>
Reflects this PdfPageUnsupportedObject by flipping it both horizontally and vertically around its origin.
Sourcepub fn rotate_counter_clockwise_degrees(
&mut self,
degrees: PdfMatrixValue,
) -> Result<(), PdfiumError>
pub fn rotate_counter_clockwise_degrees( &mut self, degrees: PdfMatrixValue, ) -> Result<(), PdfiumError>
Rotates this PdfPageUnsupportedObject counter-clockwise by the given number of degrees.
Sourcepub fn rotate_clockwise_degrees(
&mut self,
degrees: PdfMatrixValue,
) -> Result<(), PdfiumError>
pub fn rotate_clockwise_degrees( &mut self, degrees: PdfMatrixValue, ) -> Result<(), PdfiumError>
Rotates this PdfPageUnsupportedObject clockwise by the given number of degrees.
Sourcepub fn rotate_counter_clockwise_radians(
&mut self,
radians: PdfMatrixValue,
) -> Result<(), PdfiumError>
pub fn rotate_counter_clockwise_radians( &mut self, radians: PdfMatrixValue, ) -> Result<(), PdfiumError>
Rotates this PdfPageUnsupportedObject counter-clockwise by the given number of radians.
Sourcepub fn rotate_clockwise_radians(
&mut self,
radians: PdfMatrixValue,
) -> Result<(), PdfiumError>
pub fn rotate_clockwise_radians( &mut self, radians: PdfMatrixValue, ) -> Result<(), PdfiumError>
Rotates this PdfPageUnsupportedObject clockwise by the given number of radians.
Sourcepub fn skew_degrees(
&mut self,
x_axis_skew: PdfMatrixValue,
y_axis_skew: PdfMatrixValue,
) -> Result<(), PdfiumError>
pub fn skew_degrees( &mut self, x_axis_skew: PdfMatrixValue, y_axis_skew: PdfMatrixValue, ) -> Result<(), PdfiumError>
Skews the axes of this PdfPageUnsupportedObject by the given angles in degrees.
Sourcepub fn skew_radians(
&mut self,
x_axis_skew: PdfMatrixValue,
y_axis_skew: PdfMatrixValue,
) -> Result<(), PdfiumError>
pub fn skew_radians( &mut self, x_axis_skew: PdfMatrixValue, y_axis_skew: PdfMatrixValue, ) -> Result<(), PdfiumError>
Skews the axes of this PdfPageUnsupportedObject by the given angles in radians.
Sourcepub fn matrix(&self) -> Result<PdfMatrix, PdfiumError>
pub fn matrix(&self) -> Result<PdfMatrix, PdfiumError>
Returns the transformation matrix currently applied to this PdfPageUnsupportedObject.
Sourcepub fn get_translation(&self) -> (PdfPoints, PdfPoints)
pub fn get_translation(&self) -> (PdfPoints, PdfPoints)
Returns the current horizontal and vertical translation of the origin of this PdfPageUnsupportedObject.
Sourcepub fn get_horizontal_translation(&self) -> PdfPoints
pub fn get_horizontal_translation(&self) -> PdfPoints
Returns the current horizontal translation of the origin of this PdfPageUnsupportedObject.
Sourcepub fn get_vertical_translation(&self) -> PdfPoints
pub fn get_vertical_translation(&self) -> PdfPoints
Returns the current vertical translation of the origin of this PdfPageUnsupportedObject.
Sourcepub fn get_scale(&self) -> (PdfMatrixValue, PdfMatrixValue)
pub fn get_scale(&self) -> (PdfMatrixValue, PdfMatrixValue)
Returns the current horizontal and vertical scale factors applied to this PdfPageUnsupportedObject.
Sourcepub fn get_horizontal_scale(&self) -> PdfMatrixValue
pub fn get_horizontal_scale(&self) -> PdfMatrixValue
Returns the current horizontal scale factor applied to this PdfPageUnsupportedObject.
Sourcepub fn get_vertical_scale(&self) -> PdfMatrixValue
pub fn get_vertical_scale(&self) -> PdfMatrixValue
Returns the current vertical scale factor applied to this PdfPageUnsupportedObject.
Sourcepub fn get_rotation_counter_clockwise_degrees(&self) -> PdfMatrixValue
pub fn get_rotation_counter_clockwise_degrees(&self) -> PdfMatrixValue
Returns the counter-clockwise rotation applied to this PdfPageUnsupportedObject, in degrees.
If the object is both rotated and skewed, the return value of this function will reflect the combined operation.
Sourcepub fn get_rotation_clockwise_degrees(&self) -> PdfMatrixValue
pub fn get_rotation_clockwise_degrees(&self) -> PdfMatrixValue
Returns the clockwise rotation applied to this PdfPageUnsupportedObject, in degrees.
If the object is both rotated and skewed, the return value of this function will reflect the combined operation.
Sourcepub fn get_rotation_counter_clockwise_radians(&self) -> PdfMatrixValue
pub fn get_rotation_counter_clockwise_radians(&self) -> PdfMatrixValue
Returns the counter-clockwise rotation applied to this PdfPageUnsupportedObject, in radians.
If the object is both rotated and skewed, the return value of this function will reflect the combined operation.
Sourcepub fn get_rotation_clockwise_radians(&self) -> PdfMatrixValue
pub fn get_rotation_clockwise_radians(&self) -> PdfMatrixValue
Returns the clockwise rotation applied to this PdfPageUnsupportedObject, in radians.
If the object is both rotated and skewed, the return value of this function will reflect the combined operation.
Sourcepub fn get_skew_degrees(&self) -> (PdfMatrixValue, PdfMatrixValue)
pub fn get_skew_degrees(&self) -> (PdfMatrixValue, PdfMatrixValue)
Returns the current x axis and y axis skew angles applied to this PdfPageUnsupportedObject, in degrees.
If the object is both rotated and skewed, the return value of this function will reflect the combined operation.
Sourcepub fn get_x_axis_skew_degrees(&self) -> PdfMatrixValue
pub fn get_x_axis_skew_degrees(&self) -> PdfMatrixValue
Returns the current x axis skew angle applied to this PdfPageUnsupportedObject, in degrees.
If the object is both rotated and skewed, the return value of this function will reflect the combined operation.
Sourcepub fn get_y_axis_skew_degrees(&self) -> PdfMatrixValue
pub fn get_y_axis_skew_degrees(&self) -> PdfMatrixValue
Returns the current y axis skew applied to this PdfPageUnsupportedObject, in degrees.
If the object is both rotated and skewed, the return value of this function will reflect the combined operation.
Sourcepub fn get_skew_radians(&self) -> (PdfMatrixValue, PdfMatrixValue)
pub fn get_skew_radians(&self) -> (PdfMatrixValue, PdfMatrixValue)
Returns the current x axis and y axis skew angles applied to this PdfPageUnsupportedObject, in radians.
If the object is both rotated and skewed, the return value of this function will reflect the combined operation.
Sourcepub fn get_x_axis_skew_radians(&self) -> PdfMatrixValue
pub fn get_x_axis_skew_radians(&self) -> PdfMatrixValue
Returns the current x axis skew applied to this PdfPageUnsupportedObject, in radians.
If the object is both rotated and skewed, the return value of this function will reflect the combined operation.
Sourcepub fn get_y_axis_skew_radians(&self) -> PdfMatrixValue
pub fn get_y_axis_skew_radians(&self) -> PdfMatrixValue
Returns the current y axis skew applied to this PdfPageUnsupportedObject, in radians.
If the object is both rotated and skewed, the return value of this function will reflect the combined operation.
Trait Implementations§
Source§impl<'a> Drop for PdfPageUnsupportedObject<'a>
impl<'a> Drop for PdfPageUnsupportedObject<'a>
Source§fn drop(&mut self)
fn drop(&mut self)
Closes this PdfPageUnsupportedObject, releasing held memory.
Source§impl<'a> From<PdfPageUnsupportedObject<'a>> for PdfPageObject<'a>
impl<'a> From<PdfPageUnsupportedObject<'a>> for PdfPageObject<'a>
Source§fn from(object: PdfPageUnsupportedObject<'a>) -> Self
fn from(object: PdfPageUnsupportedObject<'a>) -> Self
Auto Trait Implementations§
impl<'a> Freeze for PdfPageUnsupportedObject<'a>
impl<'a> !RefUnwindSafe for PdfPageUnsupportedObject<'a>
impl<'a> !Send for PdfPageUnsupportedObject<'a>
impl<'a> !Sync for PdfPageUnsupportedObject<'a>
impl<'a> Unpin for PdfPageUnsupportedObject<'a>
impl<'a> !UnwindSafe for PdfPageUnsupportedObject<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<'a, T> PdfPageObjectCommon<'a> for Twhere
T: PdfPageObjectPrivate<'a>,
impl<'a, T> PdfPageObjectCommon<'a> for Twhere
T: PdfPageObjectPrivate<'a>,
Source§fn has_transparency(&self) -> bool
fn has_transparency(&self) -> bool
true if this PdfPageObject contains transparency.Source§fn bounds(&self) -> Result<PdfQuadPoints, PdfiumError>
fn bounds(&self) -> Result<PdfQuadPoints, PdfiumError>
Source§fn transform_from(
&mut self,
other: &PdfPageObject<'_>,
) -> Result<(), PdfiumError>
fn transform_from( &mut self, other: &PdfPageObject<'_>, ) -> Result<(), PdfiumError>
Source§fn set_blend_mode(
&mut self,
blend_mode: PdfPageObjectBlendMode,
) -> Result<(), PdfiumError>
fn set_blend_mode( &mut self, blend_mode: PdfPageObjectBlendMode, ) -> Result<(), PdfiumError>
Source§fn fill_color(&self) -> Result<PdfColor, PdfiumError>
fn fill_color(&self) -> Result<PdfColor, PdfiumError>
Source§fn set_fill_color(&mut self, fill_color: PdfColor) -> Result<(), PdfiumError>
fn set_fill_color(&mut self, fill_color: PdfColor) -> Result<(), PdfiumError>
Source§fn stroke_color(&self) -> Result<PdfColor, PdfiumError>
fn stroke_color(&self) -> Result<PdfColor, PdfiumError>
Source§fn set_stroke_color(
&mut self,
stroke_color: PdfColor,
) -> Result<(), PdfiumError>
fn set_stroke_color( &mut self, stroke_color: PdfColor, ) -> Result<(), PdfiumError>
Source§fn stroke_width(&self) -> Result<PdfPoints, PdfiumError>
fn stroke_width(&self) -> Result<PdfPoints, PdfiumError>
Source§fn set_stroke_width(
&mut self,
stroke_width: PdfPoints,
) -> Result<(), PdfiumError>
fn set_stroke_width( &mut self, stroke_width: PdfPoints, ) -> Result<(), PdfiumError>
Source§fn line_join(&self) -> Result<PdfPageObjectLineJoin, PdfiumError>
fn line_join(&self) -> Result<PdfPageObjectLineJoin, PdfiumError>
Source§fn set_line_join(
&mut self,
line_join: PdfPageObjectLineJoin,
) -> Result<(), PdfiumError>
fn set_line_join( &mut self, line_join: PdfPageObjectLineJoin, ) -> Result<(), PdfiumError>
Source§fn line_cap(&self) -> Result<PdfPageObjectLineCap, PdfiumError>
fn line_cap(&self) -> Result<PdfPageObjectLineCap, PdfiumError>
Source§fn set_line_cap(
&mut self,
line_cap: PdfPageObjectLineCap,
) -> Result<(), PdfiumError>
fn set_line_cap( &mut self, line_cap: PdfPageObjectLineCap, ) -> Result<(), PdfiumError>
Source§fn dash_phase(&self) -> Result<PdfPoints, PdfiumError>
fn dash_phase(&self) -> Result<PdfPoints, PdfiumError>
Source§fn set_dash_phase(&mut self, dash_phase: PdfPoints) -> Result<(), PdfiumError>
fn set_dash_phase(&mut self, dash_phase: PdfPoints) -> Result<(), PdfiumError>
Source§fn dash_array(&self) -> Result<Vec<PdfPoints>, PdfiumError>
fn dash_array(&self) -> Result<Vec<PdfPoints>, PdfiumError>
Source§fn set_dash_array(
&mut self,
array: &[PdfPoints],
phase: PdfPoints,
) -> Result<(), PdfiumError>
fn set_dash_array( &mut self, array: &[PdfPoints], phase: PdfPoints, ) -> Result<(), PdfiumError>
Source§fn is_copyable(&self) -> bool
fn is_copyable(&self) -> bool
true if this PdfPageObject can be successfully copied by calling its
try_copy() function. Read moreSource§fn try_copy<'b>(
&self,
document: &'b PdfDocument<'b>,
) -> Result<PdfPageObject<'b>, PdfiumError>
fn try_copy<'b>( &self, document: &'b PdfDocument<'b>, ) -> Result<PdfPageObject<'b>, PdfiumError>
Source§fn copy_to_page<'b>(
&mut self,
page: &mut PdfPage<'b>,
) -> Result<PdfPageObject<'b>, PdfiumError>
fn copy_to_page<'b>( &mut self, page: &mut PdfPage<'b>, ) -> Result<PdfPageObject<'b>, PdfiumError>
Source§fn move_to_page(&mut self, page: &mut PdfPage<'_>) -> Result<(), PdfiumError>
fn move_to_page(&mut self, page: &mut PdfPage<'_>) -> Result<(), PdfiumError>
Source§fn move_to_annotation(
&mut self,
annotation: &mut PdfPageAnnotation<'_>,
) -> Result<(), PdfiumError>
fn move_to_annotation( &mut self, annotation: &mut PdfPageAnnotation<'_>, ) -> Result<(), PdfiumError>
Source§fn width(&self) -> Result<PdfPoints, PdfiumError>
fn width(&self) -> Result<PdfPoints, PdfiumError>
Source§fn height(&self) -> Result<PdfPoints, PdfiumError>
fn height(&self) -> Result<PdfPoints, PdfiumError>
Source§fn is_inside_rect(&self, rect: &PdfRect) -> bool
fn is_inside_rect(&self, rect: &PdfRect) -> bool
true if the bounds of this PdfPageObject lie entirely within the given rectangle.Source§fn does_overlap_rect(&self, rect: &PdfRect) -> bool
fn does_overlap_rect(&self, rect: &PdfRect) -> bool
true if the bounds of this PdfPageObject lie at least partially within
the given rectangle.