没有锯齿啊.
   public void paintComponent(Graphics g)
   {
      super.paintComponent(g);
      if (image!=null)
         g.drawImage(image,5,5,null);
      g.setFont(new Font("Arial Black",0,23));
      g.drawString("Hello",23,23);
   }

解决方案 »

  1.   

    你可以用2DFont,有很多特殊效果,保您满意:)
    具体代码可以参见 yourjdk_home\demon\jfc\font2dtest目录
      

  2.   

    这是我打过标签的样子,你看看http://pic.enorth.com.cn/200/01/00/05/1000597_966346.jpg
      

  3.   

    Yes. Same. especially letter "e" when font size is 100 or more.
      

  4.   

    setRenderingHints()
    消除锯齿!
      

  5.   

    以前写的代码你可以试一下
    public void drawDemo(double rot,int x,int y,String s, Graphics2D g2){
    FontRenderContext frc = g2.getFontRenderContext();
    Font f = new Font("Serif",Font.PLAIN,24);
    AffineTransform fontAT = new AffineTransform();
            //System.out.println(s);
    fontAT.rotate(rot);
    Font derivedFont = f.deriveFont(fontAT);
    TextLayout tl = new TextLayout(s,derivedFont, frc);
    Shape sha = tl.getOutline(AffineTransform.getTranslateInstance(x, y));
      g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
      // g2.setStroke(new BasicStroke(0.3f));
    g2.draw(sha);
    g2.fill(sha);
      g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_OFF);
       }