Struct pdf_canvas::TextObject[][src]

pub struct TextObject<'a> { /* fields omitted */ }

A text object is where text is put on the canvas.

A TextObject should never be created directly by the user. Instead, the Canvas.text method should be called. It will create a TextObject and call a callback, before terminating the text object properly.

Example

let serif = canvas.get_font(BuiltinFont::Times_Roman);
// t will be a TextObject
canvas.text(|t| {
    t.set_font(&serif, 14.0)?;
    t.set_leading(18.0)?;
    t.pos(10.0, 300.0)?;
    t.show("Some lines of text in what might look like a")?;
    t.show_line("paragraph of three lines. Lorem ipsum dolor")?;
    t.show_line("sit amet. Blahonga.")?;
    Ok(())
})?;

Methods

impl<'a> TextObject<'a>
[src]

Set the font and font-size to be used by the following text operations.

Set leading, the vertical distance from a line of text to the next. This is important for the show_line method.

Set the rise above the baseline for coming text. Calling set_rise again with a zero argument will get back to the old baseline.

Set the amount of extra space between characters, in 1/1000 text unit.

Set the amount of extra space between words, in 1/1000 text unit.

Set color for stroking operations.

Set color for non-stroking operations.

Move text position.

The first time pos is called in a TextObject, (x, y) refers to the same point as for Canvas::move_to, after that, the point is relative to the earlier pos.

Show a text.

Show one or more text strings, allowing individual glyph positioning.

Each item in param should contain a string to show and a number to adjust the position. The adjustment is measured in thousands of unit of text space. Positive adjustment brings letters closer, negative widens the gap.

Example

t.show_adjusted(&[("W", 130), ("AN", -40), ("D", 0)])

Show a text as a line. See also set_leading.

Push the graphics state on a stack.

Pop a graphics state from the gsave stack and restore it.

Auto Trait Implementations

impl<'a> !Send for TextObject<'a>

impl<'a> !Sync for TextObject<'a>