summaryrefslogtreecommitdiffstats
path: root/libass/ass_render.c
diff options
context:
space:
mode:
Diffstat (limited to 'libass/ass_render.c')
-rw-r--r--libass/ass_render.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c
index 15f568d9..0b66e569 100644
--- a/libass/ass_render.c
+++ b/libass/ass_render.c
@@ -1907,6 +1907,11 @@ static void draw_opaque_box(ASS_Renderer *render_priv, uint32_t ch,
asc *= scale_y;
desc *= scale_y;
+ // Emulate the WTFish behavior of VSFilter, i.e. double-scale
+ // the widths of the opaque box.
+ adv *= render_priv->state.scale_x * render_priv->font_scale_x;
+ sx *= render_priv->state.scale_x * render_priv->font_scale_x;
+
FT_Vector points[4] = {
{ .x = -sx, .y = asc + sy },
{ .x = adv + sx, .y = asc + sy },