HIDPI डिस्प्ले पर बड़ा "xterm" फोंट


16

कोनो कंसोल , गनोम-टर्मिनल , और हाल ही में एक्सएफसीई टर्मिनल जैसे विभिन्न टर्मिनल एमुलेटर का उपयोग करके अपने उपयुक्त डेस्कटॉप वातावरण में हाल ही में खुशी के बाद , मैंने अपने बिटमैप फोंट के साथ अच्छे पुराने एक्सटरम का उपयोग करने का फैसला किया । यह ठीक काम करता है, यह यूनिकोड का समर्थन करता है, और डिफ़ॉल्ट निश्चित फ़ॉन्ट परिवार में लगभग सभी भाषाओं के वर्ण शामिल हैं, जो महान है।

लेकिन मुझे एक महत्वपूर्ण समस्या सामने आई। फोंट वास्तव में छोटे हैं। यहां तक ​​कि तथाकथित विशाल आकार (जो 10x20 बिटमैप फ़ॉन्ट है) मेरे लिए बहुत छोटा है, और अनुपयोगी है।

XFCE वातावरण के लिए मेरी डिफ़ॉल्ट सेटिंग 120 डीपीआई पर सेट है, लेकिन xpdyinfo97x97 DPI की रिपोर्ट करती है

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

इसलिए मैंने DPI को बदलने की कोशिश की xrandr, लेकिन इससे कोई फायदा नहीं हुआ।

$ xrandr --dpi 120

परिणाम लागू होता दिख रहा है

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

लेकिन यह xtermसभी के संकल्प को नहीं बदलता है । मैंने स्केलिंग का उपयोग करने की भी कोशिश की है, लेकिन इसने एकल अनुप्रयोग के बजाय पूरे X को प्रभावित किया है:

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

हैं क्यूटी और जीटीके के लिए समाधान है, लेकिन क्या बारे में Xlibआधारित अनुप्रयोगों की तरह Xterm, Xcalc, Xman, Xfige, आदि? क्या हमें डीपीआई के ऊपर जाते ही उन्हें दूर हो जाना चाहिए? कृपया मदद अगर आप किसी भी workarounds पता है।


यह वही है जो मैंने किया है, जो किसी तरह काम करता है, लेकिन मैं मूल "निश्चित फ़ॉन्ट परिवार" का उपयोग करने में सक्षम नहीं हो सकता, इसलिए यह अब केवल कुछ भाषाओं के लिए काम कर सकता है।


PS1: मैंने X के लिए 100 DPI फोंट स्थापित किए हैं, लेकिन मैं उनका उपयोग नहीं कर सका

$ sudo apt-get install xfonts-100dpi

PS2: Fontforgeजो भी उपयोग करता है Xlib, एक अच्छा विषय और सामान्य फ़ॉन्ट आकार का उपयोग करता है। मुझे नहीं पता कि यह कैसे होता है।

PS3: मैं वेक्टर फोंट से HIDPI के लिए प्रायोगिक बिटमैप फोंट बनाने के लिए परीक्षण otf2bdfऔर bdftopcfउपयोग कर रहा हूं ।PCFTTF/OTF

PS4: 100DPI फ़ॉन्ट स्थापित करने के बाद, यह अच्छा था, हालांकि इसमें डिफ़ॉल्ट fixedफ़ॉन्ट के महान भाषा समर्थन का अभाव है ।

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

मैंने उपयोग किया है fontsel। यह वास्तव में मददगार है।

PS5: यह भी उपयोगी है।

PS6: मैं 20pt के साथ कूरियर न्यू से 120DPI बिटमैप फ़ॉन्ट बनाने में सक्षम हो सकता हूं

$ 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 बीडीएफ फ़ॉन्ट में हार्डकोड है। शायद इसे बदलने से मदद मिलेगी।

PS8: vncdesk सिंगल विंडो को स्केल करने के लिए एक अच्छा टूल है ।


Xft.dpi: 120में ~/.Xresourcesकाम नहीं करता है?
ILMostro_7

xrdb -query | grep dpiपहले से ही रिपोर्ट:Xft.dpi: 120
Ho1

क्या आपने कोई ~/.Xresourcesफ़ाइल बनाई है ~/.Xdefaultsया आपके सिस्टम पर w / e उपयुक्त है? आपके द्वारा बताए गए लिंक ने कहा कि सहायक था, xterm के लिए उपलब्ध विकल्पों में से एक पूरा शामिल नहीं है। उदाहरण के लिए, Xft.lcdfilter: lcddefault Xft.antialias: true Xft.hinting: true Xft.hintstyle: hintslightऔर भी बहुत कुछ।
ILMostro_7

