Imposta Xorg per usare solo una parte dello schermo


13

Il mio schermo ha una risoluzione di 1280 x 1024. Ma sfortunatamente, la cintura più a destra di 200 pixel è danneggiata e non è in grado di visualizzare alcuna immagine.

Come posso impostare che Xorg tratterà il mio schermo come un dispositivo 1080 x 1024?

Ora ho provato:

Virtual 1080 1024
Viewport 0 0

Non funziona correttamente: l'immagine viene ridimensionata per adattarsi verticalmente e orizzontalmente posso eseguire la panoramica con il mouse.


2
Ho aperto la taglia alla ricerca di più soluzioni, forse più semplici. Grazie a tutti!
Rok Kralj,

Risposte:


8

Dai un'occhiata: http://howto-pages.org/ModeLines/ , hanno una buona spiegazione delle modeline di Xorg. Quindi vai su http://xtiming.sourceforge.net/cgi-bin/xtiming.pl e inserisci le specifiche per la dimensione dello schermo che puoi utilizzare. Questo ti darà una Modeline che puoi aggiungere al tuo file xorg.conf.

I campi 4, 5, 6 e 7 corrispondono ai seguenti valori: HDisplay HSyncStart HSyncEnd HTotal.

Giocando con i campi 5 e 6, sarai in grado di spostare la parte visibile dello schermo a sinistra oa destra, a seconda di quale ti serve.


Lo spiegheresti più in dettaglio?
Rok Kralj,

sicuro. pensa a hsync come al ritorno a capo di una macchina da scrivere. ricorda, come i display dei controlli X sono stati sviluppati ai tempi del CRT. HSyncStart dice di iniziare a disegnare pixel in una posizione e continuare a disegnare fino a HSyncEnd, a quel punto viene impostato il segnale HSync, dicendo a CRT di disegnare la linea successiva sullo schermo. Nell'era dell'LCD, questa è un'eredità, ma è ancora come funziona. Giocando con i campi di inizio e fine delle linee orizzontali, puoi controllare l'ampiezza dello schermo e su quale parte del supporto fisico. Il link nel post ha una buona spiegazione.
Tim Kennedy,

2

Dovrai cercare di capire come utilizzarlo al meglio per i displaymanagers, ma:

Puoi avviare Xorg normalmente, che utilizzerà l'intero schermo alla massima risoluzione, ad es

Xorg :123 -ac

L'opzione -ac disabilita alcune (tutte?) Delle restrizioni di Xorgs che potrebbe avere sul consentire i client. Quindi si avvia Xephyr come unico client (è possibile che si desideri adattare la risoluzione passata come argomento -screen alle proprie esigenze):

DISPLAY=:123 Xephyr :0 -screen 1720x1200

Xephyr è una sorta di "overlay Xserver" che interagisce con i client proprio come qualsiasi Xserver, ma invece di occuparsi del rendering e dell'input (la parte con cui si trova l'utente), Xephyr si affida a un altro Xserver per farlo.

Il modo in cui combinate questi comandi dipende molto dal vostro caso d'uso. In generale, applicazioni come i gestori di sessioni offrono l'opportunità di fornire un comando su come invocare un Xserver.

Cosa ho fatto per provarlo:

Crea /root/.xinitrccon il contenuto

Xephyr :0 -ac -once -query myxdmcphost -screen 1400x1200`

dove 1400 è la larghezza del mio schermo -200 pixel.

Quindi corro xinit -- :123 -my -usual -xorg -options -for -my -computere, di conseguenza, ottengo una schermata di accesso e una sessione che in realtà utilizza tutto il mio schermo ma una colonna larga 200 pixel sul lato destro.

Per avere lo stesso effetto, ad esempio GDM, dovresti fornire il xinitcomando un paio di volte gdm.confcome metodo per invocare un Xserver. Ma non posso dirti dalla cima della mia testa come farlo.


1
Xephyr non supporta l'accelerazione hardware originale, non adatta a qualsiasi DE o gioco moderno.
Rok Kralj,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.