जावा-स्विंग अनुप्रयोगों में बदसूरत / गैर-एंटी-अलियासेड फोंट


15

मैंने हाल ही में उबंटू में स्विच किया है और मैंने Oracle के जावा JDK 8u45 (32 बिट) को webupd8team / java repository का उपयोग करके स्थापित किया है।

सब कुछ ठीक काम कर रहा है सिवाय इसके कि जावा-स्विंग अनुप्रयोगों को बिना एंटी-अलियासिंग के साथ टूटा हुआ और बदसूरत फोंट लग रहा है। फ़ॉन्ट बदलने से काम नहीं होता है। समान फ़ॉन्ट वाले Gedit जैसे मूल अनुप्रयोग प्रभावित नहीं होते हैं (और न ही गैर-स्विंग जावा-अनुप्रयोग जैसे ग्रहण); यह केवल स्विंग-आधारित अनुप्रयोगों को प्रभावित करता है।

स्क्रीनशॉट: (jEdit v5.1)

JEdit का स्क्रीनशॉट

मैं Ubuntu 15.04 (जो कि 2015-06-15 का नवीनतम संस्करण है) चला रहा हूं। मेरा Java संस्करण 1.8.0_45 है और 'java -version' निम्नलिखित आउटपुट देता है:

java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) Server VM (build 25.45-b02, mixed mode)

मैंने इसी तरह के सवालों (यहाँ और अन्य स्टैटेक्सचेंज साइटों पर) में दिए गए सुधारों की कोशिश की है, लेकिन वे काम नहीं करते हैं। मैंने निम्नलिखित पंक्तियों को / etc / वातावरण में भी जोड़ा है (जैसा कि यहाँ दिया गया है: https://wiki.archlinux.org/index.php/Java_Runtime_Environment_Fonts ) लेकिन वे मुझे कोई स्पष्ट परिणाम नहीं दे रहे हैं।

JAVA_FONTS=/usr/share/fonts/truetype
_JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=on'

मुझे यकीन है कि इसके लिए एक निश्चितता होनी चाहिए। विंडोज -7 पर जैसा होना चाहिए वैसा ही जावा-एप्लिकेशन काम कर रहे हैं।

जवाबों:


16

यह समस्या लंबे समय से तय है इसलिए मैंने फैसला किया कि मुझे समाधान पोस्ट करना चाहिए। ध्यान दें कि समस्या अभी भी डिफ़ॉल्ट रूप से है, लेकिन इसे एक पैरामीटर द्वारा ठीक किया जा सकता है।

इस पंक्ति को जोड़ना:

_JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=on -Dswing.aatext=true'

/etc/environmentसमस्या को हल करने के लिए।

यह फिक्स उबंटू 16.04 और OpenJDK 8u151 (Oracle JDK या Java 9 के साथ चेक नहीं किया गया है) के रूप में काम करता है।

कार्य उदाहरण: यहाँ छवि विवरण दर्ज करें

नोट : कुछ फ़ॉन्ट और AA सेटिंग समस्या को जटिल करती हैं। JEdit में, मैं हर चीज के लिए डिफ़ॉल्ट जावा फोंट ("डायलॉग" जैसा कि इसे कहा जाता है) का उपयोग करता हूं। आप शायद टेक्स्ट-एरिया के लिए एक अलग फ़ॉन्ट का उपयोग कर सकते हैं, लेकिन डायलॉग बटन आदि के लिए सबसे अच्छा है। मेरे द्वारा पाया गया सबसे अच्छा टेक्स्ट-एरिया AA सेटिंग मानक है, लेकिन आपका माइलेज भिन्न हो सकता है।


1
आपका समाधान महान काम करता है!
नादव बी

1
फिर से Ubuntu 18.10 और OpenJDK 11. की जरूरत है और अभी भी काम कर रहा है! :)
तानीस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.