⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 textclipping.java

📁 JSP中文介绍,对于菜鸟有用
💻 JAVA
字号:
import java.awt.*;import java.awt.event.*;import java.awt.geom.*;import java.awt.font.*;public class TextClipping extends Canvas {    public TextClipping() {	setBackground(Color.white);    }    public void paint(Graphics g) {        Graphics2D g2;        g2 = (Graphics2D) g;        g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,                            RenderingHints.VALUE_ANTIALIAS_ON);        g2.setRenderingHint(RenderingHints.KEY_RENDERING,                            RenderingHints.VALUE_RENDER_QUALITY);        int w = getSize().width;        int h = getSize().height;        FontRenderContext frc = g2.getFontRenderContext();        Font f = new Font("Times New Roman Bold",Font.PLAIN,w/8);        String s = new String("Vincent van Gogh");        TextLayout tl = new TextLayout(s, f, frc);        float sw = (float) tl.getBounds().getWidth();        AffineTransform transform = new AffineTransform();        transform.setToTranslation(w/2-sw/2,h/6);        Shape shape = tl.getOutline(transform);        g2.setClip(shape);        g2.setColor(Color.blue);        g2.fill(shape.getBounds());        g2.setColor(Color.white);        f = new Font("Helvetica",Font.BOLD,10);        tl = new TextLayout("+", f, frc);        sw = (float) tl.getBounds().getWidth();        Rectangle r = shape.getBounds();        int x = r.x;        int y = r.y;        while ( y < (r.y + r.height+(int) tl.getAscent()) ) {            tl.draw(g2, x, y);            if ((x += (int) sw) > (r.x+r.width)) {                x = r.x;                y += (int) tl.getAscent();            }        }    }    public static void main(String s[]) {        WindowListener l = new WindowAdapter() {            public void windowClosing(WindowEvent e) {System.exit(0);}            public void windowClosed(WindowEvent e) {System.exit(0);}        };        Frame f = new Frame("2D Text");        f.addWindowListener(l);        f.add("Center", new TextClipping());        f.pack();        f.setSize(new Dimension(400, 300));        f.show();    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -