>Java >java지도 시간 >Java에서 글꼴, 크기 및 스타일에 어떻게 액세스하고 조작합니까?

Java에서 글꼴, 크기 및 스타일에 어떻게 액세스하고 조작합니까?

Barbara Streisand
Barbara Streisand원래의
2024-10-28 16:29:01591검색

How do I access and manipulate fonts, sizes, and styles in Java?

Java에서 글꼴, 크기, 굵게 등 가져오기

Java 프로그램에서 사전 정의된 글꼴, 크기 및 색상에 액세스하는 것이 어려울 수 있습니다. . 이 문제를 해결하려면 이러한 요소를 효과적으로 얻는 방법을 살펴보겠습니다.

GraphicsEnvironment

시스템에서 사용 가능한 글꼴을 검색하려면 GraphicsEnvironment 클래스를 사용합니다. 설치된 모든 글꼴 계열의 이름이 포함된 문자열 배열을 반환하는 getAvailableFontFamilyNames() 메서드를 제공합니다.

<code class="java">GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
String[] fonts = ge.getAvailableFontFamilyNames();</code>

글꼴 렌더링

글꼴이 있으면 이름을 사용하여 원하는 속성을 가진 글꼴 개체를 만들 수 있습니다. Font 생성자는 글꼴 이름, 스타일, 크기라는 세 가지 매개변수를 사용합니다. 예를 들어, 크기가 12이고 굵은 스타일의 Arial 글꼴을 만들려면 다음을 사용합니다.

<code class="java">Font font = new Font("Arial", Font.BOLD, 12);</code>

크기 및 스타일

글꼴과 달리 크기 및 스타일은 런타임에 동적으로 설정할 수 있습니다. 스타일의 경우 Font.BOLD, Font.ITALIC, Font.PLAIN, 크기의 경우 Font.SIZE1, Font.SIZE2 등 Font 클래스의 상수로 정의됩니다.

<code class="java">font.setBold(true);
font.setSize(14);</code>

다음 코드 조각은 사용자가 글꼴 모음, 크기 및 색상을 선택할 수 있는 글꼴 선택기를 표시하는 Java 프로그램을 보여줍니다.

<code class="java">import java.awt.*;
import javax.swing.*;

public class FontDemo {

    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
            String[] fonts = ge.getAvailableFontFamilyNames();
            JComboBox fontChooser = new JComboBox(fonts);
            fontChooser.setRenderer(new FontCellRenderer());
            JOptionPane.showMessageDialog(null, fontChooser);
        });
    }
}

class FontCellRenderer extends DefaultListCellRenderer {

    @Override
    public Component getListCellRendererComponent(
            JList list,
            Object value,
            int index,
            boolean isSelected,
            boolean cellHasFocus) {
        JLabel label = (JLabel)super.getListCellRendererComponent(
                list,value,index,isSelected,cellHasFocus);
        Font font = new Font(value.toString(), Font.PLAIN, 20);
        label.setFont(font);
        return label;
    }
}</code>

JavaDoc

자세한 내용은 GraphicsEnvironment.getAvailableFontFamilyNames()용 JavaDoc을 참조하세요.

[GraphicsEnvironment.getAvailableFontFamilyNames()](https://docs.oracle.com /javase/7/docs/api/java/awt/GraphicsEnvironment.html#getAvailableFontFamilyNames())

위 내용은 Java에서 글꼴, 크기 및 스타일에 어떻게 액세스하고 조작합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.