aboutsummaryrefslogtreecommitdiffstats
path: root/components/gfx/text/shaping/mod.rs
blob: 538f7b533f106754f93fc3707a68d827ef418e11 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at https://mozilla.org/MPL/2.0/. */

//! Shaper encapsulates a specific shaper, such as Harfbuzz,
//! Uniscribe, Pango, or Coretext.
//!
//! Currently, only harfbuzz bindings are implemented.

use crate::font::ShapingOptions;
use crate::text::glyph::GlyphStore;

pub use self::harfbuzz::Shaper;

pub mod harfbuzz;

pub trait ShaperMethods {
    fn shape_text(&self, text: &str, options: &ShapingOptions, glyphs: &mut GlyphStore);
}