[GRASS-dev] nviz font settings no longer working,
at least on Mac TclTk 8.5 aqua
Michael Barton
michael.barton at asu.edu
Thu Dec 25 23:29:46 EST 2008
OK. Thanks. This means that there is nothing that I can do about it
from the standpoint of TclTk. So I won't worry about trying to fix this.
Michael
On Dec 24, 2008, at 9:12 PM, Glynn Clements wrote:
>
> Michael Barton wrote:
>
>> Anyone have any idea why nviz is no longer displaying a font
>> specified
>> in this way?
>>
>> set labelfont "*-$Nv_(labelFontType)-$weight-$slant-normal-
>> $style-$Nv_(labelFontSize)-*-*-*-*-*-*-*"
>>
>> Nplace_label $Nv_(label_text) $labelfont $Nv_(labelFontSize)
>> $clr $sx $sy
>>
>>
>> I'm trying to clean up interface anomalies in TclTk aqua and found
>> that you can no longer specify fonts in nviz panels. I don't know if
>> this is just an aqua thing or if it is happening in x11 varieties of
>> nviz too. Could someone take a look at the label panel and let me
>> know.
>
> AFAICT, Togl has never supported setting the font on OSX. The relevant
> code is togl.c:3142:
>
> # elif defined(TOGL_AGL_CLASSIC) || defined(TOGL_AGL)
> aglUseFont(togl->aglCtx, 1, 0, 14, /* for now, only app font,
> regular
> * 14-point */
> 10, 118, fontbase + first);
> # endif
>
> If you want to use some other font with aglUseFont, you would need to
> use the relevant OSX API to get the handle, which probably isn't going
> to accept XLFDs (also, the API in question is labelled "obsolete" in
> the Apple documentation).
>
> So far as Togl and OpenGL are concerned, a font is just a contiguous
> sequence of display lists. Once the lists have been defined, you can
> use glListBase() and glCallLists() to execute a sequence of display
> lists whose indices are stored in an array (this can be an array of
> bytes, i.e. a char*, or a wider type).
>
> A consequence of this is that the code in the display library for
> obtaining FreeType (or FontConfig) glyphs could be re-used within nviz
> (or nviz2) to avoid issues with th platform-specific font
> implementations.
>
> Actually, it could support stroke fonts as well; the display lists
> aren't limited to bitmaps (although you have to consider scaling,
> lighting, etc if you use 3D geometry).
>
> It's probably a bit late to do that for 6.4.0, though.
>
> --
> Glynn Clements <glynn at gclements.plus.com>
More information about the grass-dev
mailing list