Font “xterm” yang lebih besar pada tampilan HIDPI

15

Setelah beberapa tahun bahagia menggunakan emulator terminal berbeda seperti Konsole , Gnome-TERMINAL , dan akhir-akhir ini Terminal XFCE di lingkungan desktop yang sesuai, saya memutuskan untuk menggunakan xterm lama yang baik dengan font bitmap -nya . Ini berfungsi dengan baik, itu mendukung Unicode, dan keluarga font tetap default berisi karakter dari hampir semua bahasa, yang hebat.

Tetapi saya menemukan masalah penting. Font-fontnya sangat kecil. Bahkan ukuran Huge yang disebut (yaitu font bitmap 10x20) sangat kecil bagi saya, dan tidak dapat digunakan.

Pengaturan default saya untuk lingkungan XFCE diatur ke 120 dpi, tetapi xpdyinfomelaporkan 97x97 DPI

$ xdpyinfo |grep resolution
  resolution:    97x97 dots per inch

Jadi saya mencoba mengubah DPI xrandr, tetapi itu tidak membantu.

$ xrandr --dpi 120

Hasilnya sepertinya diterapkan

$ xdpyinfo | grep resolution
  resolution:    120x120 dots per inch

tetapi tidak mengubah resolusi xtermsama sekali. Saya bahkan telah mencoba menggunakan penskalaan, tetapi memengaruhi seluruh X, daripada satu aplikasi:

$ xrandr --output LVDS1 --scale 0.5x0.5

Ada workarounds untuk Qt dan Gtk , tapi bagaimana Xlibaplikasi berbasis seperti Xterm, Xcalc, Xman, Xfige, dll? Haruskah kita menonton mereka memudar, karena layar DPI naik? Tolong Bantu jika Anda tahu solusinya.


Inilah yang telah saya lakukan, yang entah bagaimana berhasil, tetapi saya tidak dapat menggunakan "keluarga font tetap" asli, jadi sekarang mungkin hanya berfungsi untuk beberapa bahasa saja.


PS1: Saya telah menginstal 100 font DPI untuk X, tetapi saya tidak bisa menggunakannya

$ sudo apt-get install xfonts-100dpi

PS2: Fontforgeyang juga menggunakan Xlib, menggunakan tema yang bagus dan ukuran font normal. Saya tidak tahu bagaimana cara melakukannya.

PS3: Saya menguji otf2bdfdan bdftopcfutiliites untuk membuat PCFfont bitmap eksperimental untuk HIDPI dari TTF/OTFfont vektor .

PS4: Setelah menginstal font 100DPI, ini bagus, meskipun tidak memiliki dukungan bahasa yang bagus dari fixedfont default .

$ xterm -font -Adobe-Courier-Bold-r-Normal-*-34-*-100-100-*-*-*-*

Saya sudah menggunakan fontsel. Ini sangat membantu.

PS5: Ini juga berguna.

PS6: Saya bisa membuat font bitmap 120DPI dari Courier New dengan 20pt

$ otf2bdf -p 20 -r 120 cour.ttf > cour.bdf
$ bdftopcf cour.bdf | gzip - > cour.pcf.gz
$ sudo cp cour.pcf.gz /usr/share/fonts/X11/misc/
$ fc-cache
$ xterm -font -*-*-*-*-*-*-*-*-120-120-*-*-*-*

PS7: 75 DPI di-hardcode dalam font BDF. Mungkin mengubahnya akan membantu.

PS8: vncdesk adalah alat yang baik untuk digunakan untuk meningkatkan satu jendela .

Ho1
sumber
Xft.dpi: 120di ~/.Xresourcestidak bekerja?
ILMostro_7
xrdb -query | grep dpisudah melaporkan:Xft.dpi: 120
Ho1
Apakah Anda membuat ~/.Xresourcesfile atau ~/.Xdefaults, atau apakah sesuai dengan sistem Anda? Tautan yang Anda tunjuk yang Anda katakan membantu bukanlah kumpulan opsi yang mencakup semua yang tersedia untuk xterm. Misalnya,, Xft.lcdfilter: lcddefault Xft.antialias: true Xft.hinting: true Xft.hintstyle: hintslightdan banyak lagi.
ILMostro_7
1
@ MartinSchröder Ya, sebenarnya saya telah menguji font 120dpi saya sendiri yang dihasilkan dari font truetype Courier New . Tapi itu tidak memiliki semua bahasa yang didukung "Keluarga fonta bitmap tetap", jadi saya mencari cara yang lebih baik untuk melakukan ini. Saat ini di systme saya, / etc / X11 / app-defaults / XTerm, sebagai VT100.font6 default (Besar) diatur ke font 10x20 dari keluarga font tetap, yang agak kecil di layar saya. Saya akan senang jika kami memiliki en.wikipedia.org/wiki/Fixed_%28typeface%29 untuk 20x40, tetapi kami tidak.
Ho1
1
Apakah Anda perlu menggunakan font bitmap? xtermmendukung font truetype juga. xterm -fa 'DejaVu Sans Mono' -fs 40(walaupun tidak beralih di antara font ketika mesin terbang tidak tersedia seperti beberapa emulator terminal lainnya)
Stéphane Chazelas

Jawaban:

10

Anda telah mengisyaratkan jawabannya sendiri dengan merujuk https://en.wikipedia.org/wiki/Fixed_(typeface)

Ini adalah font bitmap tetap standar yang telah dikembangkan oleh Markus Kuhn untuk memiliki set karakter yang agak lengkap. Pertanyaannya adalah bagaimana skala bitmap .