1
@ MartinSchröder हाँ, वास्तव में मैंने अपने स्वयं के 120dpi फोंट का परीक्षण किया है जो truetype font Courier New से उत्पन्न हुआ है । लेकिन इसमें उन सभी भाषाओं का अभाव है जो "फिक्स्ड बिटमैप फ़ॉन्ट परिवार" का समर्थन करता है, इसलिए मैं ऐसा करने के लिए बेहतर तरीके की तलाश कर रहा हूं। वर्तमान में मेरे सिस्टेम, / etc / X11 / app-defaults / XTerm में, डिफ़ॉल्ट VT100.font6 (विशाल) के रूप में, फिक्स्ड फ़ॉन्ट परिवार से 10x20 फ़ॉन्ट पर सेट है , जो मेरी स्क्रीन पर छोटा है। मुझे खुशी होगी अगर हमारे पास 20x40 के लिए en.wikipedia.org/wiki/Fixed_%28typeface%29 है, लेकिन हम नहीं।
1

1
क्या आपको बिटमैप फ़ॉन्ट का उपयोग करने की आवश्यकता है? xtermtruetype फोंट का भी समर्थन करता है। xterm -fa 'DejaVu Sans Mono' -fs 40(हालांकि कुछ अन्य टर्मिनल एमुलेटर की तरह ग्लिफ़ उपलब्ध नहीं होने पर फोंट के बीच स्विच नहीं होता है)
स्टीफन चेज़लस

जवाबों:


10

आपने https://en.wikipedia.org/wiki/Fixed_(typeface) का हवाला देकर खुद ही जवाब दे दिया है।

यह मानक निश्चित बिटमैप फ़ॉन्ट है जिसे मार्कस कुह्न द्वारा विस्तृत रूप से पूर्ण वर्ण सेट के लिए विस्तारित किया गया है । सवाल तो यह है कि बिटमैप को स्केल कैसे किया जाए ।

अब तक आपने जो हासिल किया है, वह एक वेक्टर फ़ॉन्ट स्केल कर रहा है और इसे बिटमैप में परिवर्तित कर रहा है (ttf → bdf → pcf) । यह एक अच्छी रणनीति है लेकिन जैसा कि आप उल्लेख करते हैं कि इसमें कुछ भाषा समर्थन का अभाव है। यह अजीब लगता है क्योंकि कूरियर न्यू अधिक यूनिकोड पूर्ण फोंट में से एक है, लेकिन मैं पचाता हूं! शायद मोनो का उपयोग करने का प्रयास करें जो एक क्लोन है।

हालाँकि मुझे समझ नहीं आ रहा है कि आप ऐसा क्यों कर रहे हैं क्योंकि xterm truetype का समर्थन करता है

~/.Xresourcesइसे ऐसे संशोधित करें:

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

लेकिन कार्य पर वापस: आप एक बड़ा बिटमैप फ़ॉन्ट चाहते हैं ।

उपलब्ध सबसे बड़ा बिटमैप है:

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

मार्कस इतना अच्छा रहा है कि वह स्रोत BDF फ़ाइलों की आपूर्ति करता है। यदि आपके वितरण में नवीनतम अपडेट नहीं हैं (अप्रैल 2009 से) तो आप सीधे उससे पैकेज ले सकते हैं।

"-माइस्क-फिक्स्ड- *" फॉन्ट पैकेज:

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

Pcf और bdf के बीच आगे और पीछे कन्वर्ट करने के बजाय आप स्रोत प्रारूप से चिपक सकते हैं। आप फ़ॉन्ट का आकार बदलने के लिए एक BDF फ़ॉन्ट संपादक का उपयोग कर सकते हैं। किसी भी एंटीलियासिंग या इस तरह की चालाकी की उम्मीद न करें - लेकिन कम से कम आप एक पठनीय आकार प्राप्त कर सकते हैं।

या आप Hiroto Kagotani (कुछ पैकेज सिस्टम में भी पाया जाता है) द्वारा bdfresize का उपयोग कर सकते हैं ।

अपडेट करें:

मैं सिर्फ एक खिड़की को स्केल करने का तरीका नहीं जानता (कभी ज़रूरत नहीं थी)। आप इस सुपरयूज़र प्रश्न को ट्रैक कर सकते हैं । जब मुझे जरूरत पड़ी है तो मैंने पूरे वातावरण को छोटा कर दिया है।

आप एक 3200x1800 के प्रदर्शन को 1920x1080 तक डाउनग्रेड कर सकते हैं:

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

