Modifica dei DPI del server X

Da LugMan TNG.

Questo tip è indirizzato a coloro che non usano Desktop Manager (DM) come KDE, XFCE, GNOME, ecc, ma a coloro che usano Windows Manager (WM) come FluxBox, BlackBox, ecc.

Può capitare che i font siano troppo grandi o comunque siano differenti rispetto alle vecchie versioni software. Normalmente con sistemi come KDE o simili ciò non è un problema perchè la riscalatura dei font o dei DPI può essere fatta al volo.

Il problema invece può esserci nel caso si utilizzino WM. In particolare me ne sono accorto con programmi come aMSN o, ancora di più, con FireFox: in questi programmi infatti i menù sembravano più grandi che non sulle versioni precedenti e così anche i titoli delle finestre di FluxBox.
Ciò fa pensare che questo sia un problema di DPI.

Prima soluzione proposta

In un primo momento per ridurre i font di FluxBox basta editare il file di configurazione dello stile. Nel mio caso lo stile usato si chiama FluxAqua e quindi il file da modificare è ~/.fluxbox/styles/FluxAqua. Circa all'inizio vi sono le liee da modificare:

! FONTS
*font:         Andale-12
*.justify:     center

modificando la liea del font in:

*font:  Andale-9

Come indicato nelle guide di fluxbox.

Questo però non coregge il problema per programmi come firefox e simili.

Seconda soluzione proposta

Googolando si può trovare una pagina molto interessante su come configurare X per ottimizare la visualizzazione di FireFox. In questa pagina si vede come variare i DPI in vari modi senza toccare la configurazione interna di Firefox. Ad ogni modo queste soluzioni non sono le uniche.

La soluzione adottata infatti è una fia vi mezzo in quanto editando i vari file (Xserver, Xresources, ecc) nelle varie directory (/etc/X11, /usr/lib/X11, ecc) non ha dato grandi risultati.

Quindi si è proceduto settando direttamente i parametri di default del server X editando il comando startx (/usr/bin/startx). Le prime righe del file sono:

userserverrc=$HOME/.xserverrc
sysserverrc=/usr/lib/X11/xinit/xserverrc
defaultclient=xterm
defaultserver=/usr/bin/X
defaultclientargs=""
defaultserverargs=""
defaultdisplay=":0"
clientargs=""
serverargs=""

e si può modificare la riga seguente in questo modo:

defaultserverargs="-dpi 75"

Questo ha lo svantaggio che quando si lancia una seconda istanza di X (con startx -- :1) si perdono le impostazioni della variabile defaultserverargs.

Detto ciò è forse consigliabile non modificare defaultserverargs e aggiungere un'altra variabile:

myserverargs="-dpi 75"
questa a sua volta verrà aggiunta in fondo al file:
xinit "$client" $clientargs -- "$server" $display $serverargs $myserverargs

Note

Il laptop è un Aspire 1600 (P4 2.4GHz) con ATI Radeon 9000M (chipset R250) e Monitor LCD da 1024x768. Il sistema è:

  • SlackWare 13
  • Kernel 2.6.32 (ricompilato per la macchina)
  • Xorg 1.6.3 (ottenuto da X -version)
  • FluxBox 1.1.1
  • Firefox 3.5.2

A questo punto potrebbe comunque sembrare che Firefox abbia i font non correttamente configurati. A tal proposito si consiglia di andare nel menù Edit->Preferences->Content e nella sezione dei font cliccare Advanced e selezionare le grandezze dei font per esempio a 16 e 12. Si ricorda poi che ogni pagina può essere ridimensionata premendo Ctrl-+ o Ctrl--