From: eugeni Date: Wed, 18 Oct 2006 21:19:51 +0000 (+0000) Subject: Center of rotation depends on alignment. X-Git-Tag: 0.9.7~416 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=4e04921d73ed4df34657f58e5bbaf996de613f4b;p=libass Center of rotation depends on alignment. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20302 b3059339-0415-0410-9bf9-f77b7e298cf2 --- diff --git a/libass/ass_render.c b/libass/ass_render.c index 447d905..364bb1e 100644 --- a/libass/ass_render.c +++ b/libass/ass_render.c @@ -1866,13 +1866,15 @@ static int ass_render_event(ass_event_t* event, event_images_t* event_images) center.y = render_context.org_y; } else { FT_BBox str_bbox; + int bx, by; center.x = text_info.glyphs[0].pos.x + device_x; center.y = text_info.glyphs[0].pos.y + device_y; compute_string_bbox(&text_info, &str_bbox); - center.x += (str_bbox.xMax - str_bbox.xMin) / 2; - center.y += (str_bbox.yMax - str_bbox.yMin) / 2; + get_base_point(str_bbox, alignment, &bx, &by); + center.x += bx - str_bbox.xMin; + center.y += by - str_bbox.yMin; } for (i = 0; i < text_info.length; ++i) {