
Java中更改字体样式的多种实例
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本教程提供多个实例讲解如何在Java程序中改变文字样式,包括字体大小、颜色和类型等,帮助开发者灵活运用各种字体效果。
以下是经过处理的Java代码示例:
```java
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.awt.font.*;
public class Clipping extends Canvas {
public Clipping() {
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(Helvetica,Font.BOLD,w/8);
String s = By;
TextLayout tl = new TextLayout(s, f, frc);
float sw = (float) tl.getBounds().getWidth();
AffineTransform transform = new AffineTransform();
transform.setToTranslation(w/2-sw/2,h/2);
Shape shape = tl.getOutline(transform);
g2.setClip(shape);
g2.setColor(Color.blue);
g2.fill(shape.getBounds());
g2.setColor(Color.yellow);
for (int j = shape.getBounds().y; j < shape.getBounds().y + shape.getBounds().height; j=j+3) {
Line2D line = new Line2D.Float( 0.0f, (float) j, (float) w, (float) j);
g2.draw(line);
}
}
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 Clipping());
f.pack();
f.setSize(new Dimension(400, 300));
f.show();
}
}
```
这段代码创建了一个Java应用程序,它绘制一个被文字“By”裁剪的蓝色矩形,并在该区域上画出黄色线条。程序使用`Graphics2D`对象来实现图形渲染和抗锯齿效果以确保图像质量。此外,窗口关闭时会调用退出操作。
全部评论 (0)


