I'm trying to get winelib working on a platform whose X server doesn't have native support for TrueType fonts. I've configured wine with freetype, but it never seems to display the TrueType fonts. I don't have xfsft or xfstt installed.
Should I expect this to work? I don't understand whether Wine uses the freetype library to render TrueType fonts, or if it just uses it for some other purpose (like getting metrics) and still depends on the font server to render the fonts.
I see messages like this when wine starts, so it looks like wine is finding my fonts, but when I Call CreateFont("Arial"), it never maps to a TrueType font:
trace:font:ReadFontDir Found "arial.ttf" in "/devel/syncad/.SynaptiCAD/mnt/c/windows/Fonts" trace:font:AddFontFileToList Loading font file "/devel/syncad/.SynaptiCAD/mnt/c/windows/Fonts/arial.ttf" index 0 trace:font:AddFontFileToList fsCsb = 400001ff ffff0000/00007a87 80000000 00000008 00000000 trace:font:AddFontFileToList Added font L"Arial" L"Regular"
Is it still necessary to run xfsft to use these fonts, or should wine be able to use them on its own?
Thanks, Eric
On Mon, Feb 07, 2005 at 11:38:05AM -0500, Eric Frias wrote:
I'm trying to get winelib working on a platform whose X server doesn't have native support for TrueType fonts. I've configured wine with freetype, but it never seems to display the TrueType fonts. I don't have xfsft or xfstt installed.
Should I expect this to work? I don't understand whether Wine uses the freetype library to render TrueType fonts, or if it just uses it for some other purpose (like getting metrics) and still depends on the font server to render the fonts.
I see messages like this when wine starts, so it looks like wine is finding my fonts, but when I Call CreateFont("Arial"), it never maps to a TrueType font:
trace:font:ReadFontDir Found "arial.ttf" in "/devel/syncad/.SynaptiCAD/mnt/c/windows/Fonts" trace:font:AddFontFileToList Loading font file "/devel/syncad/.SynaptiCAD/mnt/c/windows/Fonts/arial.ttf" index 0 trace:font:AddFontFileToList fsCsb = 400001ff ffff0000/00007a87 80000000 00000008 00000000 trace:font:AddFontFileToList Added font L"Arial" L"Regular"
If you've got this, then it means Wine is happily using FreeType. In this case Wine will (by default) render the fonts itself and display them via the X RENDER extension. This means that it'll not use X11 font mechanisms at all. If Wine can't use the RENDER extension then it will fallback to using X requests such as XPutImage which again won't use the X11 font mechanism.
In fact Wine will only use X11 fonts if either:
a. You tell Wine to do so in the config file b. Wine can't find any TrueType fonts or c. Wine can't find, or wasn't compiled with, a working version of FreeType.
Huw.
Huw D M Davies wrote:
If you've got this, then it means Wine is happily using FreeType. In this case Wine will (by default) render the fonts itself and display them via the X RENDER extension. This means that it'll not use X11 font mechanisms at all. If Wine can't use the RENDER extension then it will fallback to using X requests such as XPutImage which again won't use the X11 font mechanism.
Thanks for explaining, that's what I was hoping to hear. Since wine is loading freetype and finding my fonts, it sounds like my problem lies in my config file. I'll go back and re-read the docs and see if I can find my problem.
It looks like the docs are out-of-date here, Wine User Guide 5.10.1.1 says:
| What to do with TrueType fonts? There are several commercial font | tools that can convert them to the Type1 format but the quality of the | resulting fonts is far from stellar. The other way to use them is to | get a font server capable of rendering TrueType (Caldera has one, | there also is the free xfstt in Linux/X11/fonts on sunsite and | mirrors, if you're on FreeBSD you can use the port in | /usr/ports/x11-servers/Xfstt. And there is xfsft which uses the | freetype library, see freetype description). | | However, there is a possibility of the native TrueType support via | FreeType renderer in the future (hint, hint :-)
I'm glad it was wrong.
Eric
In fact Wine will only use X11 fonts if either:
a. You tell Wine to do so in the config file b. Wine can't find any TrueType fonts or c. Wine can't find, or wasn't compiled with, a working version of FreeType.
Huw.