Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Linux su schermi HiDPI

Un riassunto del supporto agli schermi HiDPI su Linux: ecco i migliori ed i peggiori ambienti desktop per questi schermi (e come sfruttarli al meglio).
Un riassunto del supporto agli schermi HiDPI su Linux: ecco i migliori ed i peggiori ambienti desktop per questi schermi (e come sfruttarli al meglio).
Link copiato negli appunti

Gli schermi HiDPI sono sempre più diffusi e utilizzati su una grande varietà di dispositivi. Chi ha avuto modo di osservarne uno da vicino di sicuro avrà avuto difficoltà a distinguere pixel contigui, notando una migliore resa del testo e dei contenuti video ad alta definizione.
HiDPI è infatti l’acronimo di High Dots Per Inch e si riferisce ad una categoria di display caratterizzati da un’elevata densità di pixel, tale quasi da competere con la risoluzione della carta stampata.

Anche se i primi esempi di schermi HiDPI risalgono ai primi anni 2000 con i modelli T220 e T221 di IBM, la diffusione vera e propria inizia con l’introduzione dei Retina display da parte di Apple su iPhone 4 nel 2010. iOS è quindi il sistema operativo che ha garantito finora il miglior supporto a questa tecnologia, seguito da Windows 8.1 e successivi.

E Linux? Cosa dobbiamo aspettarci quando vogliamo usarlo con un monitor HiDPI?

In questo articolo faremo il punto della situazione sul supporto offerto sugli ambienti desktop più noti.
Per i nostri test useremo la versione beta di Ubuntu 16.04 Xenial Xerus, installato su un Lenovo ThinkPad T540p equipaggiato con uno schermo HiDPI con una risoluzione nativa di 2880x1620 pixels.

Promossi: Unity, Gnome, Cinnamon e KDE

Unity 7 è al momento uno dei migliori desktop environments per quanto riguarda il supporto HiDPI. Subito dopo l’installazione di Ubuntu 16.04, effettuato il primo login, gli elementi del desktop come pannello superiore, launcher di Unity, testo e icone appariranno eccessivamente piccoli e poco leggibili. Possiamo rimediare da Impostazioni di sistema->Monitor, modificando mediante l’apposito slider il valore di Scala per menù e barre dei titoli. Per il display usato in questi test il valore ottimale è 2, in caso di caratteristiche differenti (risoluzione e DPI) si possono sperimentare altri valori intermedi.

Figura 1. Impostazioni HiDPI in Unity (click per ingrandire)

Impostazioni HiDPI in Unity

Diversamente da Unity, per Gnome, ormai alla versione 3.18, è necessario attivare il supporto HiDPI da riga di comando. Aprite l’emulatore di terminale e digitate il seguente comando:

gsettings set org.gnome.desktop.interface scaling-factor 2

Se avete un monitor con risoluzione maggiore potete provare con il valore 3. Purtroppo a differenza di Unity il fattore di scala è intero, ciò significa che non sono ammessi valori intermedi come 1,5.

Questo è l’unico modo per rendere il supporto HiDPI completo, consistente tra tutti gli elementi dell’interfaccia e persistente al riavvio.
Esiste un’opzione Scala finestre per schermi HiDPI nella tab Finestre dello Strumento di personalizzazione (Tweak Tool), ma sfortunatamente ciò funziona solo per applicazioni native GTK3 (ad esempio non modificherà lo scaling di Mozilla Firefox) e non scala correttamente il pannello superiore delle Attività, nemmeno dopo un riavvio.

Cinnamon, attualmente alla versione 2.8.6, offre supporto HiDPI già dalla versione 2.2. Nel caso la presenza di uno schermo HiDPI non sia automaticamente rilevata, vi basterà aprire le Preferenze->Generali e scegliere il valore Doppio (HiDPI) per l’opzione Scalamento dell’interfaccia utente.

Figura 2. Impostazione HiDPI per Cinnamon 2.2 o superiore (click per ingrandire)

Impostazione HiDPI per Cinnamon 2.2 o superiore

KDE 5.5.4, installato su Ubuntu 16.04 integra il supporto HiDPI modificando i DPI dei caratteri da Caratteri->Forza DPI per i caratteri e lo scaling della interfaccia da Monitor e schermi->Scala lo schermo->Scale.
L’altezza del pannello va regolata a parte, mediante click del tasto destro sul pannello Opzioni di pannello->Impostazioni di Pannello->Altezza e trascinando il bordo fino alla quota desiderata.
Apportate queste modifiche è necessario riavviare il sistema per renderle effettive.

