การตั้งค่าการแสดงผลพิกเซลย่อยที่แตกต่างกันบนจอภาพที่แตกต่างกัน


16

ฉันใช้จอภาพสองจอโดยหนึ่งในนั้นหมุนได้ 90 องศา การลดรอยหยักแบบอักษรไม่ได้ถูกต้องในหน้าจอหมุน (เช่นมีเส้นรุ้งล้อมรอบตัวอักษร)

ฉันเชื่อว่าเป็นเพราะ X ใช้ลำดับการเรนเดอร์พิกเซลเดียวกันบนจอภาพทั้งสอง มีวิธีการกำหนดค่าการแสดงผลย่อยพิกเซลที่แตกต่างกันสำหรับแต่ละจอภาพหรือไม่? (เช่นจอภาพ 1 = RGB และจอภาพ 2 = vRGB)


ดูเหมือนว่ายังเป็นไปไม่ได้ (ไม่มีโซลูชันซอฟต์แวร์) ดูสิ่งนี้สำหรับบางสิ่งที่เกี่ยวข้อง
Ashhar Hasan

คำตอบ:


4

คุณต้องกำหนดค่าจอภาพเป็นหน้าจอ X แยกต่างหากไม่ใช่เดสก์ท็อปที่แชร์ อูบุนตูควรให้คุณปรับเปลี่ยนลำดับพิกเซลย่อยสำหรับแต่ละหน้าจอ X

มิฉะนั้นจะเกิดอะไรขึ้นกับหน้าต่างที่ขยายอุปกรณ์แสดงผลสองอันที่มีคำสั่งย่อยพิกเซลแตกต่างกัน หรือแม้กระทั่งมีเล่ห์เหลี่ยมทั้งสองจอแสดงผลในโหมดโคลนพร้อมคำสั่งทางกายภาพที่แตกต่างกัน (RGB vs 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. ตอนนี้ทำ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


ฉันกำลังเพิ่มขั้นตอนในการทำ แต่ให้หวังว่าใครบางคนจะมาพร้อมกับวิธีที่ยอดเยี่ยมในการทำสิ่งที่คุณต้องการ
Ashhar Hasan

ดูเหมือนว่าฉันจะต้องโดนบล็อกด้วยเหมือนกัน แม้ว่าฉันจะสามารถระบุแบบอักษรที่แตกต่างกันในXorg.confแต่ดูเหมือนจะไม่เลือกเส้นทางสำหรับfont.confไฟล์ที่แตกต่างกัน :(
Ashhar Hasan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.