From fb1109b4bdec040dab5cdb00a342557b977e9c12 Mon Sep 17 00:00:00 2001 From: Oleg Oshmyan Date: Sun, 16 Dec 2012 19:02:32 +0200 Subject: Properly render opaque box shadows even when there is no border Even if the border size is zero, the shadow is supposed to be a copy of a hypothetical border: when border_style is 1, this coincides with the borderless glyph, but when border_style is 3, the shadow must be an opaque box. Opaque box borders are now generated regardless of border size being non-zero, and outline_to_bitmap3 gets a new flag indicating whether it should discard the border (after generating a shadow from it). --- libass/ass_bitmap.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'libass/ass_bitmap.h') diff --git a/libass/ass_bitmap.h b/libass/ass_bitmap.h index 2a46aec..53be7af 100644 --- a/libass/ass_bitmap.h +++ b/libass/ass_bitmap.h @@ -46,12 +46,13 @@ Bitmap *outline_to_bitmap(ASS_Library *library, FT_Library ftlib, * \param bm_o out: pointer to the bitmap of outline (border) glyph is returned here * \param bm_g out: pointer to the bitmap of glyph shadow is returned here * \param be 1 = produces blurred bitmaps, 0 = normal bitmaps + * \param border_visible whether border is visible if border_style is 3 */ int outline_to_bitmap3(ASS_Library *library, ASS_SynthPriv *priv_blur, FT_Library ftlib, FT_Outline *outline, FT_Outline *border, Bitmap **bm_g, Bitmap **bm_o, Bitmap **bm_s, int be, double blur_radius, FT_Vector shadow_offset, - int border_style); + int border_style, int border_visible); void ass_free_bitmap(Bitmap *bm); -- cgit v1.2.3