如何在 Java 中检查是否启用了抗锯齿



问题描述

如何检查是否启用了抗锯齿?

解决方案

以下示例演示了如何使用 RenderingHints 类 检查是否启用了抗锯齿。

import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import javax.swing.JComponent;
import javax.swing.JFrame;

public class Main {
   public static void main(String[] args) {
      JFrame frame = new JFrame();
      frame.add(new MyComponent());
      frame.setSize(300, 300);
      frame.setVisible(true);
   }
}
class MyComponent extends JComponent {
   public void paint(Graphics g) {
      Graphics2D g2 = (Graphics2D) g;
      RenderingHints rh = g2.getRenderingHints();
      boolean bl = rh.containsValue (RenderingHints.VALUE_ANTIALIAS_ON);
      System.out.println(bl);
      g2.setRenderingHint(
         RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
   }
}

结果

上面的代码示例将产生以下结果。

False
False
False
java_simple_gui.htm
广告