Attachment

Struct Attachment 

Source
pub struct Attachment { /* private fields */ }
Expand description

Attachment.

Implementations§

Source§

impl Attachment

Source

pub fn new(content: Vec<u8>, filename: &str, description: &str) -> Self

Examples found in repository?
examples/example_set_attachments.rs (line 6)
4fn main() {
5    let demo = fs::read("examples/resources/demo.txt").unwrap();
6    let a1 = Attachment::new(demo, "demo.txt", "Demo Text");
7    let license = fs::read("LICENSE").unwrap();
8    let a2 = Attachment::new(license, "LICENSE", "GNU General Public License v3.0");
9    let mut pdf = Fpdf::default();
10    pdf.set_attachments(vec![a1, a2]);
11    pdf.output_file_and_close("example_set_attachments.pdf").unwrap();
12}
More examples
Hide additional examples
examples/example_add_attachment_annotation.rs (lines 12-16)
5fn main() {
6    let mut pdf = Fpdf::default();
7
8    pdf.set_font("Arial", "", Unit::pt(12.0));
9    pdf.add_page();
10
11    let demo_txt = fs::read("examples/resources/demo.txt").expect("could not read 'demo.txt' file");
12    let demo_attachment = Rc::new(RefCell::new(Attachment::new(
13        demo_txt,
14        "demo.txt",
15        "Demo Text !",
16    )));
17
18    pdf.set_xy(Unit::mm(5.0), Unit::mm(10.0));
19    pdf.rect(
20        Unit::mm(2.0),
21        Unit::mm(10.0),
22        Unit::mm(50.0),
23        Unit::mm(15.0),
24        "D",
25    );
26    pdf.add_attachment_annotation(
27        demo_attachment.clone(),
28        Unit::mm(2.0),
29        Unit::mm(10.0),
30        Unit::mm(50.0),
31        Unit::mm(15.0),
32    );
33    pdf.cell(Unit::mm(50.0), Unit::mm(15.0), "A first link");
34
35    pdf.set_xy(Unit::mm(5.0), Unit::mm(80.0));
36    pdf.rect(
37        Unit::mm(2.0),
38        Unit::mm(80.0),
39        Unit::mm(50.0),
40        Unit::mm(15.0),
41        "D",
42    );
43    pdf.add_attachment_annotation(
44        demo_attachment.clone(),
45        Unit::mm(2.0),
46        Unit::mm(80.0),
47        Unit::mm(50.0),
48        Unit::mm(15.0),
49    );
50    pdf.cell(Unit::mm(50.0), Unit::mm(15.0), "A second link (no copy)");
51
52    pdf.output_file_and_close("example_add_attachment_annotation.pdf")
53        .expect("could not produce PDF file");
54}

Trait Implementations§

Source§

impl Clone for Attachment

Source§

fn clone(&self) -> Attachment

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Attachment

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Attachment

Source§

fn default() -> Attachment

Returns the “default value” for a type. Read more
Source§

impl Hash for Attachment

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Ord for Attachment

Source§

fn cmp(&self, other: &Attachment) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for Attachment

Source§

fn eq(&self, other: &Attachment) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialOrd for Attachment

Source§

fn partial_cmp(&self, other: &Attachment) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl Eq for Attachment

Source§

impl StructuralPartialEq for Attachment

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.