<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:www.nabble.com,2006:forum-1338</id>
	<title>Nabble - Gtk+ - Internationalization</title>
	<updated>2008-09-04T14:38:11Z</updated>
	<link rel="self" type="application/atom+xml" href="http://www.nabble.com/Gtk+---Internationalization-f1338.xml" />
	<link rel="alternate" type="text/html" href="http://www.nabble.com/Gtk%2B---Internationalization-f1338.html" />
	<subtitle type="html"></subtitle>
	
<entry>
	<id>tag:www.nabble.com,2006:post-19320550</id>
	<title>Re: [rrd] Re: pango / fontconfig / cairo performance with rrdtool</title>
	<published>2008-09-04T14:38:11Z</published>
	<updated>2008-09-04T14:38:11Z</updated>
	<author>
		<name>Tobias Oetiker-3</name>
	</author>
	<content type="html">Hi Behdad,
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; No, unless you:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; - Use a different fontmap each time (that is, you use
&lt;br&gt;&amp;gt; pango_cairo_font_map_new())
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; - Call pango_fc_font_map_clear_cache()
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; - Use more than 64 different font descriptions
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; none of which you seem to be doing.
&lt;/div&gt;&lt;br&gt;drawing from the don'ts, I have modified my system as follows.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; static PangoFontMap *fontmap = NULL;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 100, 100);
&lt;br&gt;&amp;nbsp; &amp;nbsp; cr = cairo_create(surface);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; if (fontmap == NULL){
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; fontmap = pango_cairo_font_map_get_default();
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; context = pango_cairo_font_map_create_context((PangoCairoFontMap*)fontmap);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; pango_cairo_context_set_resolution(context, 100);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; pango_cairo_update_context(cr,context);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; layout = pango_layout_new(context);
&lt;br&gt;&lt;br&gt;this seems to work and I like to think that it is because I
&lt;br&gt;preserve the font map across multiple graphs ...
&lt;br&gt;&lt;br&gt;cheers and thanks for the help
&lt;br&gt;&lt;br&gt;tobi
&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
&lt;br&gt;&lt;a href=&quot;http://it.oetiker.ch&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://it.oetiker.ch&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19320550&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;tobi@...&lt;/a&gt; ++41 62 775 9902 / sb: -9900
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19320550&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango---fontconfig---cairo-performance-with-rrdtool-tp19241064p19320550.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19317706</id>
	<title>Re: Questions about building Pango statically &amp; dynamically</title>
	<published>2008-09-04T11:58:37Z</published>
	<updated>2008-09-04T11:58:37Z</updated>
	<author>
		<name>Nick Zitzmann</name>
	</author>
	<content type="html">&lt;br&gt;On Sep 4, 2008, at 12:33 PM, Behdad Esfahbod wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; Did you try configuring with --with-included-modules?
&lt;br&gt;&lt;br&gt;&lt;br&gt;Thank you! That solved the problems.
&lt;br&gt;&lt;br&gt;Nick Zitzmann
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://seiryu.home.comcast.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://seiryu.home.comcast.net/&lt;/a&gt;&amp;gt;
&lt;br&gt;S/MIME signature available upon request
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19317706&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/Questions-about-building-Pango-statically---dynamically-tp19316898p19317706.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19317163</id>
	<title>Re: Questions about building Pango statically &amp; dynamically</title>
	<published>2008-09-04T11:33:37Z</published>
	<updated>2008-09-04T11:33:37Z</updated>
	<author>
		<name>Behdad Esfahbod-3</name>
	</author>
	<content type="html">Did you try configuring with --with-included-modules?
&lt;br&gt;&lt;br&gt;behdad
&lt;br&gt;&lt;br&gt;Nick Zitzmann wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I've been searching around Google and have found nothing to answer my
&lt;br&gt;&amp;gt; questions, so I'm asking here.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I'm trying to build an LGPL'd framework for Mac OS X, and I want to
&lt;br&gt;&amp;gt; statically link Pango and the ATSUI module into the framework so I don't
&lt;br&gt;&amp;gt; have to distribute them separately. I'm using Pango 1.21.4 and Glib
&lt;br&gt;&amp;gt; 2.17.6, and I'm compiling Pango against the Cairo back-end (not X). And
&lt;br&gt;&amp;gt; I'm running into a few problems:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 1. If I build Pango without shared libraries, then the build succeeds,
&lt;br&gt;&amp;gt; but the pango.modules file is almost empty. OK, so I understand I can
&lt;br&gt;&amp;gt; statically link the ATSUI module into the framework with the Pango
&lt;br&gt;&amp;gt; static library and work around this, but how do I do that?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 2. Searching around for answers to question #1, I came across the
&lt;br&gt;&amp;gt; pango_module_register() function, which apparently manually registers
&lt;br&gt;&amp;gt; modules if statically linked. But when I define PANGO_ENABLE_BACKEND and
&lt;br&gt;&amp;gt; include pango-modules.h, I get the following build errors:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; /usr/local/include/pango-1.0/pango/pango-modules.h:38: error: expected
&lt;br&gt;&amp;gt; ')' before '*' token
&lt;br&gt;&amp;gt; /usr/local/include/pango-1.0/pango/pango-modules.h:40: error: expected
&lt;br&gt;&amp;gt; ';' before 'void'
&lt;br&gt;&amp;gt; /usr/local/include/pango-1.0/pango/pango-modules.h:48: error: expected
&lt;br&gt;&amp;gt; '=', ',', ';', 'asm' or '__attribute__' before '*' token
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I must be leaving out something, but what? I'm using GCC 4.2 and I'm
&lt;br&gt;&amp;gt; building with the GNU99 dialect. I tried switching dialects to C99, and
&lt;br&gt;&amp;gt; building with GCC 4.0, and there was no improvement in either case.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 3. And finally, I can't get Pango to build at all as a dynamic library.
&lt;br&gt;&amp;gt; When I try, the console gets flooded with messages like these:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; (process:11109): GLib-GObject-CRITICAL **: gtype.c:2458: initialization
&lt;br&gt;&amp;gt; assertion failed, use g_type_init() prior to this function
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; (pango-querymodules:11109): GLib-GObject-WARNING **: cannot retrieve
&lt;br&gt;&amp;gt; class for invalid (unclassed) type `&amp;lt;invalid&amp;gt;'
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; (pango-querymodules:11109): GLib-GObject-CRITICAL **: g_enum_get_value:
&lt;br&gt;&amp;gt; assertion `G_IS_ENUM_CLASS (enum_class)' failed
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; (pango-querymodules:11109): Pango-WARNING **: Engine reported invalid
&lt;br&gt;&amp;gt; script value -1
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; What's going on here? If it helps, my Glib installation is static-only.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Thanks for any advice...
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Nick Zitzmann
&lt;br&gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://seiryu.home.comcast.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://seiryu.home.comcast.net/&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; S/MIME signature available upon request
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; _______________________________________________
&lt;br&gt;&amp;gt; gtk-i18n-list mailing list
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19317163&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;&amp;gt; 
&lt;/div&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19317163&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/Questions-about-building-Pango-statically---dynamically-tp19316898p19317163.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19316898</id>
	<title>Questions about building Pango statically &amp; dynamically</title>
	<published>2008-09-04T11:16:16Z</published>
	<updated>2008-09-04T11:16:16Z</updated>
	<author>
		<name>Nick Zitzmann</name>
	</author>
	<content type="html">Hi:
&lt;br&gt;&lt;br&gt;I've been searching around Google and have found nothing to answer my &amp;nbsp;
&lt;br&gt;questions, so I'm asking here.
&lt;br&gt;&lt;br&gt;I'm trying to build an LGPL'd framework for Mac OS X, and I want to &amp;nbsp;
&lt;br&gt;statically link Pango and the ATSUI module into the framework so I &amp;nbsp;
&lt;br&gt;don't have to distribute them separately. I'm using Pango 1.21.4 and &amp;nbsp;
&lt;br&gt;Glib 2.17.6, and I'm compiling Pango against the Cairo back-end (not &amp;nbsp;
&lt;br&gt;X). And I'm running into a few problems:
&lt;br&gt;&lt;br&gt;1. If I build Pango without shared libraries, then the build succeeds, &amp;nbsp;
&lt;br&gt;but the pango.modules file is almost empty. OK, so I understand I can &amp;nbsp;
&lt;br&gt;statically link the ATSUI module into the framework with the Pango &amp;nbsp;
&lt;br&gt;static library and work around this, but how do I do that?
&lt;br&gt;&lt;br&gt;2. Searching around for answers to question #1, I came across the &amp;nbsp;
&lt;br&gt;pango_module_register() function, which apparently manually registers &amp;nbsp;
&lt;br&gt;modules if statically linked. But when I define PANGO_ENABLE_BACKEND &amp;nbsp;
&lt;br&gt;and include pango-modules.h, I get the following build errors:
&lt;br&gt;&lt;br&gt;/usr/local/include/pango-1.0/pango/pango-modules.h:38: error: expected &amp;nbsp;
&lt;br&gt;')' before '*' token
&lt;br&gt;/usr/local/include/pango-1.0/pango/pango-modules.h:40: error: expected &amp;nbsp;
&lt;br&gt;';' before 'void'
&lt;br&gt;/usr/local/include/pango-1.0/pango/pango-modules.h:48: error: expected &amp;nbsp;
&lt;br&gt;'=', ',', ';', 'asm' or '__attribute__' before '*' token
&lt;br&gt;&lt;br&gt;I must be leaving out something, but what? I'm using GCC 4.2 and I'm &amp;nbsp;
&lt;br&gt;building with the GNU99 dialect. I tried switching dialects to C99, &amp;nbsp;
&lt;br&gt;and building with GCC 4.0, and there was no improvement in either case.
&lt;br&gt;&lt;br&gt;3. And finally, I can't get Pango to build at all as a dynamic &amp;nbsp;
&lt;br&gt;library. When I try, the console gets flooded with messages like these:
&lt;br&gt;&lt;br&gt;(process:11109): GLib-GObject-CRITICAL **: gtype.c:2458: &amp;nbsp;
&lt;br&gt;initialization assertion failed, use g_type_init() prior to this &amp;nbsp;
&lt;br&gt;function
&lt;br&gt;&lt;br&gt;(pango-querymodules:11109): GLib-GObject-WARNING **: cannot retrieve &amp;nbsp;
&lt;br&gt;class for invalid (unclassed) type `&amp;lt;invalid&amp;gt;'
&lt;br&gt;&lt;br&gt;(pango-querymodules:11109): GLib-GObject-CRITICAL **: &amp;nbsp;
&lt;br&gt;g_enum_get_value: assertion `G_IS_ENUM_CLASS (enum_class)' failed
&lt;br&gt;&lt;br&gt;(pango-querymodules:11109): Pango-WARNING **: Engine reported invalid &amp;nbsp;
&lt;br&gt;script value -1
&lt;br&gt;&lt;br&gt;What's going on here? If it helps, my Glib installation is static-only.
&lt;br&gt;&lt;br&gt;Thanks for any advice...
&lt;br&gt;&lt;br&gt;Nick Zitzmann
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://seiryu.home.comcast.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://seiryu.home.comcast.net/&lt;/a&gt;&amp;gt;
&lt;br&gt;S/MIME signature available upon request
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19316898&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/Questions-about-building-Pango-statically---dynamically-tp19316898p19316898.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19257312</id>
	<title>Re: [rrd] Re: pango / fontconfig / cairo performance with rrdtool</title>
	<published>2008-09-01T09:17:45Z</published>
	<updated>2008-09-01T09:17:45Z</updated>
	<author>
		<name>Behdad Esfahbod-3</name>
	</author>
	<content type="html">Tobias Oetiker wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Yesterday Behdad Esfahbod wrote:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Tobias Oetiker wrote:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Behdad,
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Hi Tobias,
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; The part creating the layout looks good. &amp;nbsp;Any *interesting* thing will be
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; hidden in other parts of the code, namely the code calling this function. &amp;nbsp;In
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; general I'm quite surprised that you are hitting the load_fontset() path all
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; the time as the fontsets should be cached and simply reused. &amp;nbsp;One way to debug
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; it is to run with FC_DEBUG=1 and look for all different Sort Patterns passed
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; to fontconfig and see how they differ (I'm guessing minor difference in the size).
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; I just finished modifying the code, so that I am keeping multiple
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; sets of PangoFontDescriptions for each combination of font and
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; size. I then pass the FontDescription into the text function. This
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; magically resolved the problem ... now the load_fontset gets only
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; called 3 times or so ...
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Does this match expectations ?
&lt;br&gt;&amp;gt;&amp;gt; Not really. &amp;nbsp;As I said, most probably you have been creating
&lt;br&gt;&amp;gt;&amp;gt; slightly-different font descriptions. &amp;nbsp;You can run the old code and print out
&lt;br&gt;&amp;gt;&amp;gt; the font descriptions to see what has been causing it. &amp;nbsp;In general you should
&lt;br&gt;&amp;gt;&amp;gt; not need to cache much to make Pango behave. &amp;nbsp;Just use the default font map
&lt;br&gt;&amp;gt;&amp;gt; (which you are) and it should work reasonably.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Hmm,
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I am using the same font name across the board in 4 different sizes.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; DejaVu Sans Mono,Bitstream Vera Sans Mono,monospace,Courier 7
&lt;br&gt;&amp;gt; DejaVu Sans Mono,Bitstream Vera Sans Mono,monospace,Courier 8
&lt;br&gt;&amp;gt; DejaVu Sans Mono,Bitstream Vera Sans Mono,monospace,Courier 9
&lt;br&gt;&amp;gt; DejaVu Sans Mono,Bitstream Vera Sans Mono,monospace,Courier 5.5
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Is there a way to figure what font pango picked based on my
&lt;br&gt;&amp;gt; description and then tell it to use this one again ?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Could it be that when I ask for font
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;quot;ABC,CCD 9&amp;quot;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; that pango finds
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;quot;CCD 8.99999&amp;quot;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; and then when I ask again for
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;quot;ABC,CCD 9&amp;quot;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; it goes looking again ?
&lt;/div&gt;&lt;br&gt;No.
&lt;br&gt;&lt;br&gt;&amp;gt; Could it be that I am doing something that makes pango forget about
&lt;br&gt;&amp;gt; the fonts (flush its cache).
&lt;br&gt;&lt;br&gt;No, unless you:
&lt;br&gt;&lt;br&gt;&amp;nbsp; - Use a different fontmap each time (that is, you use
&lt;br&gt;pango_cairo_font_map_new())
&lt;br&gt;&lt;br&gt;&amp;nbsp; - Call pango_fc_font_map_clear_cache()
&lt;br&gt;&lt;br&gt;&amp;nbsp; - Use more than 64 different font descriptions
&lt;br&gt;&lt;br&gt;none of which you seem to be doing.
&lt;br&gt;&lt;br&gt;&amp;gt; How should I be structuring my program for optimal results.
&lt;br&gt;&amp;gt; Have a separate layout for each font I am going to use and then
&lt;br&gt;&amp;gt; switch layout according to the font ?
&lt;br&gt;&lt;br&gt;Fontsets are cached on the fontmap. &amp;nbsp;Recreating layout and/or font
&lt;br&gt;descriptions should not matter as long as you use the exact same font description.
&lt;br&gt;&lt;br&gt;&amp;gt; As I said, I have shuffled my code around and suddenly the time
&lt;br&gt;&amp;gt; for generating a second graph has gone down dramatically. I just
&lt;br&gt;&amp;gt; don't know exactly why.
&lt;br&gt;&lt;br&gt;Can't tell without closely inspecting your code. &amp;nbsp;But I already suggested how
&lt;br&gt;to debug it further using FC_DEBUG.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; old code:
&lt;br&gt;&amp;gt; 0.221
&lt;br&gt;&amp;gt; 0.158
&lt;br&gt;&amp;gt; 0.152
&lt;br&gt;&amp;gt; 0.157
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; shuffled code with separate PangoFontDescription structures for
&lt;br&gt;&amp;gt; each font/size which I then apply to the layout as required:
&lt;br&gt;&amp;gt; 0.194
&lt;br&gt;&amp;gt; 0.024
&lt;br&gt;&amp;gt; 0.023
&lt;br&gt;&amp;gt; 0.023
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; rrd 1.2 code with libart/freetype:
&lt;br&gt;&amp;gt; 0.031
&lt;br&gt;&amp;gt; 0.024
&lt;br&gt;&amp;gt; 0.023
&lt;br&gt;&amp;gt; 0.024
&lt;/div&gt;&lt;br&gt;Neat.
&lt;br&gt;&lt;br&gt;behdad
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; cheers
&lt;br&gt;&amp;gt; tobi
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; behdad
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; cheers
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; tobi
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; 
&lt;/div&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19257312&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango---fontconfig---cairo-performance-with-rrdtool-tp19241064p19257312.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19247340</id>
	<title>Re: [rrd] Re: pango / fontconfig / cairo performance with rrdtool</title>
	<published>2008-08-31T16:58:31Z</published>
	<updated>2008-08-31T16:58:31Z</updated>
	<author>
		<name>Tobias Oetiker-3</name>
	</author>
	<content type="html">Yesterday Behdad Esfahbod wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Tobias Oetiker wrote:
&lt;br&gt;&amp;gt; &amp;gt; Behdad,
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; Hi Tobias,
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; The part creating the layout looks good. &amp;nbsp;Any *interesting* thing will be
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; hidden in other parts of the code, namely the code calling this function. &amp;nbsp;In
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; general I'm quite surprised that you are hitting the load_fontset() path all
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; the time as the fontsets should be cached and simply reused. &amp;nbsp;One way to debug
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; it is to run with FC_DEBUG=1 and look for all different Sort Patterns passed
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; to fontconfig and see how they differ (I'm guessing minor difference in the size).
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; I just finished modifying the code, so that I am keeping multiple
&lt;br&gt;&amp;gt; &amp;gt; sets of PangoFontDescriptions for each combination of font and
&lt;br&gt;&amp;gt; &amp;gt; size. I then pass the FontDescription into the text function. This
&lt;br&gt;&amp;gt; &amp;gt; magically resolved the problem ... now the load_fontset gets only
&lt;br&gt;&amp;gt; &amp;gt; called 3 times or so ...
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Does this match expectations ?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Not really. &amp;nbsp;As I said, most probably you have been creating
&lt;br&gt;&amp;gt; slightly-different font descriptions. &amp;nbsp;You can run the old code and print out
&lt;br&gt;&amp;gt; the font descriptions to see what has been causing it. &amp;nbsp;In general you should
&lt;br&gt;&amp;gt; not need to cache much to make Pango behave. &amp;nbsp;Just use the default font map
&lt;br&gt;&amp;gt; (which you are) and it should work reasonably.
&lt;/div&gt;&lt;br&gt;Hmm,
&lt;br&gt;&lt;br&gt;I am using the same font name across the board in 4 different sizes.
&lt;br&gt;&lt;br&gt;DejaVu Sans Mono,Bitstream Vera Sans Mono,monospace,Courier 7
&lt;br&gt;DejaVu Sans Mono,Bitstream Vera Sans Mono,monospace,Courier 8
&lt;br&gt;DejaVu Sans Mono,Bitstream Vera Sans Mono,monospace,Courier 9
&lt;br&gt;DejaVu Sans Mono,Bitstream Vera Sans Mono,monospace,Courier 5.5
&lt;br&gt;&lt;br&gt;Is there a way to figure what font pango picked based on my
&lt;br&gt;description and then tell it to use this one again ?
&lt;br&gt;&lt;br&gt;Could it be that when I ask for font
&lt;br&gt;&lt;br&gt;&amp;quot;ABC,CCD 9&amp;quot;
&lt;br&gt;&lt;br&gt;that pango finds
&lt;br&gt;&lt;br&gt;&amp;quot;CCD 8.99999&amp;quot;
&lt;br&gt;&lt;br&gt;and then when I ask again for
&lt;br&gt;&lt;br&gt;&amp;quot;ABC,CCD 9&amp;quot;
&lt;br&gt;&lt;br&gt;it goes looking again ?
&lt;br&gt;&lt;br&gt;Could it be that I am doing something that makes pango forget about
&lt;br&gt;the fonts (flush its cache).
&lt;br&gt;&lt;br&gt;How should I be structuring my program for optimal results.
&lt;br&gt;Have a separate layout for each font I am going to use and then
&lt;br&gt;switch layout according to the font ?
&lt;br&gt;&lt;br&gt;As I said, I have shuffled my code around and suddenly the time
&lt;br&gt;for generating a second graph has gone down dramatically. I just
&lt;br&gt;don't know exactly why.
&lt;br&gt;&lt;br&gt;old code:
&lt;br&gt;0.221
&lt;br&gt;0.158
&lt;br&gt;0.152
&lt;br&gt;0.157
&lt;br&gt;&lt;br&gt;shuffled code with separate PangoFontDescription structures for
&lt;br&gt;each font/size which I then apply to the layout as required:
&lt;br&gt;0.194
&lt;br&gt;0.024
&lt;br&gt;0.023
&lt;br&gt;0.023
&lt;br&gt;&lt;br&gt;rrd 1.2 code with libart/freetype:
&lt;br&gt;0.031
&lt;br&gt;0.024
&lt;br&gt;0.023
&lt;br&gt;0.024
&lt;br&gt;&lt;br&gt;&lt;br&gt;cheers
&lt;br&gt;tobi
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt; behdad
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; cheers
&lt;br&gt;&amp;gt; &amp;gt; tobi
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
&lt;br&gt;&lt;a href=&quot;http://it.oetiker.ch&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://it.oetiker.ch&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19247340&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;tobi@...&lt;/a&gt; ++41 62 775 9902 / sb: -9900
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19247340&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango---fontconfig---cairo-performance-with-rrdtool-tp19241064p19247340.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19247106</id>
	<title>Re: [rrd] Re: pango / fontconfig / cairo performance with rrdtool</title>
	<published>2008-08-31T16:17:56Z</published>
	<updated>2008-08-31T16:17:56Z</updated>
	<author>
		<name>Behdad Esfahbod-3</name>
	</author>
	<content type="html">&lt;br&gt;&lt;br&gt;Tobias Oetiker wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Behdad,
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; Hi Tobias,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; The part creating the layout looks good. &amp;nbsp;Any *interesting* thing will be
&lt;br&gt;&amp;gt;&amp;gt; hidden in other parts of the code, namely the code calling this function. &amp;nbsp;In
&lt;br&gt;&amp;gt;&amp;gt; general I'm quite surprised that you are hitting the load_fontset() path all
&lt;br&gt;&amp;gt;&amp;gt; the time as the fontsets should be cached and simply reused. &amp;nbsp;One way to debug
&lt;br&gt;&amp;gt;&amp;gt; it is to run with FC_DEBUG=1 and look for all different Sort Patterns passed
&lt;br&gt;&amp;gt;&amp;gt; to fontconfig and see how they differ (I'm guessing minor difference in the size).
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I just finished modifying the code, so that I am keeping multiple
&lt;br&gt;&amp;gt; sets of PangoFontDescriptions for each combination of font and
&lt;br&gt;&amp;gt; size. I then pass the FontDescription into the text function. This
&lt;br&gt;&amp;gt; magically resolved the problem ... now the load_fontset gets only
&lt;br&gt;&amp;gt; called 3 times or so ...
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Does this match expectations ?
&lt;/div&gt;&lt;br&gt;Not really. &amp;nbsp;As I said, most probably you have been creating
&lt;br&gt;slightly-different font descriptions. &amp;nbsp;You can run the old code and print out
&lt;br&gt;the font descriptions to see what has been causing it. &amp;nbsp;In general you should
&lt;br&gt;not need to cache much to make Pango behave. &amp;nbsp;Just use the default font map
&lt;br&gt;(which you are) and it should work reasonably.
&lt;br&gt;&lt;br&gt;behdad
&lt;br&gt;&lt;br&gt;&amp;gt; cheers
&lt;br&gt;&amp;gt; tobi
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19247106&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango---fontconfig---cairo-performance-with-rrdtool-tp19241064p19247106.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19246248</id>
	<title>Re: [rrd] Re: pango / fontconfig / cairo performance with rrdtool</title>
	<published>2008-08-31T14:19:00Z</published>
	<updated>2008-08-31T14:19:00Z</updated>
	<author>
		<name>Tobias Oetiker-3</name>
	</author>
	<content type="html">Behdad,
&lt;br&gt;&lt;br&gt;&amp;gt; Hi Tobias,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The part creating the layout looks good. &amp;nbsp;Any *interesting* thing will be
&lt;br&gt;&amp;gt; hidden in other parts of the code, namely the code calling this function. &amp;nbsp;In
&lt;br&gt;&amp;gt; general I'm quite surprised that you are hitting the load_fontset() path all
&lt;br&gt;&amp;gt; the time as the fontsets should be cached and simply reused. &amp;nbsp;One way to debug
&lt;br&gt;&amp;gt; it is to run with FC_DEBUG=1 and look for all different Sort Patterns passed
&lt;br&gt;&amp;gt; to fontconfig and see how they differ (I'm guessing minor difference in the size).
&lt;br&gt;&lt;br&gt;I just finished modifying the code, so that I am keeping multiple
&lt;br&gt;sets of PangoFontDescriptions for each combination of font and
&lt;br&gt;size. I then pass the FontDescription into the text function. This
&lt;br&gt;magically resolved the problem ... now the load_fontset gets only
&lt;br&gt;called 3 times or so ...
&lt;br&gt;&lt;br&gt;Does this match expectations ?
&lt;br&gt;&lt;br&gt;cheers
&lt;br&gt;tobi
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
&lt;br&gt;&lt;a href=&quot;http://it.oetiker.ch&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://it.oetiker.ch&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19246248&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;tobi@...&lt;/a&gt; ++41 62 775 9902 / sb: -9900
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19246248&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango---fontconfig---cairo-performance-with-rrdtool-tp19241064p19246248.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19246149</id>
	<title>Re: pango / fontconfig / cairo performance with rrdtool</title>
	<published>2008-08-31T14:08:24Z</published>
	<updated>2008-08-31T14:08:24Z</updated>
	<author>
		<name>Behdad Esfahbod-3</name>
	</author>
	<content type="html">Tobias Oetiker wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Wizards,
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; A few months back I ported rrdtool (www.rrdtool.org) over from
&lt;br&gt;&amp;gt; libart/freetype to cairo/pango. It all went quite well and the
&lt;br&gt;&amp;gt; resulting graphs look cool. But when it comes to performance things
&lt;br&gt;&amp;gt; look realy bad.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Creating a little test graph with rrdtool 1.2 (libart/freetype)
&lt;br&gt;&amp;gt; takes about 0.01s while the same graph with (cairo/pango) takes
&lt;br&gt;&amp;gt; 0.2s in other words, I am seeing a 20 times slow down. Creating
&lt;br&gt;&amp;gt; several graphs in the same session does not change things much.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I have sat down with callgrind to analyze and found that 80% of the
&lt;br&gt;&amp;gt; time is spend in the
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; pango_font_map_load_fontset
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; function. I bet I am doing something terribly wrong here, since I
&lt;br&gt;&amp;gt; use the same font in only 2 sizes all over the graph.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I have based my code on the example in the documentation
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://developer.gimp.org/api/2.0/pango/pango-Cairo-Rendering.html#rotated-example&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://developer.gimp.org/api/2.0/pango/pango-Cairo-Rendering.html#rotated-example&lt;/a&gt;&lt;br&gt;&amp;gt; but maybe this is not optimal. I tried to add some caching but it
&lt;br&gt;&amp;gt; did not help much.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I have put a few details up on
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &lt;a href=&quot;http://tobi.oetiker.ch/rrd_pango/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://tobi.oetiker.ch/rrd_pango/&lt;/a&gt;&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; any ideas ?
&lt;/div&gt;&lt;br&gt;Hi Tobias,
&lt;br&gt;&lt;br&gt;The part creating the layout looks good. &amp;nbsp;Any *interesting* thing will be
&lt;br&gt;hidden in other parts of the code, namely the code calling this function. &amp;nbsp;In
&lt;br&gt;general I'm quite surprised that you are hitting the load_fontset() path all
&lt;br&gt;the time as the fontsets should be cached and simply reused. &amp;nbsp;One way to debug
&lt;br&gt;it is to run with FC_DEBUG=1 and look for all different Sort Patterns passed
&lt;br&gt;to fontconfig and see how they differ (I'm guessing minor difference in the size).
&lt;br&gt;&lt;br&gt;&lt;br&gt;behdad
&lt;br&gt;&lt;br&gt;&amp;gt; cheers
&lt;br&gt;&amp;gt; tobi
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19246149&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango---fontconfig---cairo-performance-with-rrdtool-tp19241064p19246149.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19241064</id>
	<title>pango / fontconfig / cairo performance with rrdtool</title>
	<published>2008-08-31T03:36:02Z</published>
	<updated>2008-08-31T03:36:02Z</updated>
	<author>
		<name>Tobias Oetiker-3</name>
	</author>
	<content type="html">Wizards,
&lt;br&gt;&lt;br&gt;A few months back I ported rrdtool (www.rrdtool.org) over from
&lt;br&gt;libart/freetype to cairo/pango. It all went quite well and the
&lt;br&gt;resulting graphs look cool. But when it comes to performance things
&lt;br&gt;look realy bad.
&lt;br&gt;&lt;br&gt;Creating a little test graph with rrdtool 1.2 (libart/freetype)
&lt;br&gt;takes about 0.01s while the same graph with (cairo/pango) takes
&lt;br&gt;0.2s in other words, I am seeing a 20 times slow down. Creating
&lt;br&gt;several graphs in the same session does not change things much.
&lt;br&gt;&lt;br&gt;I have sat down with callgrind to analyze and found that 80% of the
&lt;br&gt;time is spend in the
&lt;br&gt;&lt;br&gt;&amp;nbsp; pango_font_map_load_fontset
&lt;br&gt;&lt;br&gt;function. I bet I am doing something terribly wrong here, since I
&lt;br&gt;use the same font in only 2 sizes all over the graph.
&lt;br&gt;&lt;br&gt;I have based my code on the example in the documentation
&lt;br&gt;&lt;a href=&quot;http://developer.gimp.org/api/2.0/pango/pango-Cairo-Rendering.html#rotated-example&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://developer.gimp.org/api/2.0/pango/pango-Cairo-Rendering.html#rotated-example&lt;/a&gt;&lt;br&gt;but maybe this is not optimal. I tried to add some caching but it
&lt;br&gt;did not help much.
&lt;br&gt;&lt;br&gt;I have put a few details up on
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://tobi.oetiker.ch/rrd_pango/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://tobi.oetiker.ch/rrd_pango/&lt;/a&gt;&lt;br&gt;&lt;br&gt;any ideas ?
&lt;br&gt;&lt;br&gt;cheers
&lt;br&gt;tobi
&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
&lt;br&gt;&lt;a href=&quot;http://it.oetiker.ch&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://it.oetiker.ch&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19241064&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;tobi@...&lt;/a&gt; ++41 62 775 9902 / sb: -9900
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19241064&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango---fontconfig---cairo-performance-with-rrdtool-tp19241064p19241064.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19230799</id>
	<title>Win32: Pango font problem</title>
	<published>2008-08-29T23:15:33Z</published>
	<updated>2008-08-29T23:15:33Z</updated>
	<author>
		<name>Vahid Nasehi</name>
	</author>
	<content type="html">&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot;&gt;&lt;tr&gt;&lt;td valign=&quot;top&quot; style=&quot;font: inherit;&quot;&gt;
I have a problem with Pango in Win32. Consider that I have an initialized variable of type&lt;br&gt;
LOGFONTW. In the following code:&lt;br&gt;
&lt;br&gt;
LOGFONTW *LogFont;&lt;br&gt;
// Initialize LogFont&lt;br&gt;
PangoContext *pc = pango_win32_get_context();&lt;br&gt;
PangoFontDescription *font_desc =&lt;br&gt;
pango_win32_font_description_&lt;div id=&quot;:52&quot; class=&quot;ArwC7c ckChnd&quot;&gt;&lt;wbr&gt;from_logfontw(LogFont);&lt;br&gt;
pango_context_set_font_&lt;wbr&gt;description(pc, font_desc);&lt;br&gt;
PangoFont *pf := pango_context_load_font(pc, font_desc);&lt;br&gt;
PangoFontMetrics *fm := pango_font_get_metrics(pf, NULL);&lt;br&gt;
&lt;br&gt;
everything is fine until we reach pango_font_get_metrics. It seems that this&lt;br&gt;
function  avoids the provided font and resets the font to the default font and returns the metrics of default font.&lt;br&gt;
&lt;br&gt;
Could anybody tell me what's wrong here?&lt;br&gt;
&lt;br&gt;
Kind regards,&lt;br&gt;
Vahid.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;



      &lt;br /&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19230799&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/Win32%3A-Pango-font-problem-tp19230799p19230799.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19112897</id>
	<title>Re: adding elastic tabstops to a widget</title>
	<published>2008-08-22T11:13:38Z</published>
	<updated>2008-08-22T11:13:38Z</updated>
	<author>
		<name>Owen Taylor</name>
	</author>
	<content type="html">On Tue, 2008-08-19 at 23:39 +0200, Nick Gravgaard wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi all,
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I'm trying to make a proper GTK text editing widget that supports
&lt;br&gt;&amp;gt; elastic tabstops [1] with a view to being able to use it in the near
&lt;br&gt;&amp;gt; future in a PyGTK project (a programmer's text editor), and perhaps one
&lt;br&gt;&amp;gt; day getting it added to GtkTextView or GtkSourceView.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I have something pretty close to being finished. I've developed it by
&lt;br&gt;&amp;gt; hacking the main Pango and GTK code directly rather than making new GTK
&lt;br&gt;&amp;gt; objects that inherit from the standard objects - I figured I'd get the
&lt;br&gt;&amp;gt; functionality working properly before moving the code into new files. It
&lt;br&gt;&amp;gt; consists of 2 parts:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 1. Modified PangoTab structure to contain &amp;quot;width&amp;quot; (distance between tab
&lt;br&gt;&amp;gt; characters) and &amp;quot;contents_width&amp;quot; (width of text between tabs) values,
&lt;br&gt;&amp;gt; instead of &amp;quot;location&amp;quot; (distance from left margin to tab).
&lt;/div&gt;[...]
&lt;br&gt;&lt;br&gt;&amp;gt; 2. Modified gtktextview.c (or gtktextlayout.c - not sure which is a
&lt;br&gt;&amp;gt; better place) to get and set PangoTabs' width and contents_width values
&lt;br&gt;&amp;gt; as text is inserted/deleted etc. This makes up most of the code.
&lt;br&gt;[...]
&lt;br&gt;&lt;br&gt;I talked with some with Nick about this yesterday on IRC and wanted to
&lt;br&gt;summarize here.
&lt;br&gt;&lt;br&gt;My personal opinion on the elastic tab idea is that it's quite neat, and
&lt;br&gt;if tabs worked that way, my life would be better. But it's hard for me
&lt;br&gt;to see how to get from the way that tabs work now to the elastic tabs
&lt;br&gt;model ... I wouldn't want to commit code that used elastic tabs to a
&lt;br&gt;public project because then it would be indented weirdly for everybody
&lt;br&gt;who didn't have elastic tabs. So, I think it's better to focus on how we
&lt;br&gt;can make it possible to implement an elastic-tabs editor with
&lt;br&gt;GtkTextView rather than adding the feature itself to GtkTextView. 
&lt;br&gt;&lt;br&gt;It turns out that the PangoTab changes are mostly an optimization .. to
&lt;br&gt;be able to use the same structure to set tabs on a PangoLayout as to be
&lt;br&gt;able to store the cached lengths of the different segments of a line.
&lt;br&gt;So, I don't think they are needed in 
&lt;br&gt;&lt;br&gt;It also seems that you should mostly be able to do what is needed for
&lt;br&gt;GtkTextView using the public API from a subclass or application. There
&lt;br&gt;is one missing piece:
&lt;br&gt;&lt;br&gt;&amp;nbsp;- You need to be able to tell when parts of the GtkTextView are 
&lt;br&gt;&amp;nbsp; &amp;nbsp;revalidated (that is, layout has happpened for those lines.)
&lt;br&gt;&lt;br&gt;Right now, the only way to do this is to get the not-really-public
&lt;br&gt;GtkTextLayout object for the GtkTextView and connect to it's ::changed
&lt;br&gt;signal. This is hackish from C (requires accessing a non-public
&lt;br&gt;structure field), and much more hackish from Python (I gave Nick some
&lt;br&gt;code using ctypes that manages to pull out the GtkTextLayout with some
&lt;br&gt;effort.) And such hacks won't work at all in GTK+ 3.0. So, I think a
&lt;br&gt;::range-validated signal on GtkTextView would be a good addtion.
&lt;br&gt;&lt;br&gt;It also would be useful to have a way of attaching &amp;quot;user data&amp;quot; to a line
&lt;br&gt;of a GtkTextView. (In this case, what you want to store is a cache of
&lt;br&gt;the segment widths for a line.) It is possible to keep a lookaside data
&lt;br&gt;structure in sync with the GtkTextView, but it's a bit awkward and
&lt;br&gt;inefficient.
&lt;br&gt;&lt;br&gt;- Owen
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19112897&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/adding-elastic-tabstops-to-a-widget-tp19059223p19112897.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19075562</id>
	<title>Re: adding elastic tabstops to a widget</title>
	<published>2008-08-20T11:34:38Z</published>
	<updated>2008-08-20T11:34:38Z</updated>
	<author>
		<name>Nick Gravgaard</name>
	</author>
	<content type="html">On Wed, 20 Aug 2008 11:30:56 -0400, &amp;quot;Havoc Pennington&amp;quot; &amp;lt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19075562&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;hp@...&lt;/a&gt;&amp;gt;
&lt;br&gt;said:
&lt;br&gt;&amp;gt; Previous thread on this for reference spans three months:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://mail.gnome.org/archives/gtk-devel-list/2007-July/msg00046.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/archives/gtk-devel-list/2007-July/msg00046.html&lt;/a&gt;&lt;br&gt;&amp;gt; &lt;a href=&quot;http://mail.gnome.org/archives/gtk-devel-list/2007-August/msg00086.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/archives/gtk-devel-list/2007-August/msg00086.html&lt;/a&gt;&lt;br&gt;&amp;gt; &lt;a href=&quot;http://mail.gnome.org/archives/gtk-devel-list/2007-September/msg00088.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/archives/gtk-devel-list/2007-September/msg00088.html&lt;/a&gt;&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; (save everyone else the googling)
&lt;br&gt;&lt;br&gt;Thanks - I should have thought of including those.
&lt;br&gt;&lt;br&gt;I should probably explain that the difference between then and now is
&lt;br&gt;that my new implementation caches the tab structure and width of the
&lt;br&gt;text in each &amp;quot;cell&amp;quot; rather than recalculating it all every time any
&lt;br&gt;change is made to the contents of the buffer (horribly inefficient!).
&lt;br&gt;The old code was more of a proof of concept than a proper
&lt;br&gt;implementation.
&lt;br&gt;&lt;br&gt;Nick
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19075562&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/adding-elastic-tabstops-to-a-widget-tp19059223p19075562.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19059303</id>
	<title>Re: On font dialog default sample string selection</title>
	<published>2008-08-19T14:43:31Z</published>
	<updated>2008-08-19T14:43:31Z</updated>
	<author>
		<name>Wouter Bolsterlee-2</name>
	</author>
	<content type="html">2008-08-18 klockan 06:14 skrev Behdad Esfahbod:
&lt;br&gt;&amp;gt; Note that Gtk+ can also use a special translatable string to let translators
&lt;br&gt;&amp;gt; decide what string should be used for their language. &amp;nbsp;Let's call this
&lt;br&gt;&amp;gt; &amp;quot;current locale's preferred sample string&amp;quot;.
&lt;br&gt;&lt;br&gt;There's a bunch of sample strings (mostly pangrams) in gnome-specimen
&lt;br&gt;translations.
&lt;br&gt;&lt;br&gt;&amp;nbsp; mvrgr, Wouter
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;:wq &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mail &lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19059303&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uws@...&lt;/a&gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; web &lt;a href=&quot;http://uwstopia.nl&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://uwstopia.nl&lt;/a&gt;&lt;br&gt;&lt;br&gt;never lived never lived :: i'm in love &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-- black rebel motorcycle club
&lt;br&gt;&lt;br /&gt; &lt;br /&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19059303&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://www.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;signature.asc&lt;/strong&gt; (253 bytes) &lt;a href=&quot;http://www.nabble.com/attachment/19059303/0/signature.asc&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/On-font-dialog-default-sample-string-selection-tp19025829p19059303.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19059223</id>
	<title>adding elastic tabstops to a widget</title>
	<published>2008-08-19T14:39:07Z</published>
	<updated>2008-08-19T14:39:07Z</updated>
	<author>
		<name>Nick Gravgaard</name>
	</author>
	<content type="html">Hi all,
&lt;br&gt;&lt;br&gt;I'm trying to make a proper GTK text editing widget that supports
&lt;br&gt;elastic tabstops [1] with a view to being able to use it in the near
&lt;br&gt;future in a PyGTK project (a programmer's text editor), and perhaps one
&lt;br&gt;day getting it added to GtkTextView or GtkSourceView.
&lt;br&gt;&lt;br&gt;I have something pretty close to being finished. I've developed it by
&lt;br&gt;hacking the main Pango and GTK code directly rather than making new GTK
&lt;br&gt;objects that inherit from the standard objects - I figured I'd get the
&lt;br&gt;functionality working properly before moving the code into new files. It
&lt;br&gt;consists of 2 parts:
&lt;br&gt;&lt;br&gt;1. Modified PangoTab structure to contain &amp;quot;width&amp;quot; (distance between tab
&lt;br&gt;characters) and &amp;quot;contents_width&amp;quot; (width of text between tabs) values,
&lt;br&gt;instead of &amp;quot;location&amp;quot; (distance from left margin to tab). Changed
&lt;br&gt;&amp;quot;get_tab_pos&amp;quot; function in pango-layout.c to accumulate &amp;quot;width&amp;quot;s leading
&lt;br&gt;up to and including a given index, instead of returning the &amp;quot;location&amp;quot;
&lt;br&gt;for that index. This allows programs to just change one cell's width
&lt;br&gt;without getting every leading cell's location and changing the location
&lt;br&gt;of every subsequent cell on that line (IMO this makes the API easier to
&lt;br&gt;use regardless of the elastic tabstop functionality), as well as letting
&lt;br&gt;my elastic tabstop code cache the widths of the text betwen cells for
&lt;br&gt;performance reasons (I don't want to have to recalculate it for
&lt;br&gt;potentially many lines every time a character is inserted/deleted).
&lt;br&gt;Note: with a bit of work I suspect my contents_width cache values could
&lt;br&gt;also be used to improve the performance of conventional tabstops.
&lt;br&gt;&lt;br&gt;2. Modified gtktextview.c (or gtktextlayout.c - not sure which is a
&lt;br&gt;better place) to get and set PangoTabs' width and contents_width values
&lt;br&gt;as text is inserted/deleted etc. This makes up most of the code.
&lt;br&gt;&lt;br&gt;&lt;br&gt;So, my questions are:
&lt;br&gt;&lt;br&gt;What do I do next given my goals of being able to use this stuff in a
&lt;br&gt;PyGTK project and perhaps one day getting it added to GTK proper?
&lt;br&gt;&lt;br&gt;and
&lt;br&gt;&lt;br&gt;How do I make an object which inherits it's functionality from, say,
&lt;br&gt;GtkSourceView, adds my functionality described in point 2 above, and
&lt;br&gt;uses my modified PangoTab structure and pango-layout functionality
&lt;br&gt;described in point 1?
&lt;br&gt;&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;Nick
&lt;br&gt;&lt;br&gt;[1]
&lt;br&gt;&lt;a href=&quot;http://nickgravgaard.com/elastictabstops&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://nickgravgaard.com/elastictabstops&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19059223&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/adding-elastic-tabstops-to-a-widget-tp19059223p19059223.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-19025829</id>
	<title>On font dialog default sample string selection</title>
	<published>2008-08-17T21:14:54Z</published>
	<updated>2008-08-17T21:14:54Z</updated>
	<author>
		<name>Behdad Esfahbod-3</name>
	</author>
	<content type="html">[CC'ing gtk-i18n-list]
&lt;br&gt;&lt;br&gt;Henrique Carvalho Alves wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; 2008/8/17 Henrique Carvalho Alves &amp;lt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19025829&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;hcarvalhoalves@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&amp;gt;&amp;gt; 2008/8/17 Sven Neumann &amp;lt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19025829&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;sven@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Using the font name for preview does not work. You could try to add some
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; heuristics that select a reasonable text depending on font coverage. But
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; that is likely going to fail in some corner cases. So whatever you end
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; up doing, you should give the user a way to change the text used for
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; preview.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Sven
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; You're right. The current font dialog also fails for that (see Ubuntu,
&lt;br&gt;&amp;gt;&amp;gt; which ships some fonts for other languages, and the preview just
&lt;br&gt;&amp;gt;&amp;gt; presents a default &amp;quot;abcdABCDE&amp;quot; text in sans). I too guess finding the
&lt;br&gt;&amp;gt;&amp;gt; glyph coverage for the font is hard and not reliable. As stated on the
&lt;br&gt;&amp;gt;&amp;gt; last reply, making the preview editable is better, of course. The
&lt;br&gt;&amp;gt;&amp;gt; question here: is using the font name and size as preview text a
&lt;br&gt;&amp;gt;&amp;gt; better default?
&lt;/div&gt;&lt;br&gt;The text should be editable, sure.
&lt;br&gt;&lt;br&gt;It's still useful to have a better default preview text. &amp;nbsp;It may also be
&lt;br&gt;useful to have a drop down of some other preset texts the font supports.
&lt;br&gt;&lt;br&gt;For preset texts, there's a lot around:
&lt;br&gt;&lt;br&gt;&amp;nbsp; - For Latin: The quick brown... [1], abcd..., &amp;quot;Hamburgfonts&amp;quot; [2], Lorem
&lt;br&gt;ipsum [3],
&lt;br&gt;&lt;br&gt;&amp;nbsp; - Font samples for other lagnauges [4]
&lt;br&gt;&lt;br&gt;&amp;nbsp; - Pangrams for other languages [5],
&lt;br&gt;&lt;br&gt;&amp;nbsp; - When no languages are available, &amp;quot;I can eat glass&amp;quot; [6]
&lt;br&gt;&lt;br&gt;In fact, these can go right in Pango. &amp;nbsp;There's already API for that:
&lt;br&gt;pango_language_get_sample_string(). &amp;nbsp; There's a bug to make that more useful
&lt;br&gt;[7]. &amp;nbsp;I may have been motivated now to fix that for tomorrow's release.
&lt;br&gt;&lt;br&gt;Note that Gtk+ can also use a special translatable string to let translators
&lt;br&gt;decide what string should be used for their language. &amp;nbsp;Let's call this
&lt;br&gt;&amp;quot;current locale's preferred sample string&amp;quot;.
&lt;br&gt;&lt;br&gt;I have also added API to Pango already to be able to tell if a font can render
&lt;br&gt;a particular string. &amp;nbsp;Just turn fallback off in your layout
&lt;br&gt;(pango_attr_fallback_new()), then use pango_layout_get_unknown_glyphs_count()
&lt;br&gt;and divide that by the number of characters in the string.
&lt;br&gt;&lt;br&gt;Next is to decide which language to show by default, and which ones to show in
&lt;br&gt;the drop down. &amp;nbsp;Here's what I propose:
&lt;br&gt;&lt;br&gt;&amp;nbsp; - If the font can render the current locale's preferred sample string, that
&lt;br&gt;should be the default, otherwise pick one of the supported strings
&lt;br&gt;arbitrarily. &amp;nbsp;For bonus, prefer those that use scripts other than Latin.
&lt;br&gt;Among those, take one that uses the PangoScript with smaller/larger value,
&lt;br&gt;depending on whether you want to promote common or exotic languages :P.
&lt;br&gt;&lt;br&gt;&amp;nbsp; - To the list add all strings that can be rendered by the font. &amp;nbsp;If the
&lt;br&gt;Pango fontmap being used is not a PangoFcFontMap, simply add the Latin ones
&lt;br&gt;(other than the current locale's preferred sample string that is). &amp;nbsp;If it is a
&lt;br&gt;PangoFcFontMap:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; * Get a PangoFont of the font at hand (simply use any string and fallbacks
&lt;br&gt;off)
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; * Get the &amp;quot;pattern&amp;quot; GObject property of the PangoFont (which actually is a
&lt;br&gt;PangoFcFont) which is a FcPattern *. &amp;nbsp;Note that this fails with older Pango
&lt;br&gt;versions, so be prepared for handling that.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; * Fetch all the FC_LANG elements of the pattern.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; * For all those languages, use pango_language_get_sample_string() and add
&lt;br&gt;them. &amp;nbsp;Note that that function returns a junk string if it doesn't know about
&lt;br&gt;the language. &amp;nbsp;This can be detected by comparing the return value to that of
&lt;br&gt;pango_language_get_sample_string(pango_lanugage_from_string (&amp;quot;xx&amp;quot;)).
&lt;br&gt;&lt;br&gt;That's all. &amp;nbsp;I don't mind jumping in and implementing this when someone has a
&lt;br&gt;patch against GTK+ to use the right widget there.
&lt;br&gt;&lt;br&gt;&lt;br&gt;behdad
&lt;br&gt;&lt;br&gt;[1] &lt;a href=&quot;http://en.wikipedia.org/wiki/The_quick_brown_fox_jumps_over_the_lazy_dog&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://en.wikipedia.org/wiki/The_quick_brown_fox_jumps_over_the_lazy_dog&lt;/a&gt;&lt;br&gt;[2] &lt;a href=&quot;http://en.wikipedia.org/wiki/Hamburgefonts&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://en.wikipedia.org/wiki/Hamburgefonts&lt;/a&gt;&lt;br&gt;[3] &lt;a href=&quot;http://en.wikipedia.org/wiki/Lorem_ipsum&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://en.wikipedia.org/wiki/Lorem_ipsum&lt;/a&gt;&lt;br&gt;[4] &lt;a href=&quot;http://en.wikipedia.org/wiki/Sample_Font_Displays_In_Other_Languages&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://en.wikipedia.org/wiki/Sample_Font_Displays_In_Other_Languages&lt;/a&gt;&lt;br&gt;[5] &lt;a href=&quot;http://en.wikipedia.org/wiki/List_of_pangrams#Other_languages&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://en.wikipedia.org/wiki/List_of_pangrams#Other_languages&lt;/a&gt;&lt;br&gt;[6] &lt;a href=&quot;http://svn.gnome.org/viewvc/pango/trunk/pango-view/GLASS.txt?view=markup&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://svn.gnome.org/viewvc/pango/trunk/pango-view/GLASS.txt?view=markup&lt;/a&gt;&lt;br&gt;[7] &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=473806&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://bugzilla.gnome.org/show_bug.cgi?id=473806&lt;/a&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=19025829&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/On-font-dialog-default-sample-string-selection-tp19025829p19025829.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18969257</id>
	<title>cairo 1.8 and pango 1.22 and GNOME 2.24</title>
	<published>2008-08-13T12:07:27Z</published>
	<updated>2008-08-13T12:07:27Z</updated>
	<author>
		<name>Behdad Esfahbod-3</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;It was pointed that my cairo 1.7.2 release mail was not very clear about
&lt;br&gt;the timing. &amp;nbsp;Just a clarification that cairo 1.8 WILL be released before
&lt;br&gt;pango 1.22, which WILL be released before GNOME 2.24 tarballs due date.
&lt;br&gt;&lt;br&gt;Also, pango 1.22 will REQUIRE cairo 1.8.
&lt;br&gt;&lt;br&gt;That's all,
&lt;br&gt;&lt;br&gt;behdad
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18969257&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/cairo-1.8-and-pango-1.22-and-GNOME-2.24-tp18969257p18969257.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18968523</id>
	<title>Re: Pango-1.21.4 released [unstable]</title>
	<published>2008-08-13T11:21:58Z</published>
	<updated>2008-08-13T11:21:58Z</updated>
	<author>
		<name>Behdad Esfahbod-3</name>
	</author>
	<content type="html">Alexander Jones wrote:
&lt;br&gt;&amp;gt; Still no RGBA colours... or opacity attributes :(
&lt;br&gt;&lt;br&gt;Bugs need to be discussed on bugzilla and a solution found before fixes
&lt;br&gt;magically appearing in next release. &amp;nbsp;I still have no definite solution to this.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=413941&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://bugzilla.gnome.org/show_bug.cgi?id=413941&lt;/a&gt;&lt;br&gt;&lt;br&gt;Though I'm getting some better ideas, in the context of attribute extension
&lt;br&gt;APIs I like to add:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=511130&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://bugzilla.gnome.org/show_bug.cgi?id=511130&lt;/a&gt;&lt;br&gt;&lt;br&gt;However, this just proves that the flat attribute inheritance I propose
&lt;br&gt;there is suboptimal.
&lt;br&gt;&lt;br&gt;&lt;br&gt;behdad
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18968523&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/Pango-1.21.4-released--unstable--tp18935927p18968523.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18935927</id>
	<title>Pango-1.21.4 released [unstable]</title>
	<published>2008-08-11T16:58:08Z</published>
	<updated>2008-08-11T16:58:08Z</updated>
	<author>
		<name>Behdad Esfahbod-3</name>
	</author>
	<content type="html">-----BEGIN PGP SIGNED MESSAGE-----
&lt;br&gt;Hash: SHA1
&lt;br&gt;&lt;br&gt;Pango-1.21.4 is now available for download at:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://download.gnome.org/sources/pango/1.21/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://download.gnome.org/sources/pango/1.21/&lt;/a&gt;&lt;br&gt;or
&lt;br&gt;&amp;nbsp; ftp://ftp.gtk.org/pub/pango/1.21
&lt;br&gt;&lt;br&gt;75f8dea346a160f8f45c47cd30e6ab3b &amp;nbsp;pango-1.21.4.tar.bz2
&lt;br&gt;3a12cb5a7f2dc562aab415d764810f4e &amp;nbsp;pango-1.21.4.tar.gz
&lt;br&gt;&lt;br&gt;I figured Vincent is at Akademy busy distracting the KDE folks from
&lt;br&gt;hacking, so I thought I may sneak in some last-minute API additions
&lt;br&gt;while he's not paying attention. &amp;nbsp;All the additions are pretty
&lt;br&gt;straightforward. &amp;nbsp;The more complex ones (supporting application fonts)
&lt;br&gt;did not make it this time around and so are pushed forward for the next
&lt;br&gt;Pango stable series :(.
&lt;br&gt;&lt;br&gt;Notes:
&lt;br&gt;&lt;br&gt;&amp;nbsp;* This is unstable development release. While it has had
&lt;br&gt;&amp;nbsp; &amp;nbsp;fairly extensive testing, there are likely bugs
&lt;br&gt;&amp;nbsp; &amp;nbsp;remaining to be found. This release should not be used
&lt;br&gt;&amp;nbsp; &amp;nbsp;in production.
&lt;br&gt;&lt;br&gt;&amp;nbsp;* Installing this version will overwrite your existing
&lt;br&gt;&amp;nbsp; &amp;nbsp;copy of Pango. If you have problems, you'll need
&lt;br&gt;&amp;nbsp; &amp;nbsp;to reinstall Pango-1.20.x
&lt;br&gt;&lt;br&gt;&amp;nbsp;* Bugs should be reported to &lt;a href=&quot;http://bugzilla.gnome.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://bugzilla.gnome.org&lt;/a&gt;.
&lt;br&gt;&lt;br&gt;About Pango
&lt;br&gt;===========
&lt;br&gt;&lt;br&gt;Pango is a library for layout and rendering of text, with an emphasis
&lt;br&gt;on internationalization. Pango can be used anywhere that text layout
&lt;br&gt;is needed, though most of the work on Pango so far has been done in
&lt;br&gt;the context of the GTK+ widget toolkit. Pango forms the core of text
&lt;br&gt;and font handling for GTK+-2.x.
&lt;br&gt;&lt;br&gt;Pango is designed to be modular; the core Pango layout engine can
&lt;br&gt;be used with different font backends. There are three basic backends,
&lt;br&gt;with multiple options for rendering with each.
&lt;br&gt;&lt;br&gt;&amp;nbsp;- Client side fonts using the FreeType and fontconfig libraries.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Rendering can be with with Cairo or Xft libraries, or directly
&lt;br&gt;&amp;nbsp; &amp;nbsp;to an in-memory buffer with no additional libraries.
&lt;br&gt;&lt;br&gt;&amp;nbsp;- Native fonts on Microsoft Windows using Uniscribe for
&lt;br&gt;&amp;nbsp; &amp;nbsp;complex-text handling. Rendering can be done via Cairo or
&lt;br&gt;&amp;nbsp; &amp;nbsp;directly using the native Win32 API.
&lt;br&gt;&lt;br&gt;&amp;nbsp;- Native fonts on MacOS X, rendering via Cairo.
&lt;br&gt;&lt;br&gt;The integration of Pango with Cairo (&lt;a href=&quot;http://cairographics.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cairographics.org&lt;/a&gt;)
&lt;br&gt;provides a complete solution with high quality text handling
&lt;br&gt;and graphics rendering.
&lt;br&gt;&lt;br&gt;Dynamically loaded modules then handle text layout for particular
&lt;br&gt;combinations of script and font backend. Pango ships with a wide
&lt;br&gt;selection of modules, including modules for Hebrew, Arabic,
&lt;br&gt;Hangul, Thai, and a number of Indic scripts. Virtually all of the
&lt;br&gt;world's major scripts are supported.
&lt;br&gt;&lt;br&gt;As well as the low level layout rendering routines, Pango includes
&lt;br&gt;PangoLayout, a high level driver for laying out entire blocks of text,
&lt;br&gt;and routines to assist in editing internationalized text.
&lt;br&gt;&lt;br&gt;More information about Pango is available from &lt;a href=&quot;http://www.pango.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.pango.org/&lt;/a&gt;.
&lt;br&gt;Bugs should be reported to &lt;a href=&quot;http://bugzilla.gnome.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://bugzilla.gnome.org&lt;/a&gt;.
&lt;br&gt;&lt;br&gt;Pango 1.21.4 depends on version 2.17.3 or newer of the GLib
&lt;br&gt;library and version 1.7.4 or newer of the cairo library (if the
&lt;br&gt;cairo backend is desired); more information about GLib and cairo
&lt;br&gt;can be found at &lt;a href=&quot;http://www.gtk.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.gtk.org/&lt;/a&gt;&amp;nbsp;and &lt;a href=&quot;http://cairographics.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cairographics.org/&lt;/a&gt;&lt;br&gt;respectively.
&lt;br&gt;&lt;br&gt;Overview of changes between 1.21.3 and 1.21.4
&lt;br&gt;=============================================
&lt;br&gt;- - Use cairo_show_text_glyphs() if target cairo surface supports that.
&lt;br&gt;&amp;nbsp; This is done by adding a new PangoRenderer method, draw_glyph_item().
&lt;br&gt;&amp;nbsp; Custom PangoRenderer implementations that delegate to pango_cairo
&lt;br&gt;&amp;nbsp; may want to implement this method if they target PDF files.
&lt;br&gt;- - Requires cairo &amp;gt;= 1.7.4 now
&lt;br&gt;- - Win32 build improvements
&lt;br&gt;- - Justify lines broken by U+2028 LINE SEPARATOR
&lt;br&gt;- - Various small fixes and improvements
&lt;br&gt;- - New API additions:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; New public API:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PangoRenderer::draw_glyph_item()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango_renderer_draw_glyph_item()
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Make layout and layout-line default renderers go through
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; draw_glyph_item(), which then by default falls back to
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; draw_glyphs(). &amp;nbsp;The advantage in draw_glyph_item() is that it
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; has access to the text and cluster information.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; New public API, for iterating a PangoGlyphItem:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PangoGlyphItemIter
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PANGO_TYPE_GLYPH_ITEM_ITER
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango_glyph_item_iter_copy()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango_glyph_item_iter_free()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango_glyph_item_iter_init_start()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango_glyph_item_iter_init_end()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango_glyph_item_iter_next_cluster()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango_glyph_item_iter_prev_cluster()
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Make the following previously backend-only API public:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango_context_new()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango_context_set_font_map()
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; This also means that bindings are recommended to allow
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; instantiation of pango.Context. &amp;nbsp;This was discouraged before.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; New public API:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango_font_map_create_context()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; This is equivalent to pango_context_new() followed by an
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; immediate pango_context_set_font_map(). &amp;nbsp;This change also
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; deprecates various per-fontmap-type context constructors:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Deprecate pango_cairo_font_map_create_context().
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Deprecate pango_fc_font_map_create_context().
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Deprecate pango_ft2_font_map_create_context().
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Deprecate pango_win32_get_context().
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Deprecate pango_xft_get_context().
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Deprecate pango_x_get_context().
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Language bindings are encouraged to bind
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango.Fontmap.create_context() and remove the create_context()
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; method from subclass implementations.
&lt;br&gt;&lt;br&gt;&lt;br&gt;- - Bugs fixed in this release:
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Bug 547303 – pango_layout_get_cursor_pos crashes on certain text
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; buffers
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Fedora Bug 457883 - Sindhi Characters are not supported in
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pango [U+097B-U+097F]
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Patch from Pravin Satpute
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Bug 441654 – prefix fails when more than one base characters (as
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; conjuncts) present after a half form the next prefix renders
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; incorrectly
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Patch from &amp;nbsp;Rahul Bhalerao
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Bug 546534 – pango_cairo_font_map_set_default(NULL) errs
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Bug 431394 – Use pango_glyph_item_iter in more places
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Bug 377948 – Make pango_glyph_item_iter public
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Bug 472625 – Add draw_glyph_item() to PangoRenderer
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Bug 540592 – Crash in HB_GSUB_Apply_String with Linux-Libertine font
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Bug 540036 – Doesn't link to fontconfig
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Bug 380094 – Fix split matra rendering bug for Kannada language
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Bug 536017 – Remove SF_MPRE_FIXUP from Sinhala script flags
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Patch by Harshula
&lt;br&gt;&lt;br&gt;11 August 2008
&lt;br&gt;Behdad Esfahbod
&lt;br&gt;-----BEGIN PGP SIGNATURE-----
&lt;br&gt;Version: GnuPG v1.4.9 (GNU/Linux)
&lt;br&gt;Comment: Using GnuPG with Fedora - &lt;a href=&quot;http://enigmail.mozdev.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://enigmail.mozdev.org&lt;/a&gt;&lt;br&gt;&lt;br&gt;iEYEARECAAYFAkig0g8ACgkQn+4E5dNTERV+yQCfb3b+JHGACR6AUZOAXH1auMEU
&lt;br&gt;qu4Anj5MvfsrEPTsvHGl9O/XzCuicrju
&lt;br&gt;=+b5H
&lt;br&gt;-----END PGP SIGNATURE-----
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18935927&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/Pango-1.21.4-released--unstable--tp18935927p18935927.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18725717</id>
	<title>Re: pango-view and libpangoft dependencies</title>
	<published>2008-07-29T20:57:36Z</published>
	<updated>2008-07-29T20:57:36Z</updated>
	<author>
		<name>Ryan Schmidt-43</name>
	</author>
	<content type="html">&lt;br&gt;On Jul 28, 2008, at 11:10, Julien Palmas wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I'm trying to build pango 1.21.3 on my Mac OS X 10.5 box.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I get a build error like this one :
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; mv -f .deps/viewer-pangocairo.Tpo .deps/viewer-pangocairo.Po
&lt;br&gt;&amp;gt; make[3]: *** No rule to make target `../pango/libpangoft2-1.0.la', &amp;nbsp;
&lt;br&gt;&amp;gt; needed by `pango-view'. &amp;nbsp;Stop.
&lt;br&gt;&amp;gt; make[2]: *** [all] Error 2
&lt;br&gt;&amp;gt; make[1]: *** [all-recursive] Error 1
&lt;br&gt;&amp;gt; make: *** [all] Error 2
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Looks like a rule is missing.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Can anyone help me on this ?
&lt;/div&gt;&lt;br&gt;I don't see a problem building pango 1.21.3 on Mac OS X 10.4.11 with &amp;nbsp;
&lt;br&gt;Xcode 2.5 or on Mac OS X 10.5.4 with Xcode 3.1, both on Intel Macs.
&lt;br&gt;&lt;br&gt;I added a port pango-devel to MacPorts to build this version of &amp;nbsp;
&lt;br&gt;pango. You could install MacPorts and then see if that portfile works &amp;nbsp;
&lt;br&gt;for you (by typing &amp;quot;sudo port install pango-devel&amp;quot;).
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://www.macports.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.macports.org/&lt;/a&gt;&lt;br&gt;&lt;br&gt;Or if you especially want to compile it yourself, you can look at the &amp;nbsp;
&lt;br&gt;portfile here to see how I did it:
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://trac.macports.org/browser/trunk/dports/x11/pango-devel/Portfile&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://trac.macports.org/browser/trunk/dports/x11/pango-devel/Portfile&lt;/a&gt;&lt;br&gt;&lt;br&gt;Though I'm not doing anything particularly special so I'm not sure &amp;nbsp;
&lt;br&gt;why it's failing for you.
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18725717&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango-view-and-libpangoft-dependencies-tp18693891p18725717.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18693891</id>
	<title>pango-view and libpangoft dependencies</title>
	<published>2008-07-28T09:10:18Z</published>
	<updated>2008-07-28T09:10:18Z</updated>
	<author>
		<name>bartocc</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I'm trying to build pango 1.21.3 on my Mac OS X 10.5 box.
&lt;br&gt;&lt;br&gt;I get a build error like this one :
&lt;br&gt;&lt;br&gt;mv -f .deps/viewer-pangocairo.Tpo .deps/viewer-pangocairo.Po
&lt;br&gt;make[3]: *** No rule to make target `../pango/libpangoft2-1.0.la', &amp;nbsp;
&lt;br&gt;needed by `pango-view'. &amp;nbsp;Stop.
&lt;br&gt;make[2]: *** [all] Error 2
&lt;br&gt;make[1]: *** [all-recursive] Error 1
&lt;br&gt;make: *** [all] Error 2
&lt;br&gt;&lt;br&gt;Looks like a rule is missing.
&lt;br&gt;&lt;br&gt;Can anyone help me on this ?
&lt;br&gt;&lt;br&gt;Thx
&lt;br&gt;Julien
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18693891&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango-view-and-libpangoft-dependencies-tp18693891p18693891.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18536438</id>
	<title>Re: Status of support for Romanian</title>
	<published>2008-07-18T12:39:27Z</published>
	<updated>2008-07-18T12:39:27Z</updated>
	<author>
		<name>Vasile Gaburici</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp;	Here's a short &amp;quot;appendix&amp;quot;. I did a quick test in Open Office since 
&lt;br&gt;it doesn't use pango but ICU (as far as I know). It's less impressive than 
&lt;br&gt;Pango:
&lt;br&gt;&lt;br&gt;* No support for GSUB/latn/ROM/locl (or ccmp). I guess it needs a special
&lt;br&gt;&amp;nbsp; &amp;nbsp;CTL (Complex text layout) module for Romanian, but I don't think there
&lt;br&gt;&amp;nbsp; &amp;nbsp;is any.
&lt;br&gt;&lt;br&gt;* Fonts steal glyphs from similar fonts, but sometimes luck out and seem
&lt;br&gt;&amp;nbsp; &amp;nbsp;to choose inappropriately (sans replaces serif). Here is a little demo:
&lt;br&gt;&amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.cs.umd.edu/~gaburici/oo-ro-font-test.tgz&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.cs.umd.edu/~gaburici/oo-ro-font-test.tgz&lt;/a&gt;. I cannot find a way
&lt;br&gt;&amp;nbsp; &amp;nbsp;to turn off fallback substitution either.
&lt;br&gt;&lt;br&gt;I guess this stuff is mostly Sun's problem, but if you have any comments...
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;Vasile
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18536438&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/Status-of-support-for-Romanian-tp18535703p18536438.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18535703</id>
	<title>Status of support for Romanian</title>
	<published>2008-07-18T11:53:52Z</published>
	<updated>2008-07-18T11:53:52Z</updated>
	<author>
		<name>Vasile Gaburici</name>
	</author>
	<content type="html">&lt;br&gt;The text below is also part of the archive with code and images available 
&lt;br&gt;at: &lt;a href=&quot;http://www.cs.umd.edu/~gaburici/ro-fonts-test.tgz&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.cs.umd.edu/~gaburici/ro-fonts-test.tgz&lt;/a&gt;&lt;br&gt;&lt;br&gt;Here is the summary of the tests (as of July 18, 2008 on Fedora 9):
&lt;br&gt;&lt;br&gt;== Quickie 1: Test for Unicode code points relevant for Romanian ==
&lt;br&gt;&lt;br&gt;Issues (and suggested fixes):
&lt;br&gt;&lt;br&gt;* All PS1 (non-OTF) fonts need an additional mapping from 021A/B to
&lt;br&gt;&amp;nbsp; &amp;nbsp;U+162/3.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;Background: Most PS1 fonts (not OpenType) that ship with Linux distorts
&lt;br&gt;&amp;nbsp; &amp;nbsp;lack the code points U+21A/B (t with comma below) which is the proper
&lt;br&gt;&amp;nbsp; &amp;nbsp;code point for Romanian t with comma below. Thankfully, Adobe once
&lt;br&gt;&amp;nbsp; &amp;nbsp;decided that t with cedilla is not used in any language so the proper
&lt;br&gt;&amp;nbsp; &amp;nbsp;glyphs are usually present at U+162/3, which used to be the unified code
&lt;br&gt;&amp;nbsp; &amp;nbsp;point for t cedilla and t comma below before Unicode 3.0. The Uniscribe
&lt;br&gt;&amp;nbsp; &amp;nbsp;renderer automatically handles this issue by remapping U+21A/B to
&lt;br&gt;&amp;nbsp; &amp;nbsp;U+162/3 when the former glyphs are missing. Unfortunately,
&lt;br&gt;&amp;nbsp; &amp;nbsp;Pango/fonconfig doesn't do this, so most new Romanian documents can only
&lt;br&gt;&amp;nbsp; &amp;nbsp;be displayed with a very narrow font selection.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;Proposed solution: adopt Uniscribe solution; editing the PS1 fonts is
&lt;br&gt;&amp;nbsp; &amp;nbsp;pointless and would violate the license for the commercial ones.
&lt;br&gt;&lt;br&gt;* Liberation fonts lack &amp;quot;s with comma&amp;quot; completely -- the glyph needs to be
&lt;br&gt;&amp;nbsp; &amp;nbsp;added to the fonts. Hopefully, they'll be made into OT fonts at the same
&lt;br&gt;&amp;nbsp; &amp;nbsp;time (see further discussion why this would be good). &amp;quot;T with comma&amp;quot; can
&lt;br&gt;&amp;nbsp; &amp;nbsp;be copied from U+162/3.
&lt;br&gt;&lt;br&gt;== Quickie 2: Test for localized OT forms (GSUB/latn/ROM/{locl,ccmp}) ==
&lt;br&gt;&lt;br&gt;The Adobe/Linotype/Vista industry standard seems to that activating 
&lt;br&gt;ROM/locl should map &amp;quot;s with cedilla&amp;quot; to &amp;quot;s with comma&amp;quot;. Since in Adobe 
&lt;br&gt;(Pro) OT fonts U+162/3 is by default mapped to &amp;quot;t with comma&amp;quot;, activating 
&lt;br&gt;this optional mapping for s renders old, pre-Unicode 3.0 Romanian texts 
&lt;br&gt;with comma below both s and t. Thankfully Pango already handles this!
&lt;br&gt;&lt;br&gt;Funny enough, the MS Uniscribe from XP SP 3 doesn't turn ROM/locl for 
&lt;br&gt;Romanian locale (or at least I don't know how to convince it).
&lt;br&gt;&lt;br&gt;The OT SIL fonts take a slightly different approach, but work with Pango 
&lt;br&gt;nonetheless. First, they have proper cedilla variants for both s and t. 
&lt;br&gt;Second, they don't have a ROM/locl feature, but a ROM/ccmp feature which 
&lt;br&gt;remaps both cedilla variants to comma-below counterparts. I'm not sure 
&lt;br&gt;this approach is entirely correct because the OpenType spec on MS.com says 
&lt;br&gt;that ccmp should not be language sensitive. YMMV, I'm no expert on this. 
&lt;br&gt;[&lt;a href=&quot;http://www.microsoft.com/typography/OTSPEC/features_ae.htm#ccmp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.microsoft.com/typography/OTSPEC/features_ae.htm#ccmp&lt;/a&gt;]
&lt;br&gt;&lt;br&gt;Issues (and suggested fixes):
&lt;br&gt;&lt;br&gt;* DejaVu fonts (which are already OT), do not have a ROM/locl feature.
&lt;br&gt;&amp;nbsp; &amp;nbsp;From what I've seen on typophile.com this is a two line fix in fontlab.
&lt;br&gt;&lt;br&gt;* Pango does not allow an application to set the OT features language
&lt;br&gt;&amp;nbsp; &amp;nbsp;independently from UI language. For instance, there's currently no way
&lt;br&gt;&amp;nbsp; &amp;nbsp;to run gedit with the English UI but to force Romanian localized rendering
&lt;br&gt;&amp;nbsp; &amp;nbsp;for U+015E/F, which is silly because those code points mean nothing in
&lt;br&gt;&amp;nbsp; &amp;nbsp;English. Hopefully somebody there will grok it. See my comments on the
&lt;br&gt;&amp;nbsp; &amp;nbsp;Pango bug at &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=442786&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://bugzilla.gnome.org/show_bug.cgi?id=442786&lt;/a&gt;.
&lt;br&gt;&lt;br&gt;Finally, if this doesn't make any sense to you, there's some further 
&lt;br&gt;background info on the Wikipedia page for the Romanian alphabet.
&lt;br&gt;&lt;br&gt;Much ado for some commas ;)
&lt;br&gt;Vasile
&lt;br&gt;&lt;br&gt;P.S. The Linux console fonts also lack U+219-B code points, but few care 
&lt;br&gt;about the console fonts these days...
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18535703&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/Status-of-support-for-Romanian-tp18535703p18535703.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18488123</id>
	<title>Re: pango doesn't render non-Latin characters with cairo-quartz-font</title>
	<published>2008-07-16T06:59:35Z</published>
	<updated>2008-07-16T06:59:35Z</updated>
	<author>
		<name>Behdad Esfahbod-3</name>
	</author>
	<content type="html">On Tue, 2008-07-15 at 06:19 -0500, Ryan Schmidt wrote:
&lt;br&gt;&amp;gt; I posed this question on July 3 and nobody responded. I also asked &amp;nbsp;
&lt;br&gt;&amp;gt; the cairo list on July 6 and nobody answered there either. Can anyone &amp;nbsp;
&lt;br&gt;&amp;gt; give me any guidance about how to deal with this issue?
&lt;br&gt;&lt;br&gt;If no one replied, chances are no one can give you any guidance about
&lt;br&gt;how to deal with this issue. &amp;nbsp;At some point someone needs to dig into
&lt;br&gt;the code, and that someone is not easy to find because of the
&lt;br&gt;platform-specific nature of your issue.
&lt;br&gt;&lt;br&gt;I'm also surprised how that neither your report nor the &amp;quot;detailed bug
&lt;br&gt;report&amp;quot; even mention what kind of &amp;quot;issues&amp;quot; it's showing. &amp;nbsp;No
&lt;br&gt;screenshots.
&lt;br&gt;&lt;br&gt;&lt;br&gt;behdad
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Jul 3, 2008, at 00:35, Ryan Schmidt wrote:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; Hello. I maintain cairo and pango in MacPorts, and I have a report &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;gt; from a user that when cairo-quartz-font is in use, pango doesn't &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;gt; render non-Latin characters (Chinese, Japanese, Korean, Thai, &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;gt; Tibetan). When cairo-quartz-font is turned off (i.e. when cairo- 
&lt;br&gt;&amp;gt; &amp;gt; quartz-font.pc is deleted and pango is rebuilt), these characters &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;gt; show up.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; The reporter was using Mac OS X 10.5.x (Leopard) with cairo 1.6.4 &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;gt; and pango 1.20.3. I can confirm the issue with Mac OS X 10.4.11 &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;gt; (Tiger) on Intel with cairo 1.6.4 and pango 1.20.5.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Here is the detailed bug report that was filed with MacPorts:
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &lt;a href=&quot;http://trac.macports.org/ticket/15626&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://trac.macports.org/ticket/15626&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; I don't know if this is a cairo bug or a pango bug. I thought I'd &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;gt; start by asking the pango list. Please let me know if you think I &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;gt; should ask the cairo list instead. Thanks.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; _______________________________________________
&lt;br&gt;&amp;gt; gtk-i18n-list mailing list
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18488123&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;/div&gt;-- 
&lt;br&gt;behdad
&lt;br&gt;&lt;a href=&quot;http://behdad.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://behdad.org/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&amp;quot;Those who would give up Essential Liberty to purchase a little
&lt;br&gt;&amp;nbsp;Temporary Safety, deserve neither Liberty nor Safety.&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; -- Benjamin Franklin, 1759
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18488123&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango-doesn%27t-render-non-Latin-characters-with-cairo-quartz-font-tp18252137p18488123.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18463228</id>
	<title>Re: [gtk-i18n-list] Re: pango doesn't render non-Latin characters with cairo-quartz-font</title>
	<published>2008-07-15T04:45:41Z</published>
	<updated>2008-07-15T04:45:41Z</updated>
	<author>
		<name>mpsuzuki</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I'm interested in this issue. Until 2008-07-28, I don't
&lt;br&gt;have sufficient time to reproduce the bug. If nobody
&lt;br&gt;works for the bug until the day, I will try to analyze
&lt;br&gt;the bug.
&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;mpsuzuki
&lt;br&gt;&lt;br&gt;On Tue, 15 Jul 2008 06:19:12 -0500
&lt;br&gt;Ryan Schmidt &amp;lt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18463228&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;pango-2008c@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt;I posed this question on July 3 and nobody responded. I also asked &amp;nbsp;
&lt;br&gt;&amp;gt;the cairo list on July 6 and nobody answered there either. Can anyone &amp;nbsp;
&lt;br&gt;&amp;gt;give me any guidance about how to deal with this issue?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;On Jul 3, 2008, at 00:35, Ryan Schmidt wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Hello. I maintain cairo and pango in MacPorts, and I have a report &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; from a user that when cairo-quartz-font is in use, pango doesn't &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; render non-Latin characters (Chinese, Japanese, Korean, Thai, &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; Tibetan). When cairo-quartz-font is turned off (i.e. when cairo- 
&lt;br&gt;&amp;gt;&amp;gt; quartz-font.pc is deleted and pango is rebuilt), these characters &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; show up.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; The reporter was using Mac OS X 10.5.x (Leopard) with cairo 1.6.4 &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; and pango 1.20.3. I can confirm the issue with Mac OS X 10.4.11 &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; (Tiger) on Intel with cairo 1.6.4 and pango 1.20.5.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Here is the detailed bug report that was filed with MacPorts:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://trac.macports.org/ticket/15626&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://trac.macports.org/ticket/15626&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I don't know if this is a cairo bug or a pango bug. I thought I'd &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; start by asking the pango list. Please let me know if you think I &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; should ask the cairo list instead. Thanks.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;_______________________________________________
&lt;br&gt;&amp;gt;gtk-i18n-list mailing list
&lt;br&gt;&amp;gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18463228&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;/div&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18463228&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango-doesn%27t-render-non-Latin-characters-with-cairo-quartz-font-tp18252137p18463228.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18462805</id>
	<title>Re: pango doesn't render non-Latin characters with cairo-quartz-font</title>
	<published>2008-07-15T04:19:12Z</published>
	<updated>2008-07-15T04:19:12Z</updated>
	<author>
		<name>Ryan Schmidt-43</name>
	</author>
	<content type="html">I posed this question on July 3 and nobody responded. I also asked &amp;nbsp;
&lt;br&gt;the cairo list on July 6 and nobody answered there either. Can anyone &amp;nbsp;
&lt;br&gt;give me any guidance about how to deal with this issue?
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Jul 3, 2008, at 00:35, Ryan Schmidt wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hello. I maintain cairo and pango in MacPorts, and I have a report &amp;nbsp;
&lt;br&gt;&amp;gt; from a user that when cairo-quartz-font is in use, pango doesn't &amp;nbsp;
&lt;br&gt;&amp;gt; render non-Latin characters (Chinese, Japanese, Korean, Thai, &amp;nbsp;
&lt;br&gt;&amp;gt; Tibetan). When cairo-quartz-font is turned off (i.e. when cairo- 
&lt;br&gt;&amp;gt; quartz-font.pc is deleted and pango is rebuilt), these characters &amp;nbsp;
&lt;br&gt;&amp;gt; show up.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The reporter was using Mac OS X 10.5.x (Leopard) with cairo 1.6.4 &amp;nbsp;
&lt;br&gt;&amp;gt; and pango 1.20.3. I can confirm the issue with Mac OS X 10.4.11 &amp;nbsp;
&lt;br&gt;&amp;gt; (Tiger) on Intel with cairo 1.6.4 and pango 1.20.5.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Here is the detailed bug report that was filed with MacPorts:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://trac.macports.org/ticket/15626&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://trac.macports.org/ticket/15626&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I don't know if this is a cairo bug or a pango bug. I thought I'd &amp;nbsp;
&lt;br&gt;&amp;gt; start by asking the pango list. Please let me know if you think I &amp;nbsp;
&lt;br&gt;&amp;gt; should ask the cairo list instead. Thanks.
&lt;/div&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18462805&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango-doesn%27t-render-non-Latin-characters-with-cairo-quartz-font-tp18252137p18462805.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18294703</id>
	<title>Re: pangp on cygwin</title>
	<published>2008-07-05T10:56:24Z</published>
	<updated>2008-07-05T10:56:24Z</updated>
	<author>
		<name>Tor Lillqvist</name>
	</author>
	<content type="html">&amp;gt; I apologize for not being an expert but I really want to get this working on my CYGWIN_NT-5.1 1.5.25 platform.
&lt;br&gt;&lt;br&gt;Sorry for asking, but why not just run real Linux instead, either in a
&lt;br&gt;virtual machine, or separate machine? I can understand using Cygwin to
&lt;br&gt;run non-GUI applications like build tools etc (I do it myself all the
&lt;br&gt;time, both MSYS which is technically a fork of MSYS and &amp;quot;real&amp;quot;
&lt;br&gt;Cygwin). But to me running an X11 server, and X11 clients using a
&lt;br&gt;toolkit like GTK+, on top of Cygwin seems somewhat odd. Is the use
&lt;br&gt;case to work around a boneheaded IT department that won't allow
&lt;br&gt;running Linux, but doesn't object to running Cygwin?
&lt;br&gt;&lt;br&gt;--tml
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18294703&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pangp-on-cygwin-tp18291132p18294703.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18294477</id>
	<title>Re: pangp build bug on cygwin</title>
	<published>2008-07-05T10:37:18Z</published>
	<updated>2008-07-05T10:37:18Z</updated>
	<author>
		<name>Tor Lillqvist</name>
	</author>
	<content type="html">Please file a bug report at bugzilla.gnome.org and attach the patch in
&lt;br&gt;unified diff format.
&lt;br&gt;&lt;br&gt;--tml
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18294477&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pangp-build-bug-on-cygwin-tp18291134p18294477.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18293376</id>
	<title>Pango support for Opentype</title>
	<published>2008-07-05T08:36:51Z</published>
	<updated>2008-07-05T08:36:51Z</updated>
	<author>
		<name>Victor San Kho Lin-3</name>
	</author>
	<content type="html">Hi all,&lt;br&gt;&lt;br&gt;I&amp;#39;m one of the Myanmar/Burma font developer for burmese script.&lt;br&gt;I would like to know, current Pango support status for Opentype.&lt;br&gt;If opentype is supported, I would like to know for which pango revision is supported for Unicode specification. The latest is Unicode 5.1.&lt;br&gt;
&lt;br&gt;&lt;br&gt;Thanks and Regards,&lt;br&gt;&lt;br&gt;Victor San Kho Lin&lt;br&gt;&lt;a href=&quot;http://www.unimm.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;www.unimm.org&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;
&lt;br /&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18293376&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/Pango-support-for-Opentype-tp18293376p18293376.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18267269</id>
	<title>Re: OpenType and font-variant support</title>
	<published>2008-07-03T13:03:24Z</published>
	<updated>2008-07-03T13:03:24Z</updated>
	<author>
		<name>Behdad Esfahbod-3</name>
	</author>
	<content type="html">On Thu, 2008-07-03 at 19:57 +0000, Steven Robertson wrote:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I'd love to help in getting that last piece in place.
&lt;br&gt;&lt;br&gt;I probably give it a shot next week at GUADEC.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;&lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=439298&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://bugzilla.gnome.org/show_bug.cgi?id=439298&lt;/a&gt;&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I filed a similar bug against HarfBuzz. &amp;nbsp;Apologies for not checking in
&lt;br&gt;&amp;gt; Pango's issue tracker first; since the bug was in the lower-level
&lt;br&gt;&amp;gt; library I didn't think to check Pango as well.
&lt;br&gt;&lt;br&gt;Thanks fine.
&lt;br&gt;&lt;br&gt;&amp;gt; &lt;a href=&quot;https://bugs.freedesktop.org/show_bug.cgi?id=16580&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://bugs.freedesktop.org/show_bug.cgi?id=16580&lt;/a&gt;&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Much of the proposal in the second email was designed to deal with the
&lt;br&gt;&amp;gt; improper ordering of features described in those bug reports. &amp;nbsp;If the
&lt;br&gt;&amp;gt; bugs can be closed, then the complexities described in the second
&lt;br&gt;&amp;gt; email (written before I had learned of this bug) largely vanish.
&lt;br&gt;&lt;br&gt;Yeah. &amp;nbsp;I need to make some changes to PangoOTRuleset to allow applying
&lt;br&gt;features in stages. &amp;nbsp;Something like a features tag of &amp;quot;\0\0\0\0&amp;quot; for
&lt;br&gt;example. &amp;nbsp;Nothing hard.
&lt;br&gt;&lt;br&gt;&amp;gt; I'm very interested in getting this feature implemented in Inkscape,
&lt;br&gt;&amp;gt; and of course that process starts with Pango. Let me know how I can
&lt;br&gt;&amp;gt; help.
&lt;br&gt;&lt;br&gt;You can monitor the bugs. &amp;nbsp;I make note there when I make progress.
&lt;br&gt;&lt;br&gt;&amp;gt; Steven
&lt;br&gt;&amp;gt; 
&lt;br&gt;-- 
&lt;br&gt;behdad
&lt;br&gt;&lt;a href=&quot;http://behdad.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://behdad.org/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&amp;quot;Those who would give up Essential Liberty to purchase a little
&lt;br&gt;&amp;nbsp;Temporary Safety, deserve neither Liberty nor Safety.&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; -- Benjamin Franklin, 1759
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18267269&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/OpenType-and-font-variant-support-tp18167877p18267269.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18267183</id>
	<title>Re: OpenType and font-variant support</title>
	<published>2008-07-03T12:57:50Z</published>
	<updated>2008-07-03T12:57:50Z</updated>
	<author>
		<name>Steven Robertson-2</name>
	</author>
	<content type="html">On Thu, Jul 3, 2008 at 7:15 PM, Behdad Esfahbod &amp;lt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18267183&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;behdad@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; Pango already has infrastructure in place to apply arbitrary OpenType
&lt;br&gt;&amp;gt; features. &amp;nbsp;The only missing piece is a PangoAttribute for them.
&lt;br&gt;&lt;br&gt;I'd love to help in getting that last piece in place.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;nbsp;&lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=439298&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://bugzilla.gnome.org/show_bug.cgi?id=439298&lt;/a&gt;&lt;br&gt;&lt;br&gt;I filed a similar bug against HarfBuzz. &amp;nbsp;Apologies for not checking in
&lt;br&gt;Pango's issue tracker first; since the bug was in the lower-level
&lt;br&gt;library I didn't think to check Pango as well.
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;https://bugs.freedesktop.org/show_bug.cgi?id=16580&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://bugs.freedesktop.org/show_bug.cgi?id=16580&lt;/a&gt;&lt;br&gt;&lt;br&gt;Much of the proposal in the second email was designed to deal with the
&lt;br&gt;improper ordering of features described in those bug reports. &amp;nbsp;If the
&lt;br&gt;bugs can be closed, then the complexities described in the second
&lt;br&gt;email (written before I had learned of this bug) largely vanish.
&lt;br&gt;&lt;br&gt;I'm very interested in getting this feature implemented in Inkscape,
&lt;br&gt;and of course that process starts with Pango. Let me know how I can
&lt;br&gt;help.
&lt;br&gt;&lt;br&gt;Steven
&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18267183&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/OpenType-and-font-variant-support-tp18167877p18267183.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18266524</id>
	<title>Re: OpenType and font-variant support</title>
	<published>2008-07-03T12:15:07Z</published>
	<updated>2008-07-03T12:15:07Z</updated>
	<author>
		<name>Behdad Esfahbod-3</name>
	</author>
	<content type="html">Pango already has infrastructure in place to apply arbitrary OpenType
&lt;br&gt;features. &amp;nbsp;The only missing piece is a PangoAttribute for them. &amp;nbsp;See:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=460831&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://bugzilla.gnome.org/show_bug.cgi?id=460831&lt;/a&gt;&lt;br&gt;&lt;br&gt;Also:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=439298&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://bugzilla.gnome.org/show_bug.cgi?id=439298&lt;/a&gt;&lt;br&gt;&lt;br&gt;behdad
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Mon, 2008-06-30 at 00:30 +0000, Steven Robertson wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On second thought...
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; After exploring the code and specifications more thoroughly, I
&lt;br&gt;&amp;gt; realized that the proposal in the previous mail is naive and not
&lt;br&gt;&amp;gt; backwards-compatible. &amp;nbsp;Kindly ignore most of it.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I'd like to get comments on the issues and ideas I've had since
&lt;br&gt;&amp;gt; gaining a deeper understanding of the interaction between Pango and
&lt;br&gt;&amp;gt; OpenType. I imagine that these points are obvious to Pango's
&lt;br&gt;&amp;gt; developers, but it is useful to state them for those less familiar
&lt;br&gt;&amp;gt; with the potential pitfalls.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; There are, in my opinion, far too many distinct published OpenType
&lt;br&gt;&amp;gt; feature tags to explicitly support each one with its own boolean
&lt;br&gt;&amp;gt; property. &amp;nbsp;Even a comma-separated list of humanized names, as
&lt;br&gt;&amp;gt; suggested previously, is insufficient, not only for reasons of size
&lt;br&gt;&amp;gt; but also because the order is critical in some cases (ex: applying
&lt;br&gt;&amp;gt; 'liga' before 'smcp' means that common ligatures, like ffi and Th,
&lt;br&gt;&amp;gt; contain regular lower-case letters instead of small capitals). &amp;nbsp;This
&lt;br&gt;&amp;gt; would be unpleasant to maintain.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; On the other hand, simply providing direct access to the lists of
&lt;br&gt;&amp;gt; enabled GSUB and GPOS tags poses too much implementation work for most
&lt;br&gt;&amp;gt; of Pango's users. &amp;nbsp;This is because different shape engines have
&lt;br&gt;&amp;gt; different sets of default parameters, so writing code for a check-box
&lt;br&gt;&amp;gt; that says &amp;quot;Small Caps&amp;quot; goes from a couple lines to dozens. &amp;nbsp;With such
&lt;br&gt;&amp;gt; a design, applications can very easily make changes that will disrupt
&lt;br&gt;&amp;gt; the default settings, which isn't so bad for Latin scripts but is
&lt;br&gt;&amp;gt; unacceptable for others. &amp;nbsp;This solution is too prone to failure,
&lt;br&gt;&amp;gt; especially considering that the most intrusive bugs may only show up
&lt;br&gt;&amp;gt; in a language other than the developer's native one.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Picking and choosing which OpenType features to support also seems
&lt;br&gt;&amp;gt; like headaches in the making. &amp;nbsp;I imagine a number of &amp;quot;You support X,
&lt;br&gt;&amp;gt; why don't you support Y&amp;quot; issues popping up as a result of that, which
&lt;br&gt;&amp;gt; will either persist ad nauseum or result in piecemeal adoption of an
&lt;br&gt;&amp;gt; excessive number of tables.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; One final problem is worth noting. &amp;nbsp;Consider a hierarchical document
&lt;br&gt;&amp;gt; of some sort, where font attributes can be inherited from a parent
&lt;br&gt;&amp;gt; element. (HTML, SVG, even ODT and Word do this.) &amp;nbsp;Every existing
&lt;br&gt;&amp;gt; attribute (at the Pango level) can either be inherited, or it can be
&lt;br&gt;&amp;gt; overridden, but not both; for example, you cannot set font-size to
&lt;br&gt;&amp;gt; &amp;quot;larger&amp;quot; at the Pango level, because Pango does not understand a
&lt;br&gt;&amp;gt; document's hierarchy. &amp;nbsp;This is fine for existing attributes, because
&lt;br&gt;&amp;gt; it isn't much work for a document engine to keep track of hierarchy
&lt;br&gt;&amp;gt; for properties with only one value. &amp;nbsp;However, it must be kept in mind
&lt;br&gt;&amp;gt; when implementing any property that takes the form of a list. &amp;nbsp;If I
&lt;br&gt;&amp;gt; have a text segment in a document which uses 'tnum' (tabular figures),
&lt;br&gt;&amp;gt; and I wish to set a line with 'smcp' (small capitals), the program
&lt;br&gt;&amp;gt; will have to somehow combine the 'tnum' flag with the 'smcp' flag. &amp;nbsp;It
&lt;br&gt;&amp;gt; is important that this process be as simple as possible to accomplish
&lt;br&gt;&amp;gt; programmatically, and ideally should require no knowledge of OpenType.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; At this time, I believe that a hybrid between the two models is the
&lt;br&gt;&amp;gt; wisest choice. &amp;nbsp;This hybrid would require the addition of two
&lt;br&gt;&amp;gt; attributes to Pango's library, which for the sake of discussion I will
&lt;br&gt;&amp;gt; call 'ot_features' and 'ot_tags'. Also for the sake of discussion,
&lt;br&gt;&amp;gt; consider a font which supports the 'kern', 'liga', and 'smcp' features
&lt;br&gt;&amp;gt; (kerning, default ligatures, and small capitals, respectively), and
&lt;br&gt;&amp;gt; assume that the 'kern' and 'liga' features are on by default.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; ot_tags is a string-based property which allows more-or-less raw
&lt;br&gt;&amp;gt; access to the list of OpenType Layout tags that will be enabled for a
&lt;br&gt;&amp;gt; text segment. &amp;nbsp;The argument takes the form of a comma-separated list;
&lt;br&gt;&amp;gt; each item on the list can either be a tag, such as 'smcp', to append a
&lt;br&gt;&amp;gt; feature to the list of those to be enabled, or a tag prefixed with a
&lt;br&gt;&amp;gt; hyphen, as in '-liga', to remove that feature from the list. &amp;nbsp;This
&lt;br&gt;&amp;gt; allows a developer to get as technical as he or she needs to without
&lt;br&gt;&amp;gt; requiring knowledge or code pertaining to any other tags (or scripts).
&lt;br&gt;&amp;gt; &amp;nbsp;For example, as mentioned above, the substitutions specified by
&lt;br&gt;&amp;gt; 'smcp' must come before those specified by &amp;nbsp;'liga', but 'liga' is in
&lt;br&gt;&amp;gt; the set of default options, so 'smcp' will always come after 'liga'.
&lt;br&gt;&amp;gt; Setting ot_tags=&amp;quot;-liga,smcp,liga&amp;quot; ensures proper operation. &amp;nbsp;Another
&lt;br&gt;&amp;gt; incentive of this method of setting individual tags is that
&lt;br&gt;&amp;gt; inheritance is as simple as concatenation, making implementing it in
&lt;br&gt;&amp;gt; applications and Pango-based toolkits a snap.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; ot_features is a list of which of the most commonly-used OpenType
&lt;br&gt;&amp;gt; features to enable; by default, no features will be shown as enabled
&lt;br&gt;&amp;gt; in this list (implying that features like kerning, which are always
&lt;br&gt;&amp;gt; enabled by default, will not be in this list). &amp;nbsp;While the mapping of
&lt;br&gt;&amp;gt; ot_features to OpenType feature tags is usually one-to-one, some
&lt;br&gt;&amp;gt; instances (like for small caps) require reordering or disabling of
&lt;br&gt;&amp;gt; mutually-exclusive tags; this will be accomplished in the same way as
&lt;br&gt;&amp;gt; those for ot_tags - in fact, setting ot_features may actually update
&lt;br&gt;&amp;gt; ot_tags to ensure consistency. &amp;nbsp;ot_features should probably be a
&lt;br&gt;&amp;gt; bitfield to keep it simple, and the items it supports would be derived
&lt;br&gt;&amp;gt; from a look at which OpenType features are most commonly exposed in
&lt;br&gt;&amp;gt; applications.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; The two properties mentioned above, while considerably more feasible
&lt;br&gt;&amp;gt; than reusing 'variant', do still suffer from a few limitations.
&lt;br&gt;&amp;gt; Foremost among these is a lack of any way to determine the OpenType
&lt;br&gt;&amp;gt; Layout tags that are available and enabled by default for a particular
&lt;br&gt;&amp;gt; font or script. &amp;nbsp;While this information isn't necessary to accomplish
&lt;br&gt;&amp;gt; most tasks programmatically, it is important for UI feedback in many
&lt;br&gt;&amp;gt; applications. &amp;nbsp;An associated problem is that the information for tags
&lt;br&gt;&amp;gt; enabled by default isn't available until the script and text direction
&lt;br&gt;&amp;gt; (vertical or horizontal) is known. &amp;nbsp;I do not yet have a solution in
&lt;br&gt;&amp;gt; mind, but I'll keep looking into it.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt; Steven
&lt;br&gt;&amp;gt; _______________________________________________
&lt;br&gt;&amp;gt; gtk-i18n-list mailing list
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18266524&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;/div&gt;-- 
&lt;br&gt;behdad
&lt;br&gt;&lt;a href=&quot;http://behdad.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://behdad.org/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&amp;quot;Those who would give up Essential Liberty to purchase a little
&lt;br&gt;&amp;nbsp;Temporary Safety, deserve neither Liberty nor Safety.&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; -- Benjamin Franklin, 1759
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18266524&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/OpenType-and-font-variant-support-tp18167877p18266524.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18252137</id>
	<title>pango doesn't render non-Latin characters with cairo-quartz-font</title>
	<published>2008-07-02T22:35:10Z</published>
	<updated>2008-07-02T22:35:10Z</updated>
	<author>
		<name>Ryan Schmidt-43</name>
	</author>
	<content type="html">Hello. I maintain cairo and pango in MacPorts, and I have a report &amp;nbsp;
&lt;br&gt;from a user that when cairo-quartz-font is in use, pango doesn't &amp;nbsp;
&lt;br&gt;render non-Latin characters (Chinese, Japanese, Korean, Thai, &amp;nbsp;
&lt;br&gt;Tibetan). When cairo-quartz-font is turned off (i.e. when cairo- 
&lt;br&gt;quartz-font.pc is deleted and pango is rebuilt), these characters &amp;nbsp;
&lt;br&gt;show up.
&lt;br&gt;&lt;br&gt;The reporter was using Mac OS X 10.5.x (Leopard) with cairo 1.6.4 and &amp;nbsp;
&lt;br&gt;pango 1.20.3. I can confirm the issue with Mac OS X 10.4.11 (Tiger) &amp;nbsp;
&lt;br&gt;on Intel with cairo 1.6.4 and pango 1.20.5.
&lt;br&gt;&lt;br&gt;Here is the detailed bug report that was filed with MacPorts:
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://trac.macports.org/ticket/15626&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://trac.macports.org/ticket/15626&lt;/a&gt;&lt;br&gt;&lt;br&gt;I don't know if this is a cairo bug or a pango bug. I thought I'd &amp;nbsp;
&lt;br&gt;start by asking the pango list. Please let me know if you think I &amp;nbsp;
&lt;br&gt;should ask the cairo list instead. Thanks.
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18252137&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/pango-doesn%27t-render-non-Latin-characters-with-cairo-quartz-font-tp18252137p18252137.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18244995</id>
	<title>fontconfig &quot;preferred&quot; families and where to get more information</title>
	<published>2008-07-02T12:28:04Z</published>
	<updated>2008-07-02T12:28:04Z</updated>
	<author>
		<name>John Boncek</name>
	</author>
	<content type="html">&lt;html&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot;&gt;
&lt;meta name=&quot;Generator&quot; content=&quot;Microsoft Exchange Server&quot;&gt;
&lt;!-- converted from rtf --&gt;

&lt;/head&gt;
&lt;body&gt;
&lt;font face=&quot;Arial, sans-serif&quot; size=&quot;2&quot;&gt;
&lt;div&gt;The fontconfig configuration files 60-latin.conf, 65-nonlatin.conf, and several others contain lists of preferred font families broken down by serif, sans-serif, and monospace.&amp;nbsp; Since there are therefore several lists of preferred sans-serif families,
how are these different lists applied when a font description of say &amp;quot;sans 12&amp;quot; is used?&amp;nbsp; We have lots of cases of English mixed with Eastern languages, so I would like to really understand this.&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;That's one specific question.&amp;nbsp; More generally, does anyone know a book (or other information source) that goes into real detail on the fontconfig system from a user perspective?&amp;nbsp; The so-called &amp;quot;User's Manual&amp;quot; on the fontconfig website is a joke.&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;/font&gt;
&lt;/body&gt;
&lt;/html&gt;
&lt;br /&gt;_______________________________________________
&lt;br&gt;gtk-i18n-list mailing list
&lt;br&gt;&lt;a href=&quot;http://www.nabble.com/user/SendEmail.jtp?type=post&amp;post=18244995&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gtk-i18n-list@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mail.gnome.org/mailman/listinfo/gtk-i18n-list&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://www.nabble.com/fontconfig-%22preferred%22-families-and-where-to-get-more-information-tp18244995p18244995.html" />
</entry>

<entry>
	<id>tag:www.nabble.com,2006:post-18243435</id>
	<title>FYI: Unicode Releases Common Locale Data Repository, Version 1.6</title>
	<published>2008-07-02T11:03:58Z</published>
	<updated>2008-07-02T11:03:58Z</updated>
	<author>
		<name>Roozbeh Pournader-2</name>
	</author>
	<content type="html">Unicode just released CLDR 1.6. This is the first time GNOME is
&lt;br&gt;mentioned as a contributor. (Behdad, any news from the press release?
&lt;br&gt;;-)
&lt;br&gt;&lt;br&gt;On another note, implementing CLDR in GNOME still needs huge resources and time.
&lt;br&gt;&lt;br&gt;Roozbeh
&lt;br&gt;&lt;br&gt;--------------------------
&lt;br&gt;Unicode Releases Common Locale Data Repository, Version 1.6
&lt;br&gt;&lt;br&gt;Mountain View, CA, July 2, 2008 The Unicode Consortium announced today the
&lt;br&gt;release of the new version of the Unicode Common Locale Data Repository
&