1 |
"Mark Haney" <mhaney@××××××××××××.org> posted |
2 |
49B4FF7E.8080706@××××××××××××.org, excerpted below, on Mon, 09 Mar 2009 |
3 |
07:37:34 -0400: |
4 |
|
5 |
> Well it /wasn't/ when I sent that message. But, a look at Xorg.0.log |
6 |
> showed me that the ati driver (6.11.0) had an ABI mismatch with the |
7 |
> server version. A recompile of that driver and I'm up now. |
8 |
> |
9 |
> Except for the ginormous font size I have now I'm back to work. |
10 |
> |
11 |
> Any idea on how to fix my fonts now? I had this problem with this |
12 |
> driver once before and couldn't find an answer. |
13 |
|
14 |
The answer is to tell xorg what the actual screen size is. It then uses |
15 |
that information to calculate an appropriate DPI. Once it knows that, it |
16 |
should continue to use it. When it doesn't know it from the config, it |
17 |
tries first to get the information from the EDID info, then falls back to |
18 |
a default which apparently varies from version to version. |
19 |
|
20 |
I used to have issues with this at virtually every xorg upgrade until I |
21 |
set my screen size appropriately. Since then, I've had issues much less |
22 |
frequently, altho of course I have to change my manual settings every |
23 |
time I change the monitors I'm using. But once I do, everything has gone |
24 |
back to normal. |
25 |
|
26 |
The exception to this is that with the switch to RandR based settings, |
27 |
the place to set this info (along with a bunch of other stuff) and how it |
28 |
was set in xorg.conf changed. But I read the documentation and changed |
29 |
that (and a bunch of other stuff) to work with the new methods, and all |
30 |
is now again fine. |
31 |
|
32 |
The one bug I know that may still cause a problem is that at least on |
33 |
some older ATI/Radeon cards (the Radeon 9200SE I use being a case in |
34 |
point), the size setting, which is supposed to be per monitor, applies to |
35 |
the whole virtual size, which may be one monitor or more. In my |
36 |
configuration here I have two identical LCDs stacked, so I just had to |
37 |
figure out which config it was reading the size from and double the |
38 |
vertical size on it. Otherwise the horizontal was correct but the |
39 |
vertical was wrong so all the fonts were distorted to tall and thin, |
40 |
twice as tall as they should have been for their width. |
41 |
|
42 |
This can be set in several places. In xorg.conf as I mentioned, you can |
43 |
set size. I believe tho I've not looked at it recently, that you can |
44 |
also set it by command line using xrandr or xset or the like. And, the |
45 |
major desktop environments should provide a place to set it. I only use |
46 |
KDE and haven't yet found 4.2 to be workable for anything but occasional |
47 |
use, so KDE 3.5 is the one I know about, but GNOME and KDE 4.x should |
48 |
have settings for it too. |
49 |
|
50 |
In KDE 3.5, at the bottom of the Fonts control center applet there's |
51 |
choices for anti-aliasing and DPI. You can choose to force DPI or not, |
52 |
and when forced, 96 DPI or 120 DPI. By calculation, my DPI is ~93, so I |
53 |
set 96 and let it be. However, what you set can be rather arbitrary, it |
54 |
doesn't have to relate to reality except that it'll allow more accurate |
55 |
matching to print size and more accurate on-screen rulers, if you use |
56 |
applications that have those and calculate based on DPI or resolution and |
57 |
screen size. Also, having xorg and the various desktops using the same |
58 |
settings will prevent major font size differences between apps depending |
59 |
on which setting they use. |
60 |
|
61 |
The biggest change in xorg.conf switching to RandR based settings was in |
62 |
the Monitor sections. Previously, most of the resolution dependent |
63 |
config was actually done in the Screen sections, but with RandR, |
64 |
different monitors could be plugged in dynamically and xorg is supposed |
65 |
to just adapt, and because the same screen sections could be used by |
66 |
vastly different monitors depending on what was plugged in, much of the |
67 |
actually monitor dependent information had to be moved to the Monitor |
68 |
sections. Thus, Monitor sections got DRAMATICALLY more complicated and |
69 |
powerful, at the expense of Screen and even sometimes graphics Device |
70 |
sections. |
71 |
|
72 |
The physical size setting is no exception. As I said, it's supposed to |
73 |
be hot-plug detected now, but there's at least one bug that I have here |
74 |
and likely more. It sounds like you may have hit one such bug. Anyway, |
75 |
here's the option line you need: |
76 |
|
77 |
In the appropriate Section "Monitor" |
78 |
|
79 |
DisplaySize Xmm Ymm |
80 |
|
81 |
where Xmm and Ymm are the horizontal and vertical "viewable area" display |
82 |
size, in millimeters. The values are floating point decimal, so here's |
83 |
what mine looks like (complete with comment to ensure I remember the |
84 |
vertical value is doubled due to the bug referenced above) |
85 |
|
86 |
DisplaySize 518.4 648 # both monitors |
87 |
|
88 |
You can read the documentation on the setting as well as a host of others |
89 |
in the xorg.conf (5) manpage. It's not directly pertinent here, but |
90 |
since you are using the xorg radeon driver (xf86-video-ati), there's |
91 |
useful information in the radeon (4) manpage as well. The two of them |
92 |
together provide a reasonably detailed description of most settings a |
93 |
Radeon driver using xorg user would find useful for his xorg.conf file, |
94 |
minus some details on the video and inputdev sections, unfortunately. |
95 |
|
96 |
-- |
97 |
Duncan - List replies preferred. No HTML msgs. |
98 |
"Every nonfree program has a lord, a master -- |
99 |
and if you use the program, he is your master." Richard Stallman |