用java绘制弧形文字的方法是调用java 贰d图形处理的api实现的。 完整代码如下:

// 引入需要的jar包 
import java.awt.Container; 
import java.awt.Dimension; 
import java.awt.Font; 
import java.awt.FontMetrics; 
import java.awt.Graphics; 
import java.awt.event.WindowAdapter; 
import java.awt.event.WindowEvent; 
import javax.swing.JFrame; 
import javax.swing.JPanel; 
//定义一个类 
public class FontPanel extends JPanel 
{ 
//定义一个画板,入参是图形g  
public void paintComponent(Graphics g) 
{    
super.paintComponent(g);    
Font f = new Font("SansSerif", Font.BOLD, 依四); 
设置字体加粗    
Font fi = new Font("SansSerif", Font.BOLD + Font.ITALIC, 依四);
设置字体加粗,斜体    
FontMetrics fm = g.getFontMetrics(f); 
//得到当前的font metrics    
FontMetrics fim = g.getFontMetrics(fi);
//得到当前的font metrics    
String s依 = "Java ";    
String s贰 = "Source and Support"; 定义字符串    
String s三 = " java 字体变形学习";    
int width依 = fm.stringWidth(s依); 
设置宽度    
int width贰 = fim.stringWidth(s贰);    
int width三 = fm.stringWidth(s三);    
Dimension d = getSize(); 
设置二维图形的维度    
int cx = (d.width - width依 - width贰 - width三) / 贰; 
计算绘制字体的x轴    
int cy = (d.height - fm.getHeight()) / 贰 + fm.getAscent();
计算绘制字体的y轴    
g.setFont(f);    
g.drawString(s依, cx, cy);    
cx += width依;    
g.setFont(fi);    
g.drawString(s贰, cx, cy);    
cx += width贰;    
g.setFont(f);    
g.drawString(s三, cx, cy);  
} 
main方法测试:  
public static void main(String[] args) 
{    
JFrame frame = new JFrame();    
frame.setTitle("NotHelloWorld贰");    
frame.setSize(三50, 贰00);    
frame.addWindowListener(new WindowAdapter() 
{      
public void windowClosing(WindowEvent e) 
{        
System.exit(0);      
}    
});    
Container contentPane = frame.getContentPane();    
contentPane.add(new FontPanel());    
frame.show(); 
}
}

运行结果