विभिन्न विंडो प्रबंधकों में स्क्रीन स्केलिंग के लिए अन्य तरकीबें यहां देखी जा सकती हैं । वे VNC का उपयोग करने का सुझाव देते हैं:

एक दृष्टिकोण एप्लिकेशन को पूर्ण स्क्रीन और अपने स्वयं के वीएनसी डेस्कटॉप में सजावट के बिना चलाना है। फिर दर्शक पैमाने। Vncdesk ( AUR से vncdesk-git ) के साथ आप प्रति एप्लिकेशन एक डेस्कटॉप सेट कर सकते हैं, फिर सर्वर और क्लाइंट जैसे कि एक साधारण कमांड के साथ शुरू कर सकते हैं vncdesk 2

x11vnc में एक प्रायोगिक विकल्प है -appshare, जो प्रति एप्लिकेशन विंडो में एक दर्शक खोलता है। शायद उसके साथ कुछ हैक किया जा सकता है।


शानदार जवाब, धन्यवाद। मैं खुशी से इसका जवाब स्वीकार करूंगा। ट्रेटाइप क्यों नहीं? 1) मैं इसे पुराने धीमे कंप्यूटर पर उपयोग करना चाहता हूं। 2) फिक्स्ड फैमिली के पास एक बेहतरीन लैंग्वेज सपोर्ट है, जैसा कि cl.cam.ac.uk/~mgk25/ucs-fonts.html में बताया गया है और एक आखिरी बात: क्या एक्स में सिंगल विंडो को स्केल करने का कोई तरीका है? मुझे लगता है कि इससे जवाब में सुधार होगा।
181 बजे हू

1
विभिन्न भाषाओं के व्यापक समर्थन के लिए मूल पोस्टर के लिए W / R की आवश्यकता होती है, वेरा सीमित है लेकिन इसके स्पिनऑफ़ DejaVu कई अलग-अलग वर्ण सेटों का समर्थन करता है। इस दृष्टि से भी MS से अधिक या कम स्वतंत्र रूप से उपलब्ध मोनोपोज़ फॉन्ट बहुत अच्छे हैं, दोनों कूरियर 10 और कैलीबरी। मुझे कैलीबरी से प्यार हो गया है!
gboffi

0

अभी आप नियंत्रण और राइट माउस बटन (यानी ctrl+right mouse button) को पकड़कर फ़ॉन्ट आकार बढ़ा सकते हैं और फ़ॉन्ट आकार का चयन कर सकते हैं। इसे डिफ़ॉल्ट बनाने के लिए आपके पास Xresourcesकॉन्फ़िगरेशन होना आवश्यक है। मैं इसे आज़मा रहा हूँ और मुझे इसका उत्तर मिलते ही अपडेट कर दूंगा।

अपडेट करें:

आप .Xresourcesअपने घर निर्देशिका के अंदर फ़ाइल बना सकते हैं और नीचे की रेखा जोड़ सकते हैं xterm*font: *-fixed-*-*-*-18-*। फिर xrdb(यानी xrdb -merge ~/.Xresources) का उपयोग करके एक्स सर्वर संसाधन उपयोगिता के साथ अपने परिवर्तनों को मर्ज करें या आप भी पुनरारंभ कर सकते Xहैं। नए xtermsमें परिवर्तित फ़ॉन्ट आकार होना चाहिए।


आपके उत्तर के लिए धन्यवाद, मैं निश्चित फ़ॉन्ट परिवार के लिए उपलब्ध सबसे बड़े बिटमैप फ़ॉन्ट का उपयोग कर रहा हूं: 10x20 जो विशाल फ़ॉन्ट आकार के लिए उपयोग किया जाता है , लेकिन यह HIDIP डिस्प्ले पर बहुत छोटा है। कृपया ध्यान दें कि मैं बिटमैप फोंट के बारे में बात कर रहा हूं, न कि ट्रूटाइप फ़ॉन्ट।
1

0

मुझे यकीन नहीं है, लेकिन आप इस तरह से फ़ॉन्ट और सिज़ को मिला सकते हैं:

xterm -fn helvetica -fs 20x10

फोंट का छोटा परीक्षण

का संबंध है, maniat1k


आपके उत्तर के लिए धन्यवाद। यह बड़ा फोंट प्रदान करता है: xterm -fs 20x10लेकिन यह "फिक्स्ड फॉन्ट परिवार" नहीं है: en.wikipedia.org/wiki/Fixed_%28typeface%29 , इसलिए इसमें अंतर्राष्ट्रीय वर्ण नहीं हैं, जो कि निश्चित फॉन्ट परिवार के पास है।
1
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.