프로젝트중 이미 만들어져있는 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();
}

배경이미지
삽입이미지

 

관련하여 크리티컬한 이슈가 발생했었는데 테스트 단계에서 발견하여 빠르게 조치할 수 있었다.
이슈의 내용은 개발환경(윈도우)에서는 한글이 잘나왔는데 테스트 서버(리눅스)에서 한글이 죄다 [][][][][][][] 이런식의 네모로 나오는것!

해결과정은 다음 포스팅에!!!

+ Recent posts