Re: text size in pango



On Wed, 2003-05-07 at 05:14, Biswapesh Chattopadhyay wrote:
I think you need something like this:

PangoLayout *layout;
PangoFontDescription *font;
...
create Pango layout and font
...
pango_layout_set_font_description(layout, font);
PangoRectangle pos;
pango_layout_set_text(layout, s, len);


/* s should be in UTF8 I think */
pango_layout_index_to_pos(layout, len, &pos);
int width = PANGO_PIXELS(pos.x);
return width;

Try instead:

 pango_layout_get_pixel_size (layout, &width, NULL);

And remember to g_object_unref() the layout.

I admit this is a bit convoluted compared to gdk_text_width() but there
might be a simpler way which I do not know about (IANAPE *)

I don't think it's that much harder -- note that creating the layout
and setting the text/font on it is shared between getting the size
and drawing.

Regards,
                                          Owen






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]