【Java开源代码栏目提醒】:以下是网学会员为您推荐的Java开源代码-TranslateTest.java,希望本篇文章对您学习有所帮助。
import java.awt.geom.*;
import java.awt.image.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.io.*;
import java.awt.font.*;
public class TranslateTest extends JFrame
{
public static void main(String arg[])
{
JFrame frame =new TranslateTest();
frame.setBackground(Color.white);
frame.setVisible(true);
}
public TranslateTest()
{
setSize(500, 340);
}
protected void processWindowEvent(WindowEvent e)
{
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING)
{
System.exit(0);
}
}
public void paint(Graphics g)
{
Graphics2D g2d = (Graphics2D)g;
byte b[]=
{(byte)187,(byte)186,(byte)194,(byte)253,(byte)182,(byte)248,
(byte)179, (byte)193, (byte)215, (byte)197
};
try
{
ByteArrayInputStream bais = new ByteArrayInputStream(b);
// InputStreamReader isr = new InputStreamReader(bais, "EUC_CN");
InputStreamReader isr = new InputStreamReader(bais, "GB2312");
System.out.println(isr.getEncoding());
char c[] = new char[10];
isr.read(c, 0, 10);
String text1 = new String(c);
TextLayout text =
new TextLayout(text1,
new Font("SimSun", Font.PLAIN, 96),
new FontRenderContext(null, false, false));
AffineTransform textAt = new AffineTransform();
textAt.translate(20, (float)text.getBounds().getHeight()+20);
Shape shape = text.getOutline(textAt);
g2d.setPaint(Color.blue);
g2d.draw(shape);
textAt.translate(0, 100);
shape = text.getOutline(textAt);
g2d.setPaint(Color.red);
g2d.draw(shape);
}
catch(Exception ex)
{
}
}
}