简易包边字画法
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
@SuppressWarnings("serial")
publicclass OutlineString extends JPanel{
public OutlineString() {
this.setPreferredSize(new Dimension(180, 120));
}
@Override
publicvoid paint(Graphics g) {
super.paint(g);
drawOutlineString(g, "包边字测试", 30, 40);
}
/**
* 画包边字
*
* 上下左右各画一次,即所谓包边。
*
* @param g
* @param text
*/
publicstaticvoid drawOutlineString(Graphics g, String text, int x, int y)
{
g.setFont(new Font("", Font.PLAIN, 25));
g.setColor(Color.black);
g.drawString(text, x -1, y);
g.drawString(text, x, y -1);
g.drawString(text, x +1, y);
g.drawString(text, x, y +1);
g.setColor(Color.white);
g.drawString(text, x, y);
}
/**
* @param args
*/
publicstaticvoid main(String[] args) {
JFrame frame =new JFrame("包边字测试");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(new OutlineString());
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
@SuppressWarnings("serial")
publicclass OutlineString extends JPanel{
public OutlineString() {
this.setPreferredSize(new Dimension(180, 120));
}
@Override
publicvoid paint(Graphics g) {
super.paint(g);
drawOutlineString(g, "包边字测试", 30, 40);
}
/**
* 画包边字
*
* 上下左右各画一次,即所谓包边。
*
* @param g
* @param text
*/
publicstaticvoid drawOutlineString(Graphics g, String text, int x, int y)
{
g.setFont(new Font("", Font.PLAIN, 25));
g.setColor(Color.black);
g.drawString(text, x -1, y);
g.drawString(text, x, y -1);
g.drawString(text, x +1, y);
g.drawString(text, x, y +1);
g.setColor(Color.white);
g.drawString(text, x, y);
}
/**
* @param args
*/
publicstaticvoid main(String[] args) {
JFrame frame =new JFrame("包边字测试");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(new OutlineString());
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}