Apa yang telah Anda capai sejauh ini adalah penskalaan font vektor dan mengubahnya menjadi bitmap (ttf → bdf → pcf) . Itu adalah strategi yang baik tetapi seperti yang Anda sebutkan itu tidak memiliki dukungan bahasa. Itu tampak aneh karena Courier New adalah salah satu font lengkap yang lebih unik tapi saya ngelantur! Mungkin coba gunakan Mono yang merupakan tiruan.

Namun saya tidak mengerti mengapa Anda melakukan hal ini sebagai xterm tidak mendukung truetype .

Ubah ~/.Xresourcesseperti ini:

XTerm*renderFont: true
XTerm*faceName: VeraMono
XTerm*faceSize: 10

Tetapi kembali ke tugas: Anda menginginkan font bitmap yang lebih besar .

Bitmap terbesar yang tersedia adalah:

10x20   -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1

Markus sangat baik sehingga ia memasok file sumber BDF. Jika distribusi Anda tidak memiliki pembaruan terbaru (dari April 2009) Anda dapat mengambil paket langsung dari dia.

Paket font "-misc-fixed- *":

http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz

Daripada mengkonversi bolak-balik antara pcf dan bdf Anda bisa / harus tetap berpegang pada format sumber. Anda dapat menggunakan editor font BDF untuk mengubah ukuran font. Jangan mengharapkan antialiasing atau tipu daya semacam itu - tetapi setidaknya Anda bisa mendapatkan ukuran yang bisa dibaca.

Atau Anda dapat menggunakan bdfresize oleh Hiroto Kagotani (juga ditemukan di beberapa sistem paket).

MEMPERBARUI:

Saya tidak tahu cara untuk skala hanya satu jendela (tidak pernah membutuhkannya). Anda dapat melacak pertanyaan Pengguna Super ini . Ketika saya memiliki kebutuhan, saya telah meningkatkan seluruh lingkungan.

Anda dapat menurunkan versi tampilan 3200x1800 ke 1920x1080 menggunakan:

xrandr --dpi 141
xrandr --output eDP1 --scale 0.6x0.6

Trik lain untuk penskalaan layar di berbagai pengelola jendela dapat ditemukan di sini . Mereka menyarankan menggunakan VNC:

Salah satu pendekatan adalah menjalankan aplikasi layar penuh dan tanpa dekorasi di desktop VNC-nya sendiri. Kemudian skala pemirsa. Dengan Vncdesk ( vncdesk-git dari AUR) Anda dapat mengatur desktop per aplikasi, kemudian mulai server dan klien dengan perintah sederhana seperti vncdesk 2.

x11vnc memiliki opsi eksperimental -appshare, yang membuka satu penampil per jendela aplikasi. Mungkin ada sesuatu yang bisa diretas dengan itu.

Claus Andersen
sumber
Jawaban yang bagus, terima kasih. Saya akan dengan senang hati menerima jawabannya. Mengapa tidak mengetik? 1) Saya ingin menggunakannya pada komputer lama yang lambat. 2) Keluarga tetap memiliki dukungan bahasa yang hebat, seperti dijelaskan dalam cl.cam.ac.uk/ ~ mgk25/ucs-fonts.html Dan satu hal lagi: Apakah ada cara untuk hanya skala satu jendela di X? Saya pikir ini akan meningkatkan jawabannya.
Ho1
1
W / R untuk kebutuhan poster asli untuk dukungan luas dari berbagai bahasa, Vera terbatas tetapi DejaVu spinoff-nya mendukung banyak set karakter yang berbeda. Dari sudut pandang ini juga font monospace yang tersedia kurang lebih bebas dari MS sangat baik, baik Courier10 dan Calibri. Saya telah jatuh cinta, semacam, dengan Calibri!
gboffi
0

Sekarang Anda dapat meningkatkan ukuran font dengan menahan kontrol dan tombol kanan mouse (yaitu ctrl+right mouse button) dan pilih ukuran font. Untuk menjadikannya default, Anda harus memiliki Xresourceskonfigurasi. Saya mencobanya dan saya akan memperbarui jawabannya begitu saya mendapatkannya.

Memperbarui:

Anda dapat membuat .Xresourcesfile di dalam direktori home Anda dan menambahkan baris di bawah ini xterm*font: *-fixed-*-*-*-18-*. Kemudian gabungkan perubahan Anda dengan utilitas sumber daya server X menggunakan xrdb(yaitu xrdb -merge ~/.Xresources) atau Anda dapat me-restart Xjuga. Yang baru xtermsharus memiliki ukuran font yang berubah.

Thushi
sumber
Terima kasih atas jawaban Anda, saya menggunakan font bitmap terbesar yang tersedia untuk keluarga font tetap: 10x20 yang digunakan untuk ukuran font Huge , tetapi juga sangat kecil pada tampilan HIDIP. Harap perhatikan bahwa saya berbicara tentang font bitmap, dan bukan font truetype.
Ho1
0

Saya tidak yakin tetapi Anda mungkin dapat menggabungkan font dan siz seperti ini:

xterm -fn helvetica -fs 20x10

uji font kecil

salam, maniat1k

maniat1k
sumber
Terima kasih atas jawaban Anda. Ini menyediakan font yang lebih besar:, xterm -fs 20x10tetapi bukan "font tetap": en.wikipedia.org/wiki/Fixed_%28typeface%29 , Jadi tidak mengandung karakter internasional yang dimiliki font tetap.
Ho1