diff options
author | rcombs <rcombs@rcombs.me> | 2022-07-26 22:45:59 -0500 |
---|---|---|
committer | rcombs <rcombs@rcombs.me> | 2022-11-15 21:14:37 -0600 |
commit | 176137cba5b577748a962fc2e2e2476ad6a0a0e8 (patch) | |
tree | e9040d50da6f21c2e2d4293d882c28b68abc2ff0 | |
parent | 2cfda341ef2b1b26aec9f9f523ce3976e87dd89e (diff) | |
download | libass-176137cba5b577748a962fc2e2e2476ad6a0a0e8.tar.bz2 libass-176137cba5b577748a962fc2e2e2476ad6a0a0e8.tar.xz |
ass_render: take RenderContext* in add_background()
-rw-r--r-- | libass/ass_render.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c index 8a51007..62ea85a 100644 --- a/libass/ass_render.c +++ b/libass/ass_render.c @@ -2752,12 +2752,13 @@ size_t ass_composite_construct(void *key, void *value, void *priv) bitmap_size(&v->bm) + bitmap_size(&v->bm_o) + bitmap_size(&v->bm_s); } -static void add_background(ASS_Renderer *render_priv, EventImages *event_images) +static void add_background(RenderContext *state, EventImages *event_images) { - int size_x = render_priv->state.shadow_x > 0 ? - lround(render_priv->state.shadow_x * render_priv->state.border_scale_x) : 0; - int size_y = render_priv->state.shadow_y > 0 ? - lround(render_priv->state.shadow_y * render_priv->state.border_scale_y) : 0; + ASS_Renderer *render_priv = state->renderer; + int size_x = state->shadow_x > 0 ? + lround(state->shadow_x * state->border_scale_x) : 0; + int size_y = state->shadow_y > 0 ? + lround(state->shadow_y * state->border_scale_y) : 0; int left = event_images->left - size_x; int top = event_images->top - size_y; int right = event_images->left + event_images->width + size_x; @@ -2775,7 +2776,7 @@ static void add_background(ASS_Renderer *render_priv, EventImages *event_images) return; memset(nbuffer, 0xFF, w * h); ASS_Image *img = my_draw_bitmap(nbuffer, w, h, w, left, top, - render_priv->state.c[3], NULL); + state->c[3], NULL); if (img) { img->next = event_images->imgs; event_images->imgs = img; @@ -3000,7 +3001,7 @@ ass_render_event(ASS_Renderer *render_priv, ASS_Event *event, event_images->imgs = render_text(state); if (state->border_style == 4) - add_background(render_priv, event_images); + add_background(state, event_images); ass_shaper_cleanup(render_priv->shaper, text_info); free_render_context(state); |