Установка другого субпиксельного рендеринга на различных мониторах

Я использую парные мониторы, одного из них повернутый на 90 градусов. Шрифт antialising не выглядит правильным в повернутом мониторе (т.е. существуют границы радуги вокруг символов).

Я полагаю, что это вызвано тем, что X использует тот же порядок субпиксельного рендеринга на оба монитора. Существует ли способ настроить различные заказы субпиксельного рендеринга на каждый монитор? (т.е. контролируйте 1 = RGB и контролируйте 2 = vRGB).

13
задан 14 December 2014 в 15:37

1 ответ

Необходимо было бы настроить дисплеи как отдельные X экранов, не общий рабочий стол. Ubuntu должна затем позволить Вам скорректировать субпиксельный порядок на экраны индивидуума X.

Иначе, что произошло бы с окном, которое охватывает два дисплея с отличающимися субпиксельными заказами? Или еще более хитрый, два дисплея в режиме клонирования с различными физическими заказами (RGB по сравнению с BGR).

Это - известное ограничение для всех операционных систем прямо сейчас и нуждалось бы в главной модернизации для получения зафиксированного. Динамическая корректировка не выполнима, потому что библиотека, делающая рендеринг, должна была бы знать, какой экран Вы идете и корректируете динамично. Плюс, предположите, что у Вас есть половина окна на одном экране и половина на другом - это не знало бы, чтобы выбрать.

Установка приблизительно X экранов:

  1. Загрузите и реконфигурируйте X. sudo dpkg-reconfigure -phigh xserver-xorg Выполните шаги для установки главного дисплея. (Я не знаю о способе сделать этот конкретный шаг от CLI),
  2. Откройте терминал и
    lspci
    Это должно дать Вам список Ваших устройств и их идентификаторы шины. Найдите видеокарту и запишите их идентификатор шины.
  3. Сделайте копию из Вашего xorg.conf как xorg.conf.orig возможно, и открытый это: sudo vi /etc/X11/xorg.conf
  4. Считайте это ПРЕЖДЕ, ЧЕМ продолжить удостоверяться, что можно настроить его так, как Вы хотите.
  5. Теперь сделайте два Device разделы и список BusID из карты, которая будет совместно использована и также перечисляют драйвер как это:

    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. Теперь создайте два Screen разделы (с параметрами по Вашему выбору, конечно, единственная вещь, которая должна соответствовать, Device в этом разделе к Identifier в предыдущем) как:

    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. Теперь сделайте a Monitor раздел для каждого монитора как:

    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. Наконец, обновите ServerLayout разделите, чтобы использовать и расположить обоих Screen разделы:

    Section "ServerLayout"
        ...
        Screen         0 "Screen0" 
        Screen         1 "Screen1" leftOf "Screen0"
        ...
    EndSection
    
  9. Перезапустите X и скрестите пальцы! Если это действительно работает, затем продолжают точно настраивать его так, как Вам нравится.

ТЕПЕРЬ ДЛЯ СУБПИКСЕЛЬНОГО РЕНДЕРИНГА ПОРЯДОК Выполняют в этом изменении font.conf любой в ~/font.conf или/etc/X11/font.conf'. bgr

4
ответ дан 23 November 2019 в 03:25

Другие вопросы по тегам:

Похожие вопросы: