summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGrigori Goronzy <greg@blackbox>2009-06-24 23:48:05 +0200
committerGrigori Goronzy <greg@blackbox>2009-06-24 23:48:05 +0200
commitb53fb2ad554440646f5dfe781459af058ba11f8f (patch)
tree5c6a490f65206356ec4fdfbf186ed6f300de3767
parent832fdb11a38f74bbd14ba6029a872e15501a1216 (diff)
downloadlibass-b53fb2ad554440646f5dfe781459af058ba11f8f.tar.bz2
libass-b53fb2ad554440646f5dfe781459af058ba11f8f.tar.xz
Correct vertical glyph positioning for \fay
Offset the next glyph by the total shear of the glyph before. This is done before line-wrapping, so that a line that is vertically sheared will get as much higher, as it is sheared. Fine by me, but vsfilter probably does it in a different way.
-rw-r--r--libass/ass_render.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c
index 385821e..b405e18 100644
--- a/libass/ass_render.c
+++ b/libass/ass_render.c
@@ -2285,6 +2285,8 @@ ass_render_event(ass_renderer_t *render_priv, ass_event_t *event,
pen.x += text_info->glyphs[text_info->length].advance.x;
pen.x += double_to_d6(render_priv->state.hspacing);
pen.y += text_info->glyphs[text_info->length].advance.y;
+ pen.y += render_priv->state.fay *
+ text_info->glyphs[text_info->length].advance.x;
previous = code;