2008-10-21 3 views
2

외부 응용 프로그램의 일부가 될 Java 응용 프로그램을 만들고 있습니다. 내 응용 프로그램에는 일부 다각형과 같은 것을 보여주는 뷰포트가 있습니다. 외부 응용 프로그램은 뷰포트의 이미지를 gif 형식으로 가져와야합니다. 이를 위해 인터페이스 (응용 프로그램에서 구현)의 메서드를 호출하고 응용 프로그램이 이미지를 반환합니다. 외부 응용 프로그램은 데이터베이스에 이미지를 저장해야합니다 (또는 걱정할 필요가없는 이미지).메서드에서 gif 이미지 반환

제 질문은 : - 응용 프로그램에서 외부 응용 프로그램으로 보낼 때 이미지의 데이터 컨테이너 유형이 무엇입니까? 메소드의 리턴 타입이 무엇이겠습니까? 현재 내 GIF 인코더 클래스는 바이트 배열을 반환합니다. 다른 '더 나은'옵션이 있습니까?

답변

3

GIF가 작을 것으로 예상되는 경우 바이트 배열이 적합 할 수 있지만 OutputStream을 사용하면 비트를 효율적으로 스트리밍 할 수 있습니다.

오늘 만료 된 숫자가 ByteArrayOutputStream 인 경우에도이 코드를 사용하면 향후 자일런트 코드에 영향을주지 않고 구현을 변경할 수 있습니다.

+0

gif 이미지의 크기는 150 x 150 픽셀입니다. –

+0

멋지고 작습니다. 바이트 배열이 좋습니다. –

0

당신의 '응용 프로그램'실제로 다음은 자바 반환 형식을 이해한다 Java 메소드를 호출하고있는 java.awt.image을 반환해야하는 경우 :

다음은 몇 가지 예입니다.

Java 형식을 이해할 수없는 일종의 원격 프로 시저를 통해이 작업을 수행하는 경우 바이트 배열을 반환하고 수신하는 응용 프로그램에서 디코딩하도록합니다.

0

나는 두 가지 방법을 만들 것입니다 :

  1. 첫 번째 방법은 이미지를 생성하고 java.awt.Image를 반환합니다. 여기서 드로잉 부분을 메서드에 넣을 수 있습니다.
  2. 두 번째 방법은 외부 응용 프로그램에서 요청한대로 java.awt.Image의 gif 표현을 만듭니다. 이미 제안 된대로 OutputStream을 반환해야합니다.