Struct rusttype::PositionedGlyph
[−]
[src]
pub struct PositionedGlyph<'a> { // some fields omitted }
A glyph augmented with positioning and scaling information. You can query such a glyph for information that depends on the scale and position of the glyph.
Methods
impl<'a> PositionedGlyph<'a>
[src]
fn pixel_bounding_box(&self) -> Option<Rect<i32>>
The conservative pixel-boundary bounding box for this glyph. This is the smallest rectangle aligned to pixel boundaries that encloses the shape of this glyph at this position.
fn positioned_shape(&self) -> Option<Vec<Contour>>
Similar to shape()
, but with the position of the glyph taken into account.
fn draw<O: FnMut(u32, u32, f32)>(&self, o: O)
Rasterises this glyph. For each pixel in the rect given by pixel_bounding_box()
, o
is called:
o(x, y, v)
where x
and y
are the coordinates of the pixel relative to the min
coordinates of the bounding box,
and v
is the analytically calculated coverage of the pixel by the shape of the glyph.
Calls to o
proceed in horizontal scanline order, similar to this pseudo-code:
let bb = glyph.pixel_bounding_box(); for y in 0..bb.height() { for x in 0..bb.width() { o(x, y, calc_coverage(&glyph, x, y)); } }
fn standalone(&self) -> PositionedGlyph<'static>
Constructs a glyph that owns its data from this glyph. This is similar to Glyph::standalone
. See
that function for more details.
Methods from Deref<Target=SizedGlyph<'a>>
fn positioned(self, p: Point<f32>) -> PositionedGlyph<'a>
Augments this glyph with positioning information, making methods that depend on the position of the glyph available.
fn h_metrics(&self) -> HMetrics
Retrieves the "horizontal metrics" of this glyph. See HMetrics
for more detail.
fn shape(&self) -> Option<Vec<Contour>>
Produces a list of the contours that make up the shape of this glyph. Each contour consists of
a sequence of segments. Each segment is either a straight Line
or a Curve
.
The winding of the produced contours is clockwise for closed shapes, anticlockwise for holes.
fn exact_bounding_box(&self) -> Option<Rect<f32>>
The bounding box of the shape of this glyph, not to be confused with pixel_bounding_box
, the
conservative pixel-boundary bounding box. The coordinates are relative to the glyph's origin.
fn standalone(&self) -> SizedGlyph<'static>
Constructs a glyph that owns its data from this glyph. This is similar to Glyph::standalone
. See
that function for more details.
Trait Implementations
impl<'a> Clone for PositionedGlyph<'a>
[src]
fn clone(&self) -> PositionedGlyph<'a>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl<'a> Deref for PositionedGlyph<'a>
[src]
type Target = SizedGlyph<'a>
The resulting type after dereferencing
fn deref(&self) -> &SizedGlyph<'a>
The method called to dereference a value