Karena monitor yang rusak, saya hanya perlu mengatur setengah bagian kanan layar saya

8

Sisi kiri monitor full hd saya rusak, untuk menggunakan hanya bagian yang baik dari resolusi yang perlu 1274x1080, selaras ke kanan.

Sederhana xrandr -s 1274x1080akan mendapatkan resolusi yang tepat, tetapi terpusat. Menggunakan --transform 1,0,-323,0,1,0,0,0,1akan menggerakkan layar tetapi tidak akan menempati sisi kanan.

Saya sudah mencoba bermain dengan modelinemenggunakan tautan yang diberikan dalam jawaban ini , tetapi layar tidak bergerak apa pun yang saya ubah.

Luis Pacheco
sumber

Jawaban:

5

Anda tidak jauh salah dengan --transformasi itu!

Intinya adalah Anda tidak hanya ingin menggeser layar ke kanan, tetapi juga Anda perlu mengecilkannya setengah di sumbu horizontal. Untuk melakukannya mari kita lihat xrandrmanual tempat kita membaca:

--transformasi a, b, c, d, e, f, g, h, i

(...)

Dengan kata lain, koordinat perangkat (x 'y') dari piksel yang ditransformasikan adalah:

                 x' = (ax + by + c) / w'   and
                 y' = (dx + ey + f) / w'   ,
                 with  w' = (gx + hy + i)  .

Oleh karena itu, untuk menggeser output ke kanan, turunkan sumbu X sebesar 2, biarkan sumbu Y apa adanya, dan jangan melakukan operasi lain (rotasi, inversi, dll.) Yang harus dilakukan

xrandr --output LVDS1 --transform 2,0,-1920,0,1,0,0,0,1

Di atas saya menganggap resolusi normal Anda adalah 1920x1080 (Anda menyebutkan full hd, dan begitulah mereka menyebutnya). Tentunya perubahan nama tampilan menjadi milik Anda.

Jika hanya sebagian kecil dari monitor yang rusak (tidak setengah) maka Anda perlu melakukan beberapa perhitungan:

a = 1/(1-broken_fraction)
c = (1-a)*resolution

jadi jika rusak 1/3 kita memiliki = 1,5, c = -960:

xrandr --output LVDS1 --transform 1.5,0,-960,0,1,0,0,0,1

Tentu saja Anda dapat mengubah resolusi dengan perintah yang sama dalam hal ini diperlukan perhitungan ulang.

jimmij
sumber
Sangat menyedihkan Anda tidak pernah mendapat balasan dari pengguna. Bagus sekali, ini perhitungan dan penjelasan yang bagus!
ReneFroger