2011-01-26 4 views
5

मै मैक ओएस एक्स 10.6 पर जावा 6 का उपयोग कर रहा हूं। तो मेरे उपयोगकर्ता हैं। मैं एंटी-एलाइजिंग का उपयोग न करने के लिए एक विशिष्ट JTextArea को मजबूर करने की कोशिश कर रहा हूं।एंटी-एलियासिंग का उपयोग न करने के लिए मैं एक विशिष्ट JTextArea को कैसे मजबूर कर सकता हूं, जबकि इसे मेरे बाकी ऐप के लिए रखते हुए?

कोई विचार?

यहाँ अपने परीक्षण कोड के रूप में है:

public static void main(String[] args) { 

    JTextArea jTextArea1 = new JTextArea("This is some text which should be anti-aliased"); 
    jTextArea1.setFont(new Font("Lucida Grande", Font.PLAIN, 14)); 

    JTextArea jTextArea2 = new JTextArea("Please no anti-aliasing for this text"); 
    jTextArea2.setFont(new Font("Monaco", Font.PLAIN, 10)); 

    final JFrame frame = new JFrame(); 
    frame.getContentPane().add(new JScrollPane(jTextArea1), BorderLayout.NORTH); 
    frame.getContentPane().add(new JScrollPane(jTextArea2), BorderLayout.SOUTH); 

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    frame.pack(); 
    frame.setLocationRelativeTo(null); 
    frame.setVisible(true); 
} 

उत्तर

1

मैं इसे का परीक्षण नहीं किया है, लेकिन आप अपने पाठ क्षेत्र के paintComponent विधि ओवरराइड करने के लिए कोशिश कर सकते हैं:

public void drawComponent(Graphics g) 
{ 
    Graphics2D g2d = (Graphics2D) g; 
    g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_OFF); 
    super.drawComponent(g2d); 
} 
+0

क्षमा करें, मैंने गलती की, मेरा यही मतलब था। बेशक हम एंटी-एलियासिंग बंद करने की कोशिश करते हैं। –

+0

मैं एक ही पंक्ति के साथ कुछ सोच रहा था, लेकिन मैंने 'गेटग्राफिक्स()', 'अपडेट()', 'पेंट()' और 'पेंट कॉम्पोनेंट()' में संकेतों को सेट करने का प्रयास किया और इनमें से किसी भी मामले में संकेत नहीं था । –

1

जावा में> 5, आपको paint विधियों को ओवरराइड करने की आवश्यकता नहीं है। आप इस प्रकार का ग्राहक गुण सेट कर सकते हैं:

jTextArea2.putClientProperty(sun.swing.SwingUtilities2.AA_TEXT_PROPERTY_KEY, null); 

ध्यान दें कि SwingUtilities2 एक सूरज वर्ग है, इसलिए इस अन्य JVMs में काम न करें।

संबंधित मुद्दे

 संबंधित मुद्दे