Phông chữ xterm lớn hơn trên màn hình HIDPI


15

Sau vài năm vui vẻ sử dụng các trình giả lập thiết bị đầu cuối khác nhau như Konsole , Gnome-TERMINALXFCE Terminal trong môi trường máy tính để bàn thích hợp của họ, tôi đã quyết định sử dụng xterm cũ tốt với phông chữ bitmap của nó . Nó hoạt động tốt, nó hỗ trợ Unicode và họ phông chữ cố định mặc định chứa các ký tự từ gần như tất cả các ngôn ngữ, điều này thật tuyệt.

Nhưng tôi đã gặp một vấn đề quan trọng. Các phông chữ thực sự nhỏ. Ngay cả cái gọi là Kích thước khổng lồ (phông chữ 10 x20) là rất nhỏ đối với tôi và không thể sử dụng được.

Cài đặt mặc định của tôi cho môi trường XFCE được đặt thành 120 dpi, nhưng xpdyinfobáo cáo 97x97 DPI

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

Vì vậy, tôi đã cố gắng thay đổi DPI bằng xrandr, nhưng không được.

$ xrandr --dpi 120

Kết quả dường như được áp dụng

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

nhưng nó không thay đổi độ phân giải của xtermtất cả. Tôi thậm chí đã thử sử dụng tỷ lệ, nhưng nó ảnh hưởng đến toàn bộ X, thay vì một ứng dụng duy nhất:

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

cách giải quyết cho Qt và Gtk , nhưng những gì về Xlibcác ứng dụng dựa trên thích Xterm, Xcalc, Xman, Xfige, vv? Chúng ta có nên xem chúng mờ dần đi không, khi màn hình DPI tăng lên? Xin hãy giúp đỡ nếu bạn biết bất kỳ cách giải quyết.


Đây là những gì tôi đã làm, hoạt động bằng cách nào đó, nhưng tôi không thể sử dụng "họ phông chữ cố định" ban đầu, vì vậy giờ đây nó chỉ có thể hoạt động với một số ngôn ngữ.


PS1: Tôi đã cài đặt 100 phông chữ DPI cho X, nhưng tôi không thể sử dụng chúng

$ sudo apt-get install xfonts-100dpi

PS2: Fontforgecũng sử dụng Xlib, sử dụng một chủ đề đẹp và kích thước phông chữ bình thường. Tôi không biết làm thế nào nó làm điều đó.

PS3: Tôi đang thử nghiệm otf2bdfbdftopcfsử dụng để tạo PCFphông chữ bitmap thử nghiệm cho HIDPI từ TTF/OTFphông chữ vector .

PS4: Sau khi cài đặt phông chữ 100DPI, điều này rất tốt, mặc dù nó thiếu hỗ trợ ngôn ngữ tuyệt vời cho fixedphông chữ mặc định .

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

Tôi đã sử dụng fontsel. Nó thực sự hữu ích.

PS5: Điều này cũng hữu ích.

PS6: Tôi có thể tạo phông chữ bitmap 120DPI từ Courier New với 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 được mã hóa cứng trong phông chữ BDF. Có lẽ thay đổi nó sẽ giúp.

PS8: vncdesk là một công cụ tốt để sử dụng để mở rộng một cửa sổ duy nhất .


Xft.dpi: 120trong ~/.Xresourceskhông làm việc?
ILMostro_7

xrdb -query | grep dpiđã báo cáo:Xft.dpi: 120
Ho1

Bạn đã tạo một ~/.Xresourcestập tin hoặc ~/.Xdefaults, hoặc w / e là phù hợp trên hệ thống của bạn? Liên kết mà bạn chỉ ra mà bạn nói là hữu ích không phải là một tập hợp các tùy chọn bao gồm tất cả có sẵn cho xterm. Ví dụ, Xft.lcdfilter: lcddefault Xft.antialias: true Xft.hinting: true Xft.hintstyle: hintslightvà nhiều hơn nữa.
ILMostro_7

1
@ MartinSchröder Vâng, trên thực tế tôi đã thử nghiệm các phông chữ 120dpi của riêng mình được tạo từ phông chữ truetype Courier New . Nhưng điều đó thiếu tất cả các ngôn ngữ "Đã sửa lỗi họ phông chữ bitmap", vì vậy tôi đang tìm kiếm một cách tốt hơn để làm điều này. Hiện tại trong systme của tôi, / etc / X11 / app-defaults / XTerm, như mặc định VT100.font6 (Huge) được đặt thành phông chữ 10x20 từ họ phông chữ Cố định, khá nhỏ trên màn hình của tôi. Tôi sẽ rất vui nếu chúng tôi có en.wikipedia.org/wiki/Fixed_%28typeface%29 cho 20x40, nhưng chúng tôi thì không.
Ho1

1
Bạn có cần sử dụng phông chữ bitmap? xtermhỗ trợ phông chữ truetype là tốt. xterm -fa 'DejaVu Sans Mono' -fs 40(mặc dù không chuyển đổi giữa các phông chữ khi glyphs không có sẵn như một số trình giả lập thiết bị đầu cuối khác)
Stéphane Chazelas

Câu trả lời:


10

Bạn đã tự gợi ý câu trả lời bằng cách tham khảo https://en.wikipedia.org/wiki/Fixed_(typeface)

Đây là phông chữ bitmap cố định tiêu chuẩn đã được Markus Kuhn mở rộng để có một bộ ký tự khá hoàn chỉnh. Câu hỏi là làm thế nào để mở rộng một bitmap .

