大一的時候寫小遊戲時,發現Java顯示出來的大型中文字怎麼都不甚美觀,文字邊會有鋸齒狀,應該像遊戲一樣要 anti aliasing 一下才對嘛?可是到底要怎麼用,當時就沒繼續研究下去,直到今天才無在 小範例 中發現到它,都過這麼久了說起來還真是汗顏。 實際效果 範例程式碼 import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import javax.swing.JPanel; import javax.swing.JFrame; public class UnicodeText { public static void main(String[] args) { JFrame frm = new JFrame("反鋸齒效果 demo"); JPanel jpn = new JPanel(){ public void paint(Graphics g) { super.paint(g); Graphics2D g2 = (Graphics2D) g; Font Anit = new Font("Monospace", Font.PLAIN, 62); g2.setFont(Anit); g2.drawString("沒用反鋸齒!!", 10, 50); Graphics2D g2d = (Graphics2D)g; g2d.setRenderingHint( RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); g2.drawString("使用反鋸齒!!", 10, 145); } }; frm.add(jpn); frm.setSize(350,200); frm.setResizable(false); frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frm.setVisible(true); } } 重要的就只是兩行,將Graphics強制轉成Graphics2D,...