Figura 3. Impostaziono HiDPI per KDE plasma 5 (click per ingrandire)

Impostazione HiDPI per KDE plasma 5

Bocciati: Xfce, LXDE e Mate

XFCE e LXDE sono ancora basati sul framework GTK2, e pertanto, senza sorpresa, ci rimane da constatare che il supporto HiDPI è ancora incompleto in XFCE e totalmente assente in LXDE, penalizzando fortemente l’uso di tali ambienti su questo tipo di pannello.
Abbiamo provato la Beta 1 di Xubuntu 16.04 che installa di default la versione 4.12 di Xfce.

Tramite Impostazioni->Aspetto->Caratteri->DPI personalizzati è possibile modificare il numero di DPI usato per i caratteri, ma sfortunatamente questa impostazione non ha alcun effetto sul resto dell’interfaccia, e lascia pertanto bordi delle finestre, le icone dei menu ed il resto dei controlli non correttamente scalati.

Figura 4. Impostazione dei DPI per i caratteri in Xfce 4.12 (click per ingrandire)

Impostazione dei DPI per i caratteri in Xfce 4.12

Gli unici elementi su cui è possibile agire sono le icone del desktop, delle quali possiamo aumentare la dimensione fino a 64 pixel tramite Impostazioni->Scrivania->Icone->Dimensione delle Icone, e l’altezza del pannello da Pannello->Preferenze del Pannello->Visualizzazione->Dimensione riga (pixel).
Tuttavia nessuna di queste modifiche contribuisce a rendere l’esperienza utente piacevole.

Stesse considerazioni per LXDE sulla Beta 1 di Lubuntu 16.04, che non espone neanche l’opzione per modificare i DPI dei caratteri.
È bene citare in questo contesto LXQt, un port di LXDE da GTK2 a Qt. Il progetto è da poco approdato alla versione 0.10, e non è stato ritenuto sufficientemente maturo per essere incluso di default nella release di Lubuntu 16.04.
Si spera che ciò possa avvenire con la release 16.10, che beneficerebbe quindi del supporto nativo per HiDPI di Qt, introdotto dalla versione 5.6.

Mate, anch’esso basato su GTK2, alla versione 1.12 ancora non fornisce nessun supporto HiDPI se non per i caratteri, con tutti i problemi che da ciò derivano e che lo rendono difficilmente usabile in un contesto HiDPI.

xrandr

Nel caso in cui dovessimo essere obbligati ad usare un ambiente desktop che non supporta gi HiDPI, ad esempio Xfce o LXDE, potremmo rendere l’interfaccia più usabile ricorrendo al tool xrandr.
Questa utility consente di modificare il comportamento dell'estensione randr (Rotate and Resize) al protocollo X11 per il rendering dell’interfaccia grafica su server X.
xrandr consente di modificare lo scaling del frame buffer di modo da adattarlo a qualsiasi risoluzione. L’unico problema è che l’interfaccia sarà scalata in una fase successiva a quella di disegno, e di conseguenza risulterà sfocata.

Figura 5. Effetto del fattore di scala applicato mediante xrandr su Xfce (click per ingrandire)

Effetto del fattore di scala applicato mediante xrandr su Xfce

Le impostazioni di xrandr si applicano per monitor, identificato dal proprio nome. Nel caso di una configurazione singolo schermo vi basterà il comando seguente per ottenere l’identificativo.

xrandr | grep -v disconnected | grep connected | cut -d' ' -f1

Possiamo usare l’identificativo dello schermo (in questo caso Monitor1) per modificare lo scaling del frame buffer. Nel seguente comando e modificate il valore 0.5 per adattarlo di volta in volta a specifiche esigenze.

xrandr --output Monitor1 --scale 0.5x0.5

Boot loader e schermate di avvio

In generale il supporto HiDPI è assente nei principali boot loader LILO e GRUB, dove è possibile attuare un piccolo miglioramento incrementando la dimensione del font. Tuttavia data la limitata interazione con questi componenti, il mancato supporto HiDPI può essere facilmente tollerato.

Per quanto riguarda i greeter di sistema, Ligthdm e Unity greeter non scalano correttamente, mentre MDM (MATE Display Manager), che troviamo di default su Linux Mint, supporta parzialmente gli HiDPI.

Ti consigliamo anche