On Wed, 2005-07-13 at 00:40 -0400, Allin Cottrell wrote:
> On Mon, 11 Jul 2005, David Morse wrote:
> 
> > How does one figure out the width of a certain string in a certain 
> > pango font? (Other than abandoning pango fonts and reverting to 
> > gdkfonts, of course. ; )
> 
> It's a bit of a contortion.
> 
> gint get_string_width (const gchar *str)
> {
>      gint width;
>      GtkWidget *w;
>      PangoLayout *pl;
>      PangoContext *pc;
> 
>      w = gtk_label_new(NULL);
>      pc = gtk_widget_get_pango_context(w);
> 
>      pl = pango_layout_new(pc);
>      pango_layout_set_text(pl, str, -1);
>      pango_layout_get_pixel_size(pl, &width, NULL);
> 
>      gtk_widget_destroy(w);
>      g_object_unref(G_OBJECT(pl));
> 
>      return width;

Well, 
 
 PangoLayout  *gtk_widget_create_pango_layout  (GtkWidget   *widget,
                                               const gchar *text);

Would simplify the above. And considering that asking about the
size of a string before you have a widget to draw it on is meaningless,
you wouldn't have the creation of the dummy label either.

(Finding the size of a string is documented in 
http://developer.gnome.org/doc/API/2.0/gtk/gtk-question-index.html
BTW)

Regards,
                                                Owen

_______________________________________________
gtk-app-devel-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Reply via email to