그림판을 짜고 있는데요
댓걸
친구가 부탁해서 인터넷 강의로 3주 자바 공부해서 웹 게시판 연동 그림판 애플릿을 만들고 있는데요필압까지 적용해서 여러가지의 브러쉬도 필요하다길래JTablet SDK 라는걸 찾았습니다.
그안에 예제 프로그램이 딸려 있어서 어떤식으로 필압 적용하는지는 알거 같은데큰 문제가 하나 생겼습니다;
예제에서 보니까
private BufferedImage image; private Graphics2D graphics;
이 두객체를 이용해서 작업을 합니다.
// Create a drawing canvas image = new BufferedImage(getWidth(), getHeight(), BufferedImage.TYPE_INT_ARGB); graphics = image.createGraphics(); // Paint it white graphics.setBackground(Color.WHITE); graphics.clearRect(0, 0, getWidth(), getHeight()); // Enable anti-aliasing and sub-pixel rendering graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); graphics.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL, RenderingHints.VALUE_STROKE_PURE);
애플릿 폭, 너비 받아와서 그 사이즈만큼 화면을 지우고 그릴 준비를 하고, 안티 에얼라이징?어쨌든 렌더링 기법을 적용하는 것 같더라구요
어쨌든이 소스를 참고로 해서 그림판을 만드는데
제가 만들게 왼쪽에는 메뉴 (JRadioButton 사용, 펜, 브러쉬 , 지우개 , 색상표 배치,) 구요오른쪽에는 그림이 그려질 영역을 배치할려고 합니다.
저 소스를 개량해서 써봤는데 (폭 , 너비, 시작 위치등의 값을 바꿨어요) 화면 전체가 지워지는 사태가 발생했습니다;저 소스를 없앴을때는 버튼들은 잘 뜨구요.
그래서 질문입니다
1. Canvas 컴포넌트로 그림판 같은걸 구현하려 하는데 BurfferedImage 객체랑 Graphics2D 이 객체를 이용해서구현하려면 어떻게 해야 될까요 ; ( 필압 적용이랑, 저장 때문에 반드시 써야될거 같네요 ;) (예제 소스는 Canvas 객체가 없음)
2. 그냥 일반적인 색상표 말고.. 드로잉 툴에서 사용하는 색상표 (RGB+HSB ? 맞나..)는 어떤식으로 구현을 해야 할까요?;