Ini adalah versi terbaru dari jawaban saya sebelumnya yang terkait dengan Ubuntu 12.04. Dalam 16,04 (Xenial) 3 langkah diperlukan untuk mengatur DPI dengan benar, bukan 2.
Saya akan menjelaskan pada contoh sistem dengan Ubuntu 12.04 dengan Gnome Classic dan monitor dengan resolusi 1680x1050. Pengaturan awal saya: xdpyinfo | grep dots
dilaporkan 96x96 dots
, xrdb -query | grep dpi
dilaporkan Xft.dpi: 96
, grep DPI /var/log/Xorg.0.log
melaporkan beberapa pengaturan aneh NOUVEAU(0): DPI set to (90, 88)
.
Dalam 16,04 output dari ketiga perintah ini konsisten dan sama dengan 96. Meskipun konsensus seperti itu lebih baik daripada gangguan 12,04, nilai yang dilaporkan adalah hardcoded dan jauh dari nilai DPI nyata.
Mari kita hitung DPI optimal untuk monitor saya. Ukuran aktual layar dapat ditemukan dengan perintah xrandr | grep -w connected
(konversi output ke sentimeter) atau dengan penggaris yang panjang dengan tangan. Dalam kasus saya: X = 47.4cm
; Y = 29.6cm
. Membagi mereka dengan 2,54 untuk mendapatkan ukuran dalam inci: X ~ 18.66in
; Y ~ 11.65in
. Terakhir membagi titik-titik jumlah aktual (berdasarkan resolusi Anda) dengan ukuran dalam inci: X = 1680/18.66 ~ 90dpi
; Y = 1050/11.65 ~ 90dpi
. Jadi dpi saya yang sebenarnya adalah 90.
Berhati-hatilah , metode pengukuran manual mungkin lebih akurat, daripada output dari perintah xrandr | grep -w connected
karena versi yang lebih baru dari server X mengabaikan ukuran yang dilaporkan oleh EDID dan menghitung ukuran menggunakan resolusi layar dan nilai DPI hardcoded (info lebih lanjut di sini ).
Metode lain bagaimana menemukan ukuran monitor adalah membaca EDID-nya secara langsung. Instal read-edid
paket dan jalankan perintah sudo get-edid | parse-edid | grep DisplaySize
di terminal. Outputnya akan memberi Anda ukuran sebenarnya dari monitor Anda dalam milimeter. Jika tidak - gunakan penggaris.
Mari kita mulai memperbaiki DPI:
1) Dalam menjalankan 12,04 gksudo gedit
, buka /etc/lightdm/lightdm.conf
dan tambahkan parameter di bawah [SeatDefaults]
bagian:
xserver-command=X -dpi 90
Tidak ada file seperti itu di 16.04 secara default, jadi Anda harus membuat lightdm.conf
secara manual dan memasukkannya ke dalam /etc/lightdm/lightdm.conf.d/
. Isi file ini sama:
[SeatDefaults]
xserver-command=X -dpi 90
Nyalakan kembali komputer Anda atau mulai ulang X. Sekarang grep DPI /var/log/Xorg.0.log
akan menampilkan pengaturan yang diinginkan.
2) Dalam jawaban saya sebelumnya saya mengusulkan untuk membuat file yang /etc/X11/Xsession.d/
berisi string xrandr --dpi 90
. Ini bekerja di 12,04, tetapi di 16,04 pengaturan ini tidak persisten. Dalam sistem yang lebih baru, kita dapat menambahkan nilai yang diinginkan pada awal sesi. Jalankan "Aplikasi Startup", tekan tombol "Tambah", beri nama "Perbaiki DPI" dan tetapkan perintah xrandr --dpi 90
di bidang. Simpan perubahan dan login kembali. Sekarang xdpyinfo | grep dots
akan melaporkan 90x90 dots
.
Jika xdpyinfo
masih menunjukkan 96 maka tambahkan batas waktu sebelum berjalan xrandr
. Edit perintah di "Aplikasi Startup" dan ubah ke:
bash -c "sleep 15; xrandr --dpi 90"
Referensi
Langkah 2 adalah opsional untuk 12,04 karena dalam sistem yang lebih lama Langkah 1 memperbaiki keduanya Xorg.0.log
dan xdpyinfo
nilai - nilai.
3) Dalam pengaturan DPI GNOME3 hardcoded ke 96 dan tidak dapat diubah secara langsung, tetapi teks dapat diskalakan sebagai gantinya. Hitung pengganda yang diinginkan: desired_DPI / 96
(dalam kasus saya 90/96 = 0.9375
). Sekarang jalankan perintah (atau gunakan dconf
jika Anda suka):
gsettings set org.gnome.desktop.interface text-scaling-factor 0.9375
Perubahan akan diterapkan sekaligus. xrdb -query | grep dpi
akan melaporkan yang diinginkan Xft.dpi: 90
.
PS Ada metode lain untuk memperbaiki pengaturan DPI yang jauh lebih sulit dan dijelaskan dalam panduan ini . Saya mencobanya juga dan hasilnya sama (setidaknya dalam 12,04).
Penutup: Hanya pengembang Ubuntu yang dapat mengatakan dengan pasti apakah nilai yang diubah oleh Langkah 1 & 2 benar-benar penting di Ubuntu modern atau diabaikan secara diam-diam. Hanya Langkah 3 yang menghasilkan perubahan yang langsung terlihat. Para pengguna yang menganggap bahwa aplikasi tertentu mungkin masih mengandalkan pengaturan server X didorong untuk melakukan semua 3 langkah yang dijelaskan di atas. Selebihnya, Langkah 3 sudah cukup - itulah satu-satunya cara penyesuaian yang diterapkan di distro Ubuntu modern.