draw: fix text alignment on small width

Signed-off-by: Julien Danjou <julien@danjou.info>
This commit is contained in:
Julien Danjou 2008-12-02 17:30:57 +01:00
parent 35811f9c36
commit 00149a0e90
1 changed files with 13 additions and 11 deletions

24
draw.c
View File

@ -406,17 +406,19 @@ draw_text(draw_context_t *ctx, font_t *font, PangoEllipsizeMode ellip, PangoWrap
* face */ * face */
y = area.y + (ctx->height - ext.height + 1) / 2 + pdata->margin.top; y = area.y + (ctx->height - ext.height + 1) / 2 + pdata->margin.top;
switch(pdata->align) /* only honors alignment if enough space */
{ if(ext.width < area.width)
case AlignCenter: switch(pdata->align)
x += (area.width - ext.width) / 2; {
break; case AlignCenter:
case AlignRight: x += (area.width - ext.width) / 2;
x += area.width - ext.width; break;
break; case AlignRight:
default: x += area.width - ext.width;
break; break;
} default:
break;
}
if(pdata->shadow.offset) if(pdata->shadow.offset)
{ {