프로젝트중 이미 만들어져있는 PNG 파일을 배경으로하여 데이터를 삽입하고 저장하는 업무가 생겼다.
업무소스를 핵심만 간단하게 요약하자면 아래와 같다.
@Test
@SneakyThrows
public void test () {
BufferedImage image = null;
FontMetrics metrics = null;
image = ImageIO.read(new File("D:/temp/배경이미지.png")); // 배경 파일 불러오기
Graphics g = image.getGraphics();
g.setColor(Color.BLACK);
g.setFont(new Font("NanumGothic", Font.PLAIN, 30));
g.drawString("토오오트으으너어엄", 100, 400); // 문자열 삽입
ImageIO.write(image, "png", new File("D:/temp/문자열삽입.png")); // 문자열이 삽입된 PNG 파일 저장
g.dispose();
}
관련하여 크리티컬한 이슈가 발생했었는데 테스트 단계에서 발견하여 빠르게 조치할 수 있었다.
이슈의 내용은 개발환경(윈도우)에서는 한글이 잘나왔는데 테스트 서버(리눅스)에서 한글이 죄다 [][][][][][][] 이런식의 네모로 나오는것!
해결과정은 다음 포스팅에!!!
'Main > Java' 카테고리의 다른 글
[JAVA] Stream skip(), limit() 사용법 (0) | 2021.03.17 |
---|---|
[JAVA] 리눅스 자바 한글 폰트 설정 (0) | 2020.10.20 |
[JAVA] 파일명 변경, 확장자 변경, 압축하기, 압축해제하기 (1) | 2020.09.02 |
[JAVA] 커스텀 Exception 클래스 만들기 (0) | 2020.08.06 |
[JAVA] 파일을 byte 배열로 변환 하는 방법 (0) | 2020.07.30 |