Questa è una versione aggiornata della mia precedente risposta relativa a Ubuntu 12.04. In 16.04 (Xenial) sono necessari 3 passaggi per impostare correttamente DPI anziché 2.
Spiegherò sull'esempio del sistema con Ubuntu 12.04 con Gnome Classic e un monitor con risoluzione 1680x1050. Le mie impostazioni iniziali: xdpyinfo | grep dotssegnalate 96x96 dots, xrdb -query | grep dpisegnalate Xft.dpi: 96, grep DPI /var/log/Xorg.0.logsegnalate alcune impostazioni strane NOUVEAU(0): DPI set to (90, 88).
Nel 16.04 gli output di tutti questi 3 comandi erano coerenti e uguali a 96. Sebbene tale consenso sia migliore del disordine di 12.04, il valore riportato è hardcoded e lontano dal valore DPI reale.
Calcoliamo DPI ottimale per il mio monitor. La dimensione effettiva dello schermo può essere trovata con il comando xrandr | grep -w connected(converti l'output in centimetri) o con un lungo righello a mano. Nel mio caso X = 47.4cm:; Y = 29.6cm. Dividerli per 2,54 per ottenere la dimensione in pollici: X ~ 18.66in; Y ~ 11.65in. Infine dividere l'importo effettivo punti (in base alla risoluzione) per la dimensione in pollici: X = 1680/18.66 ~ 90dpi; Y = 1050/11.65 ~ 90dpi. Quindi il mio dpi reale è 90.
Attenzione , il metodo di misurazione manuale potrebbe essere più accurato dell'output del comando xrandr | grep -w connectedpoiché le versioni più recenti del server X ignorano le dimensioni riportate da EDID e calcolano le dimensioni utilizzando la risoluzione dello schermo e un valore codificato di DPI (maggiori informazioni qui ).
Un altro metodo per trovare la dimensione del monitor è leggere direttamente il suo EDID. Installa il read-edidpacchetto ed esegui il comando sudo get-edid | parse-edid | grep DisplaySizenel terminale. Il suo output ti darà le dimensioni effettive del tuo monitor in millimetri. In caso contrario, utilizzare il righello.
Iniziamo a correggere DPI:
1) In esecuzione 12.04 gksudo gedit, aprire /etc/lightdm/lightdm.confe aggiungere un parametro nella [SeatDefaults]sezione:
xserver-command=X -dpi 90
Non esiste un file simile in 16.04 per impostazione predefinita, quindi è necessario crearlo lightdm.confmanualmente e inserirlo /etc/lightdm/lightdm.conf.d/. I contenuti di questo file sono gli stessi:
[SeatDefaults]
xserver-command=X -dpi 90
Riavvia il computer o riavvia X. Ora grep DPI /var/log/Xorg.0.logmostrerà l'impostazione desiderata.
2) Nella mia precedente risposta ho proposto di creare un file /etc/X11/Xsession.d/contenente stringa xrandr --dpi 90. Funzionava nel 12.04, ma nel 16.04 questa impostazione non è persistente. Nei sistemi più recenti possiamo aggiungere il valore desiderato all'avvio della sessione. Esegui "Startup Applications", premi il pulsante "Aggiungi", chiamalo "Fix DPI" e imposta il comando xrandr --dpi 90nel campo. Salvare le modifiche e accedere nuovamente. Ora xdpyinfo | grep dotssegnalerà 90x90 dots.
Se xdpyinfomostra ancora 96, aggiungi un timeout prima di eseguire xrandr. Modifica il comando in "Applicazioni di avvio" e modificalo in:
bash -c "sleep 15; xrandr --dpi 90"
Riferimento
Il passaggio 2 è facoltativo per 12.04 perché nei sistemi precedenti il passaggio 1 corregge sia i valori Xorg.0.logche i xdpyinfovalori.
3) In GNOME3 DPI l'impostazione è hardcoded su 96 e non può essere modificata direttamente, ma è possibile ridimensionare il testo. Calcola il moltiplicatore desiderato: desired_DPI / 96(nel mio caso 90/96 = 0.9375). Ora esegui il comando (o usa dconfse preferisci):
gsettings set org.gnome.desktop.interface text-scaling-factor 0.9375
Le modifiche verranno applicate immediatamente. xrdb -query | grep dpisegnalerà il desiderato Xft.dpi: 90.
PS Esiste un altro metodo per correggere le impostazioni DPI che è molto più difficile ed è descritto in questa guida. L'ho provato anche e il risultato è stato lo stesso (almeno in 12.04).
Postfazione: solo gli sviluppatori Ubuntu possono dire con certezza se i valori modificati dai Passaggi 1 e 2 contano davvero nella Ubuntu moderna o se vengono silenziosamente ignorati. Solo il passaggio 3 produce le modifiche che sono immediatamente visibili. Gli utenti che ritengono che determinate app possano ancora fare affidamento sulle impostazioni del server X sono incoraggiati a eseguire tutti e 3 i passaggi sopra descritti. Per il resto il passaggio 3 è sufficiente: è l'unico modo di personalizzazione adottato nelle moderne distribuzioni Ubuntu.