2016-03-30 16 views
0

kullanarak render kalitesini kontrol etmek:Nasıl bu gibi basit çizim tuvali var JAVA

public class DrawingCanvas extends JPanel 

    private BufferedImage image; 

    @Override 
    public void paintComponent(Graphics g) { 
     super.paintComponent(g); 


      image = new BufferedImage(this.getWidth(), this.getHeight(), BufferedImage.TYPE_INT_ARGB); 

      Graphics2D g2 = (Graphics2D) image.getGraphics(); 

      // draw some items....     

      g2.dispose(); 
      g.drawImage(image, 0, 0, null); 
    } 
} 

Sanırım bazı kalitesini hale ayarlayabilirsiniz eğer sormak istiyorum?

Örneğin Antialiasing .. BEST render kalitesini kullanmak istiyorum.

Nasıl?

+0

BufferedImage'a çizmenin bir nedeni yok. JPanel zaten çift tamponlu. – VGR

+0

* "EN İYİ render kalitesini kullanmak istiyorum." * - Aslında bir dizi faktöre bağlıydı ve bir makinede render ipuçları her zaman diğerlerinde çalışmaz: P – MadProgrammer

+0

[Örnek] için (http://stackoverflow.com/questions/13906687/how-can-i-smooth-my-jframe-shape/13906713 # 13906713) ve [örnek] (http://stackoverflow.com/questions/25577856/rotating-ball-loses-sharpness-and- renkler/25581053 # 25581053) – MadProgrammer

cevap

1

RenderingHints'a bir göz atın. g2.setRenderingHint(RenderingHints.Key hintKey, Object hintValue) numaralı telefonu arayarak ayarlayabilirsiniz.

g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON) 

diğer anahtarlar ve değerler: (metin), anti-aliasing, alfa-enterpolasyon vb anti-aliasing için

gibi kaliteli, işlemek için Bununla

farklı ayarlar değiştirebilir oldukça açıklayıcı.