33 lines
989 B
Rust
33 lines
989 B
Rust
|
use rusttype::*;
|
||
|
|
||
|
static ROBOTO_REGULAR: &[u8] = include_bytes!("../fonts/Roboto-Regular.ttf");
|
||
|
|
||
|
#[test]
|
||
|
fn consistent_bounding_box_subpixel_size_proxy() {
|
||
|
let font = Font::from_bytes(ROBOTO_REGULAR).unwrap();
|
||
|
let height_at_y = |y| {
|
||
|
font.glyph('s')
|
||
|
.scaled(rusttype::Scale::uniform(20.0))
|
||
|
.positioned(rusttype::Point { x: 0.0, y })
|
||
|
.pixel_bounding_box()
|
||
|
.unwrap()
|
||
|
.height()
|
||
|
};
|
||
|
assert_eq!(height_at_y(50.833_336), height_at_y(110.833_336));
|
||
|
}
|
||
|
|
||
|
#[test]
|
||
|
fn consistent_bounding_box_subpixel_size_standalone() {
|
||
|
let font = Font::from_bytes(ROBOTO_REGULAR).unwrap();
|
||
|
let height_at_y = |y| {
|
||
|
font.glyph('s')
|
||
|
.standalone()
|
||
|
.scaled(rusttype::Scale::uniform(20.0))
|
||
|
.positioned(rusttype::Point { x: 0.0, y })
|
||
|
.pixel_bounding_box()
|
||
|
.unwrap()
|
||
|
.height()
|
||
|
};
|
||
|
assert_eq!(height_at_y(50.833_336), height_at_y(110.833_336));
|
||
|
}
|