Some time ago I asked for some advice concerning miserable fonts on clients. I
got a few hints, but it took some months until I eventually discovered _my_
solution, which may work for you too. Maybe someone here is interested?
I know I should add that to the wiki, but I hope to find some peer review
before ...
1 - False X-Resolution
type "xdpyinfo |grep dim" in a xterm (konsole). I disovered that I got 1280 x
960 on my 17 inch display, although I set X_MODE_0 = 1280 x 1024. This lead
of course to some ugly stretching, as a TFT needs exactly the correct
resolution. To repair that, I had to add X_HORZSYNC = "60-70" in the
client-section of the corresponding machines in the lts.conf.
2 - Uneven Resolution
type "xdpyinfo | grep resolution" in a xterm (konsole) on a client. I got some
uneven results like 76x72 (or so, don't remember). When I played around to
change this, I discovered that one get much better fontsize (and maybe even
smoother fonts) on a 17 inch display with 96x96 dpi. I don't know how to make
this right (you probably need to introduce some new variables for lts.conf),
but I used an ugly hack, which worked for me (careful, read the warning,
YMMV):
Look for 'section "Monitor" ' in the file build_x4_cfg and add "DisplaySize
337.5 270" right before EOF.
Warning: This sets all 17 inch displays to 96x96 DPI, and it worked for me.
But this a private household with just 3 clients, and all have 17 inch
displays. I don't know what happens on different hardware (smaller or bigger
displays).
And: If you update ltsp, this entry will most likely be overwritten.
3 enable bytecode interpreter (TrueType native hinter) in freetype2
Disclaimer: This may be illegal in some countries (due to - stupid? -
software-patents), but until now this gives you crisp fonts even without AA
at least in europe (hope that legal situation stays here).
There is just a small change in the freetype2-sources. Open the file
"include/freetype/config/ftoption.h". Locate the line that says:
#undef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
and change it to:
#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER
Then compile the thing. This has of course to be done within the ltsp build
environment. Well, it should at least ... but I downloaded the source-rpm
(freetype2-2.1.9-3.src.rpm) from suse 9.2, which is installed on my server,
installed it (rpm -Uvh freetype2-2.1.9-3.src.rpm),
edited /usr/src/packages/SPECS/freetype2.spec (remove the comment character
in front of the '%patch100' line) to get the resulting line "%patch100 -p 1
-b .bytecode". Then I compiled with rpmbuild -bb freetype2.spec and installed
the resulting binry-RPM on the server (which has no effects on the clients,
but read on).
Since Suse 9.2 uses the same X.org-version like ltsp4.1, I dared to copy the
libfreetype-files in usr/lib to /opt/ltsp41/i386/usr/lib (backup old files
before, then check the links to the libs!).
This worked for me ... If it fails in your setting, copy back the
libfreetype2-backups and try compiling in the ltsp build environment.
Alfred
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_____________________________________________________________________
Ltsp-discuss mailing list. To un-subscribe, or change prefs, goto:
https://lists.sourceforge.net/lists/listinfo/ltsp-discuss
For additional LTSP help, try #ltsp channel on irc.freenode.net