La migliore soluzione che ho trovato
Come accennato in precedenza avrai pochissima fortuna se questo funziona, soprattutto con più monitor (il mio problema). Ho optato per un comando a riga singola per ottenere una presentazione multi-monitor coerente, con il mio display di bordo che è l'hidpi, questo:
./xrandr --output eDP-1 --mode "2880x1800" --scale "0.5x0.5"
Questo comando significa : ridimensiona la mia risoluzione nativa del 50%, che quando parliamo di pixel significa che il rendering non dovrebbe interpretare molto e il risultato dovrebbe essere nitido.
Perché funziona: perché un pixel "quadrato" è ora rappresentato in 4 pixel quadrati.
Nota : le tue opzioni saranno probabilmente leggermente diverse.
Alcuni dettagli : ho dovuto tornare a nouveau da nvidia
Primo: verifica se il ridimensionamento xrandr del tuo sistema predefinito non ha sfocature
Installa x11-server-utils
sudo apt install x11-xserver-utils
Trova il display hidpi 'connesso', avrà un nome identificativo davanti a 'connesso':
xrandr -q
esempio di output, il nome del tuo monitor è davanti a "connesso":
xrandr -q output
Quindi il mio monitor è 'eDP-1' e la risoluzione nativa, quella in alto, è 2880x1800. Quindi, ridimensioniamo quello superiore del 50% per evitare la sfocatura, assicurati di usare i tuoi valori di xrandr -q per eDP-1 e 2880x1800 :
xrandr --output eDP-1 --mode "2880x1800" --scale "0.5x0.5"
Se lo fai e hai ancora caratteri nitidi, ecc., Allora sei impostato, passa a 'A capo' di seguito.
Se è sfocato, i seguenti passaggi ti aiuteranno.
Passaggio 1: xrandr di sistema ancora sfocato ... preparazione del sistema
sudo apt install git build-essential autoconf xutils-dev automake dkms gksu libxrandr-dev mesa-utils x11-xserver-utils
Potrebbe essere un po 'diverso per te a seconda del tuo sistema, ma per me ha funzionato.
Passaggio 2: ottieni la fonte xrandr
clonare il codice xrandr
git clone https://anongit.freedesktop.org/git/xorg/app/xrandr.git xrandr_source && cd xrandr_source
Passaggio 3: annota la tua versione di xrandr
Nota la tua versione di xrandr, avrai bisogno di questo:
xrandr --version | grep 'program version' | awk '{print $4}'
Passaggio 4: verifica lo stesso tag git del numero di versione del sistema
Controlla i tag git per xrandr dalla directory xrandr_source
git tag --list | grep 'xrandr'
Trova il tuo numero di versione e "controlla" quel tag
git checkout tag/xrandr-[your version number here]
per me questo era:
git checkout tax/xrandr-1.5.0
Passaggio 5: modificare xrandr.c
Apri xrandr.c con qualsiasi editor di file che desideri utilizzare. Cerca 'transform.filter'. Ci sono circa tre posti. Noterai che è all'interno di un condizionale, qualcosa del genere:
if (sx != 1 || sy != 1)
output->transform.filter = "bilinear";
else
output->transform.filter = "nearest";
'bilineare' è ciò che lo rende sfocato - MA - dal momento che stiamo ridimensionando "esattamente", cioè un pixel ora è quattro, non abbiamo bisogno di bilineare e possiamo andare con "il più vicino".
Hai due opzioni, migliora l'if condizionale o rimuovi completamente tutto l'if e mantieni solo:
output->transform.filter = "nearest";
Dato che non installeremo questo xrandr, potremmo anche prendere la strada che ho fatto. Troverai alcuni posti con:
output->transform.filter = "bilinear";
La cosa più semplice è cambiare semplicemente il "bilineare" in "il più vicino"
Salva il file. Chiudi il tuo editor
Passaggio 6: compilare
./autogen.sh && make
Dovresti avere un xrandr di nuova costruzione ora in quella directory, prova
./xrandr -q
Che dovrebbe darti un risultato.
Ora puoi provare il comando originale xrandr:
./xrandr --output [your display] --mode "[your native resolution]" --scale "0.5x0.5"
Passaggio 7: concludere
Ora puoi anche fare cose come giocare con tutte le tue normali impostazioni relative a caratteri, dpi, anti-alias, ecc
Non ho bisogno di tutto il patrimonio immobiliare extra che l'hidpi dà, inoltre finisci per ingrandire tutto ciò che rende utilizzabile.
Ringraziamento : ho preso la maggior parte delle mie cose per questo da qui, ma ha un paio d'anni e penso che appartenga qui a una domanda più recente: https://forums.linuxmint.com/viewtopic.php?t=159064