Add support for small-caps font-variant.

Ref: 2554.
This commit is contained in:
Glenn Watson 2014-09-23 14:21:41 +10:00
parent 6177a3bdcc
commit 0dd1b85739
7 changed files with 32 additions and 14 deletions

View file

@ -164,7 +164,7 @@ impl Shaper {
let hb_font: *mut hb_font_t = hb_font_create(hb_face);
// Set points-per-em. if zero, performs no hinting in that direction.
let pt_size = font.pt_size;
let pt_size = font.actual_pt_size;
hb_font_set_ppem(hb_font, pt_size as c_uint, pt_size as c_uint);
// Set scaling. Note that this takes 16.16 fixed point.

View file

@ -17,7 +17,7 @@ use platform::font_template::FontTemplateData;
pub struct TextRun {
pub text: Arc<String>,
pub font_template: Arc<FontTemplateData>,
pub pt_size: f64,
pub actual_pt_size: f64,
pub font_metrics: FontMetrics,
/// The glyph runs that make up this text run.
pub glyphs: Arc<Vec<GlyphRun>>,
@ -123,7 +123,7 @@ impl<'a> TextRun {
text: Arc::new(text),
font_metrics: font.metrics.clone(),
font_template: font.handle.get_template(),
pt_size: font.pt_size,
actual_pt_size: font.actual_pt_size,
glyphs: Arc::new(glyphs),
};
return run;