Impostazione di rendering subpixel diversi su monitor diversi


16

Sto usando due monitor, uno dei quali ruotato di 90 gradi. L'antializzazione dei caratteri non appare corretta nel monitor ruotato (ovvero, ci sono bordi arcobaleno attorno ai caratteri).

Credo che questo sia perché X sta usando lo stesso ordine di rendering subpixel su entrambi i monitor. Esiste un modo per configurare diversi ordini di rendering subpixel per ciascun monitor? (ad esempio, monitor 1 = RGB e monitor 2 = vRGB).


Sembra che questo non sia ancora possibile (nessuna soluzione software). Vedi questo per qualcosa di correlato.
Ashhar Hasan,

Risposte:


4

Dovresti configurare i tuoi schermi come schermi X separati, non come un desktop condiviso. Ubuntu dovrebbe quindi consentire di regolare l'ordine dei sub-pixel per le singole schermate X.

Altrimenti, cosa accadrebbe con una finestra che si estende su due dispositivi di visualizzazione con diversi ordini di sub-pixel? O ancora più complicato, due display in modalità clone con diversi ordini fisici (RGB vs BGR).

Questa è una limitazione nota per tutti i sistemi operativi in ​​questo momento e avrebbe bisogno di una riprogettazione importante per farlo riparare. La regolazione dinamica non è fattibile perché la libreria che esegue il rendering dovrebbe sapere su quale schermo ci si trova e regolare dinamicamente. Inoltre, supponi di avere metà di una finestra su uno schermo e metà su un altro - non saprebbe quale scegliere.

Impostazione di più schermi X:

  1. Avviare e riconfigurare X. sudo dpkg-reconfigure -phigh xserver-xorg Seguire i passaggi per impostare il display principale. (Non conosco un modo per fare questo particolare passaggio dalla CLI)
  2. Apri un terminale e
    lspci
    questo dovrebbe darti un elenco dei tuoi dispositivi e dei loro ID bus. Trova la scheda grafica e annota i loro ID bus.
  3. Fai una copia del tuo xorg.confcome xorg.conf.origforse e aprilo:sudo vi /etc/X11/xorg.conf
  4. Leggi PRIMA di procedere per assicurarti di poterlo personalizzare quanto vuoi.
  5. Ora crea due Devicesezioni ed elenca la BusIDscheda da condividere e elenca anche il driver in questo modo:

    Section "Device"
        Identifier  "nvidia0"
        # Your preferred driver
        Driver      "nvidia"
        # Edit the BusID with the location of your graphics card
        BusID       "PCI:2:0:0"
        Screen      0
    EndSection
    
    Section "Device"
        Identifier  "nvidia1"
        # Your preferred driver
        Driver      "nvidia"
        # Edit the BusID with the location of your graphics card
        BusId       "PCI:2:0:0"
        Screen      1
    EndSection
    
  6. Ora crea due Screensezioni (con i parametri di tua scelta ovviamente, l'unica cosa che deve corrispondere è la Devicein questa sezione alla Identifierprecedente) come:

    Section "Screen"
        Identifier  "Screen0"
        Device      "nvidia0"
        Monitor     "Monitor0"
        DefaultDepth 24
        Subsection "Display"
            Depth       24
            Modes       "1600x1200" "1024x768" "800x600" "640x480" 
        EndSubsection
    EndSection
    
    Section "Screen"
        Identifier  "Screen1"
        Device      "nvidia1"
        Monitor     "Monitor1"
        DefaultDepth 24
        Subsection "Display"
            Depth       24
            Modes       "1600x1200" "1024x768" "800x600" "640x480" 
        EndSubsection
    EndSection
    
  7. Ora crea una Monitorsezione per ciascun monitor come:

    Section "Monitor"
        Identifier "monitor name here"
    EndSection
    
    Section "Monitor"
        Identifier "monitor name here"
        # Rotate as you want (your question says one is rotated)
        Rotate "left"
    EndSection
    
  8. Infine, aggiorna la ServerLayoutsezione per utilizzare e posizionare entrambe le Screensezioni:

    Section "ServerLayout"
        ...
        Screen         0 "Screen0" 
        Screen         1 "Screen1" leftOf "Screen0"
        ...
    EndSection
    
  9. Riavvia X e incrocia le dita! Se funziona, continua a perfezionarlo quanto preferisci.

ORA PER L'ORDINE DI RENDERING DEL SUBPIXEL Effettuare questa modifica font.confin ~/font.confo / etc / X11 / font.conf`. BGR


Sto aggiungendo i passaggi su come farlo. Ma speriamo che qualcuno abbia un modo fantastico di fare ciò di cui hai bisogno.
Ashhar Hasan,

Sembra che anche io abbia colpito un blocco. Anche se posso specificare diversi percorsi dei font Xorg.confma non sembra scegliere percorsi per font.conffile diversi . :(
Ashhar Hasan,
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.