summaryrefslogtreecommitdiffstats
path: root/libass/ass_shaper.c
diff options
context:
space:
mode:
authorGrigori Goronzy <greg@blackbox>2011-07-13 22:37:23 +0200
committerGrigori Goronzy <greg@blackbox>2011-07-13 22:37:23 +0200
commit2be0c0eaea35ad9fc640c6d748031cf1c3fc8669 (patch)
treef78a3863b1aaee4c3b00c2f88c90ab5268cf3147 /libass/ass_shaper.c
parent7763d4020495a5af6faa685aea9e6ea460ba5af2 (diff)
downloadlibass-2be0c0eaea35ad9fc640c6d748031cf1c3fc8669.tar.bz2
libass-2be0c0eaea35ad9fc640c6d748031cf1c3fc8669.tar.xz
Add kerning toggle for HarfBuzz shaping
Make the "Kerning" track property toggle the OpenType feature "kern". The old TrueType kerning code won't come back.
Diffstat (limited to 'libass/ass_shaper.c')
-rw-r--r--libass/ass_shaper.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/libass/ass_shaper.c b/libass/ass_shaper.c
index 816674c..802f118 100644
--- a/libass/ass_shaper.c
+++ b/libass/ass_shaper.c
@@ -239,6 +239,16 @@ static void shape_fribidi(ASS_Shaper *shaper, size_t len)
}
/**
+ * \brief Toggle kerning for HarfBuzz shaping.
+ * NOTE: currently only works with OpenType fonts, the TrueType fallback *always*
+ * kerns. It's a bug in HarfBuzz.
+ */
+void ass_shaper_set_kerning(ASS_Shaper *shaper, int kern)
+{
+ shaper->features[KERN].value = !!kern;
+}
+
+/**
* \brief Find shape runs according to the event's selected fonts
*/
void ass_shaper_find_runs(ASS_Shaper *shaper, ASS_Renderer *render_priv,