Những gì bạn đã đạt được cho đến nay là nhân rộng một phông chữ vector và chuyển đổi nó thành một bitmap (ttf → bdf → pcf) . Đó là một chiến lược tốt nhưng như bạn đề cập, nó thiếu một số hỗ trợ ngôn ngữ. Điều đó có vẻ lạ vì Courier New là một trong những phông chữ hoàn chỉnh unicode hơn nhưng tôi lạc đề! Có thể thử sử dụng Mono là một bản sao.

Tuy nhiên tôi không hiểu tại sao bạn lại làm điều này vì xterm không hỗ trợ truetype .

Sửa đổi ~/.Xresourcesnhư thế này:

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

Nhưng trở lại với nhiệm vụ: Bạn muốn một phông chữ bitmap lớn hơn .

Bitmap lớn nhất hiện có là:

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

Markus đã rất tuyệt khi anh ta cung cấp các tệp BDF nguồn. Nếu bản phân phối của bạn không có các bản cập nhật gần đây nhất (từ tháng 4 năm 2009), bạn có thể lấy gói trực tiếp từ anh ấy.

Gói phông chữ "-misc-fixed- *":

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

Thay vì chuyển đổi qua lại giữa pcf và bdf, bạn có thể / nên bám vào định dạng nguồn. Bạn có thể sử dụng trình chỉnh sửa phông chữ BDF để thay đổi kích thước phông chữ. Đừng mong đợi bất kỳ khử răng cưa hoặc lừa như vậy - nhưng ít nhất bạn có thể có được kích thước có thể đọc được.

Hoặc bạn có thể sử dụng bdfresize bởi Hiroto Kagotani (cũng được tìm thấy trong một số hệ thống gói).

CẬP NHẬT:

Tôi không biết cách mở rộng chỉ một cửa sổ (không bao giờ có nhu cầu). Bạn có thể theo dõi câu hỏi Superuser này . Khi tôi có nhu cầu, tôi đã mở rộng toàn bộ môi trường.

Bạn có thể hạ màn hình 3200x1800 xuống 1920x1080 bằng cách sử dụng:

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

Các thủ thuật khác để nhân rộng màn hình trong các trình quản lý cửa sổ khác nhau có thể được tìm thấy ở đây . Họ đề nghị sử dụng VNC:

Một cách tiếp cận là chạy ứng dụng toàn màn hình và không cần trang trí trong máy tính để bàn VNC của chính nó. Sau đó quy mô người xem. Với Vncdesk ( vncdesk-git từ AUR), bạn có thể thiết lập máy tính để bàn cho mỗi ứng dụng, sau đó khởi động máy chủ và máy khách bằng một lệnh đơn giản như vncdesk 2.

x11vnc có một tùy chọn thử nghiệm -appshare, mở ra một người xem cho mỗi cửa sổ ứng dụng. Có lẽ một cái gì đó có thể bị hack với điều đó.


Câu trả lời tuyệt vời, Cảm ơn. Tôi sẽ vui vẻ chấp nhận câu trả lời. Tại sao không truetype? 1) Tôi muốn sử dụng nó trên một máy tính chậm cũ. 2) Gia đình cố định có một hỗ trợ ngôn ngữ tuyệt vời, như được mô tả trong cl.cam.ac.uk/~mgk25/ucs-fonts.html Và một điều cuối cùng: Có cách nào để mở rộng một cửa sổ duy nhất trong X không? Tôi nghĩ rằng điều này sẽ cải thiện câu trả lời.
Ho1

1
W / R cho poster ban đầu cần sự hỗ trợ rộng rãi của các ngôn ngữ khác nhau, Vera bị hạn chế nhưng DejaVu spinoff của nó hỗ trợ nhiều bộ ký tự khác nhau. Từ quan điểm này, các phông chữ đơn cách có sẵn ít nhiều có sẵn từ MS rất tốt, cả Courier10 và Calibri. Tôi đã yêu, với Calibri!
gboffi

0

Ngay bây giờ bạn có thể tăng kích thước phông chữ bằng cách giữ nút điều khiển và nút chuột phải (nghĩa là ctrl+right mouse button) và chọn kích thước phông chữ. Để làm cho nó mặc định, bạn cần phải có một Xresourcescấu hình. Tôi đang thử nó và tôi sẽ cập nhật câu trả lời khi tôi nhận được nó.

Cập nhật:

Bạn có thể tạo .Xresourcestập tin trong thư mục chính của bạn và thêm dòng dưới đây xterm*font: *-fixed-*-*-*-18-*. Sau đó, hợp nhất các thay đổi của bạn với tiện ích tài nguyên máy chủ X bằng cách sử dụng xrdb(tức là xrdb -merge ~/.Xresources) hoặc bạn cũng có thể khởi động lại X. Mới xtermsnên có kích thước phông chữ thay đổi.


Cảm ơn câu trả lời của bạn, tôi đang sử dụng phông chữ bitmap lớn nhất có sẵn cho họ phông chữ cố định: 10x20 được sử dụng cho kích thước phông chữ Lớn , nhưng nó cũng rất nhỏ trên màn hình HIDIP. Xin lưu ý rằng tôi đang nói về phông chữ bitmap, và không phải phông chữ truetype.
Ho1

0

Tôi không chắc nhưng bạn có thể hợp nhất phông chữ và siz như thế này:

xterm -fn helvetica -fs 20x10

kiểm tra nhỏ về phông chữ

liên quan, maniat1k


Cảm ơn về câu trả lời của bạn. Điều này cung cấp phông chữ lớn hơn: xterm -fs 20x10nhưng nó không phải là "họ phông chữ cố định": en.wikipedia.org/wiki/Fixed_%28typeface%29 , vì vậy nó không chứa các ký tự quốc tế mà họ phông chữ cố định có.
Ho1
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.