如何在Java 2D中绘制字符串?

下面的代码段显示了如何使用Graphics2D绘制字符串。drawString()方法接受要绘制的字符串及其x和y坐标。在这里您还可以看到如何使用setRenderingHint()方法设置抗锯齿模式。

package org.nhooo.example.geom;

import javax.swing.*;
import java.awt.*;

public class DrawString extends JPanel {
    @Override
    public void paint(Graphics g) {
        Graphics2D g2 = (Graphics2D) g;

        // 定义渲染提示,字体名称,字体样式和字体大小
        g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
        g2.setFont(new Font("Segoe Script", Font.BOLD + Font.ITALIC, 40));
        g2.setPaint(Color.ORANGE);

        // 画你好世界字符串
        g2.drawString("Hello World!", 50, 100);
    }

    public static void main(String[] args) {
        JFrame frame = new JFrame();
        frame.setTitle("Draw String Demo");
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        frame.add(new DrawString());
        frame.pack();
        frame.setSize(420, 300);
        frame.setVisible(true);
    }
}

运行该代码段,您将看到以下屏幕:

image.png