JAVA/Swing

Color와 Font.Swing

john_ 2023. 2. 20. 17:11
728x90

Color와 Font

  • 붓에 물감을 묻혀 그리듯 GraphicssetColor() 메소드로 Color를 설정하면, 해당 색상으로 문자, 선, 도형이 그려집니다.
  • 예를들어 빨간색으로 설정하는 방법입니다.
g.setColor(Color.RED);

 

  • Color 클래스는 기본적으로 13가지의 색깔을 표현하는 Color 상수를 가지고 있습니다.

 

  • 13가지 상수 이외의 색상을 얻고싶다면 R, G, B 값을 이용하여 Color 객체를 직접 만들면 됩니다.
  • RGB 값은 각 0~255 사이의 값을 주면 됩니다.

 

  • GraphicsdrawString() 으로 그려지는 글자의 기본 색상은 검정색이고, 사이즈는 12, 폰트의 종류는 Dialog입니다.
  • GraphicssetFont() 메소드를 이용하면 폰트 속성을 변경 가능합니다.
  • 매개값은 Font 객체인데, 다음과 같이 생성 합니다.

 

  • name폰트 이름으로 굴림체, 돋움체, 바탕체, Arial 등을 말합니다.
  • 폰트는 운영체제마다 차이가 있어, OS에서 제공되는 폰트의 이름을 알아내기위해 다음코드를 사용합니다.

 

  • Style은 폰트 스타일로 보통, 굵음, 기울임을 말합니다. 폰트 스타일은 Font 상수를 사용하는데, 다음과 같이 세가지 종류가 있습니다.

 

  • 이들 상수는 | 연산자를 사용해서 조합할 수 있습니다. 다음은 돋움체이고, 굵고 기울어지게 15 사이즈로 Font 객체를 만들고 Graphics에 설정합니다.


package java0220;

import java.awt.BorderLayout;
import java.awt.Canvas;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;

public class ColorFontExample extends JFrame {
 //메인 윈도우 설정
	public ColorFontExample() {
		setTitle("색상과 폰트");
		getContentPane().add(new MyCanvas(), BorderLayout.CENTER);
		setSize(300, 200);
	}

	//Canvas 클래스 선언
	public class MyCanvas extends Canvas {
		public void paint(Graphics g) {
			//Color 변경
			g.setColor(Color.BLUE);
			//Font 변경
			g.setFont(new Font("돋움체", Font.BOLD | Font.ITALIC, 30));
			//글자 드로잉
			g.drawString("Color and Font", 20, 100);
		}
	}
	
	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				ColorFontExample jFrame = new ColorFontExample();
				jFrame.setVisible(true);
			}
		});
	}
}

 

 

 

728x90

'JAVA > Swing' 카테고리의 다른 글

이미지 그리기.Swing  (0) 2023.02.20
안티 알리아싱(Anti-aliasing).Swing  (0) 2023.02.20
Canvas와 Graphics.Swing  (0) 2023.02.20
JDBC를 이용해 INSERT 실행하기.Java  (0) 2023.02.16
Swing 시작.java  (0) 2023.02.16